00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef TOOLTHEME_HH
00026 #define TOOLTHEME_HH
00027
00028
00029 #include "TextTheme.hh"
00030 #include "BorderTheme.hh"
00031
00032 #include "FbTk/Texture.hh"
00033
00034 #include <X11/Xlib.h>
00035 #include <string>
00036
00037 class ToolbarTheme;
00038
00040 class ToolTheme: public FbTk::Theme, public TextTheme {
00041 public:
00042 ToolTheme(int screen_num, const std::string &name, const std::string &altname);
00043 virtual ~ToolTheme();
00044
00045 bool fallback(FbTk::ThemeItem_base &item);
00046
00047 void reconfigTheme();
00048
00049 const FbTk::Texture &texture() const { return *m_texture; }
00050 const BorderTheme &border() const { return m_border; }
00051 inline unsigned char alpha() const { return *m_alpha; }
00052
00053 protected:
00054 FbTk::ThemeItem<FbTk::Texture> &textureTheme() { return m_texture; }
00055
00056 private:
00057 FbTk::ThemeItem<FbTk::Texture> m_texture;
00058 BorderTheme m_border;
00059 FbTk::ThemeItem<int> m_alpha;
00060 };
00061
00062 #endif // TOOLTHEME_HH