aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/FbTk/Theme.hh26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/FbTk/Theme.hh b/src/FbTk/Theme.hh
index bd02666..b0d2652 100644
--- a/src/FbTk/Theme.hh
+++ b/src/FbTk/Theme.hh
@@ -19,10 +19,12 @@
19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20// DEALINGS IN THE SOFTWARE. 20// DEALINGS IN THE SOFTWARE.
21 21
22// $Id: Theme.hh,v 1.1 2002/12/02 19:34:51 fluxgen Exp $ 22// $Id: Theme.hh,v 1.2 2002/12/16 11:01:43 fluxgen Exp $
23 23
24// holds ThemeItem, Theme and ThemeManager 24// holds ThemeItem, Theme and ThemeManager
25 25
26#ifndef FBTK_THEME_HH
27#define FBTK_THEME_HH
26 28
27#include <string> 29#include <string>
28#include <list> 30#include <list>
@@ -33,9 +35,11 @@
33namespace FbTk { 35namespace FbTk {
34 36
35class Theme; 37class Theme;
38
39/// Base class for ThemeItem, holds name and altname
36/** 40/**
37 base class for themeitem, holds name and altname 41 @see ThemeItem
38 */ 42*/
39class ThemeItem_base { 43class ThemeItem_base {
40public: 44public:
41 ThemeItem_base(const std::string &name, const std::string &altname): 45 ThemeItem_base(const std::string &name, const std::string &altname):
@@ -50,9 +54,8 @@ private:
50 std::string m_name, m_altname; 54 std::string m_name, m_altname;
51}; 55};
52 56
53/** 57
54 template ThemeItem class for things like Texture and Color 58/// template ThemeItem class for things like Texture and Color
55*/
56template <typename T> 59template <typename T>
57class ThemeItem:public ThemeItem_base { 60class ThemeItem:public ThemeItem_base {
58public: 61public:
@@ -80,10 +83,7 @@ private:
80}; 83};
81 84
82 85
83 86/// Hold ThemeItems. Use this to create a Theme set
84/**
85 Hold themeitems. Use this to create a Theme set
86*/
87class Theme { 87class Theme {
88public: 88public:
89 explicit Theme(int screen_num); // create a theme for a specific screen 89 explicit Theme(int screen_num); // create a theme for a specific screen
@@ -105,8 +105,9 @@ private:
105}; 105};
106 106
107 107
108/// Singleton theme manager
108/** 109/**
109 singleton theme manager 110 Use this to load all the registred themes
110*/ 111*/
111class ThemeManager { 112class ThemeManager {
112public: 113public:
@@ -120,7 +121,7 @@ private:
120 121
121 friend class FbTk::Theme; // so only theme can register itself in constructor 122 friend class FbTk::Theme; // so only theme can register itself in constructor
122 /// @return false if screen_num if out of 123 /// @return false if screen_num if out of
123 // range or theme already registered, else true 124 /// range or theme already registered, else true
124 bool registerTheme(FbTk::Theme &tm); 125 bool registerTheme(FbTk::Theme &tm);
125 /// @return false if theme isn't registred in the manager 126 /// @return false if theme isn't registred in the manager
126 bool unregisterTheme(FbTk::Theme &tm); 127 bool unregisterTheme(FbTk::Theme &tm);
@@ -159,4 +160,5 @@ void Theme::remove(ThemeItem<T> &item) {
159 160
160}; // end namespace FbTk 161}; // end namespace FbTk
161 162
163#endif // FBTK_THEME_HH
162 164