edelib/Theme.h

00001 /*
00002  * $Id: String.h 2594 2009-03-25 14:54:54Z karijes $
00003  *
00004  * Theming stuff
00005  * Copyright (c) 2009 edelib authors
00006  *
00007  * This library is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU Lesser General Public
00009  * License as published by the Free Software Foundation; either
00010  * version 2 of the License, or (at your option) any later version.
00011  *
00012  * This library is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00015  * Lesser General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Lesser General Public License
00018  * along with this library. If not, see <http://www.gnu.org/licenses/>.
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 
00042 class Theme {
00043 private:
00044         Theme_P *priv;
00045         E_DISABLE_CLASS_COPY(Theme)
00046 public:
00048         Theme();
00049 
00051         ~Theme();
00052 
00056         bool load(const char *f);
00057 
00061         void clear(void);
00062 
00066         bool loaded(void) const;
00067 
00072         bool get_item(const char *style_name, const char *item_name, char *ret, unsigned int sz);
00073 
00079         bool get_item(const char *style_name, const char *item_name, long &ret, long fallback = 0);
00080 
00082         const char *author(void) const;
00083 
00085         const char *name(void) const;
00086 
00088         const char *sample_image(void) const;
00089 };
00090 
00091 EDELIB_NS_END
00092 #endif
00093 

Generated on Wed Dec 16 14:31:52 2009 for edelib by  doxygen 1.5.2