LibreOffice Module vcl (master)  1
IconThemeSelector.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
9 
10 #ifndef INCLUDED_VCL_ICONTHEMESELECTOR_HXX
11 #define INCLUDED_VCL_ICONTHEMESELECTOR_HXX
12 
13 #include <rtl/ustring.hxx>
14 
15 #include <vcl/dllapi.h>
16 
17 #include <vector>
18 
19 // forward declaration of unit test class. Required for friend relationship.
20 class IconThemeSelectorTest;
21 
22 namespace vcl {
23 class IconThemeInfo;
24 
32 public:
34 
42  OUString
43  SelectIconTheme(
44  const std::vector<IconThemeInfo>& installedThemes,
45  const OUString& theme
46  ) const;
47 
57  OUString
58  SelectIconThemeForDesktopEnvironment(
59  const std::vector<IconThemeInfo>& installedThemes,
60  const OUString& desktopEnvironment) const;
61 
62  void
63  SetUseHighContrastTheme(bool);
64 
65  void
66  SetPreferredIconTheme(const OUString&, bool bDarkIconTheme);
67 
68  bool
69  operator==(const vcl::IconThemeSelector&) const;
70 
71  bool
72  operator!=(const vcl::IconThemeSelector&) const;
73 
74 private:
76  static OUString
77  ReturnFallback(const std::vector<IconThemeInfo>& installedThemes);
78 
80  static const OUStringLiteral FALLBACK_ICON_THEME_ID;
81 
82 
83  static OUString
84  GetIconThemeForDesktopEnvironment(const OUString& desktopEnvironment);
85 
89 
90  friend class ::IconThemeSelectorTest;
91 };
92 
93 } /* namespace vcl */
94 
95 #endif // INCLUDED_VCL_ICONTHEMESELECTOR_HXX
96 
97 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
bool operator!=(const ItalicMatrix &a, const ItalicMatrix &b)
Definition: vclenum.hxx:208
#define VCL_DLLPUBLIC
Definition: dllapi.h:29
This class helps to choose an icon theme from a list of installed themes.
bool operator==(const ItalicMatrix &a, const ItalicMatrix &b)
Definition: vclenum.hxx:203
static const OUStringLiteral FALLBACK_ICON_THEME_ID
The name of the icon theme which is used as fallback.