diff options
Diffstat (limited to 'src/FbTk/Theme.hh')
-rw-r--r-- | src/FbTk/Theme.hh | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/FbTk/Theme.hh b/src/FbTk/Theme.hh index 159364e..1ae3387 100644 --- a/src/FbTk/Theme.hh +++ b/src/FbTk/Theme.hh | |||
@@ -118,6 +118,18 @@ private: | |||
118 | FbTk::Subject m_reconfig_sig; | 118 | FbTk::Subject m_reconfig_sig; |
119 | }; | 119 | }; |
120 | 120 | ||
121 | /// Proxy interface for themes, so they can be substituted dynamically | ||
122 | template <class BaseTheme> | ||
123 | class ThemeProxy { | ||
124 | public: | ||
125 | virtual ~ThemeProxy() { } | ||
126 | |||
127 | virtual Subject &reconfigSig() = 0; | ||
128 | virtual const Subject &reconfigSig() const = 0; | ||
129 | |||
130 | virtual BaseTheme *operator ->() = 0; | ||
131 | virtual const BaseTheme *operator ->() const = 0; | ||
132 | }; | ||
121 | 133 | ||
122 | /// Singleton theme manager | 134 | /// Singleton theme manager |
123 | /** | 135 | /** |