00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __EDELIB_THEME_H__
00022 #define __EDELIB_THEME_H__
00023
00024 #include "edelib-global.h"
00025
00026 EDELIB_NS_BEGIN
00027
00028 class Theme_P;
00029
00044 class Theme {
00045 private:
00046 Theme_P *priv;
00047
00048 E_DISABLE_CLASS_COPY(Theme)
00049 public:
00051 Theme();
00052
00054 ~Theme();
00055
00062 bool load(const char *name = "default", const char *prefix = "ede");
00063
00067 bool load_from_file(const char *f);
00068
00072 void clear(void);
00073
00077 bool loaded(void) const;
00078
00083 bool get_item(const char *style_name, const char *item_name, char *ret, unsigned int sz);
00084
00090 bool get_item(const char *style_name, const char *item_name, long &ret, long fallback = 0);
00091
00093 const char *author(void) const;
00094
00096 const char *name(void) const;
00097
00099 const char *sample_image(void) const;
00100
00105 void apply_common_gui_elements(void);
00106
00107 #ifndef SKIP_DOCS
00108 E_CLASS_GLOBAL_EXPLICIT_DECLARE(Theme)
00109 #endif
00110 };
00111
00112 EDELIB_NS_END
00113 #endif