ThemeLoader.h
/*
* $Id: ThemeLoader.h 3385 2012-08-22 21:09:54Z karijes $
*
* Theming stuff
* Copyright (c) 2009 edelib authors
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __EDELIB_THEMELOADER_H__
#define __EDELIB_THEMELOADER_H__
#include "Theme.h"
#include "XSettingsClient.h"
EDELIB_NS_BEGIN
struct ThemeLoader_P;
class EDELIB_API ThemeLoader {
private:
ThemeLoader_P *priv;
void apply_common_gui_elements(void);
E_DISABLE_CLASS_COPY(ThemeLoader)
public:
ThemeLoader();
~ThemeLoader();
bool load(const char *name = "default", const char *prefix = "ede");
bool load_with_path(const char *path);
bool load_xsettings(void);
Theme *theme(void);
XSettingsClient *xsettings(void);
#ifndef SKIP_DOCS
E_CLASS_GLOBAL_EXPLICIT_DECLARE(ThemeLoader)
#endif
};
EDELIB_NS_END
#endif
E_DISABLE_CLASS_COPY
#define E_DISABLE_CLASS_COPY(klass)
Definition: edelib-global.h:161
edelib::Theme
Theming engine for widgets.
Definition: Theme.h:48
E_CLASS_GLOBAL_EXPLICIT_DECLARE
#define E_CLASS_GLOBAL_EXPLICIT_DECLARE(klass)
Definition: edelib-global.h:203
edelib::XSettingsClient
Client part of XSETTINGS protocol.
Definition: XSettingsClient.h:109
edelib::ThemeLoader
Themes loader.
Definition: ThemeLoader.h:46