added wxDelegateTheme to accompany wxDelegateRenderer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
		| @@ -76,6 +76,34 @@ private: | ||||
|     friend struct WXDLLEXPORT wxThemeInfo; | ||||
| }; | ||||
|  | ||||
| // ---------------------------------------------------------------------------- | ||||
| // wxDelegateTheme: it is impossible to inherit from any of standard | ||||
| // themes as their declarations are in private code, but you can use this | ||||
| // class to override only some of their functions - all the other ones | ||||
| // will be left to the original theme | ||||
| // ---------------------------------------------------------------------------- | ||||
|  | ||||
| class wxDelegateTheme : public wxTheme | ||||
| { | ||||
| public: | ||||
|     wxDelegateTheme(const wxChar *theme); | ||||
|     virtual ~wxDelegateTheme(); | ||||
|  | ||||
|     virtual wxRenderer *GetRenderer(); | ||||
|     virtual wxArtProvider *GetArtProvider(); | ||||
|     virtual wxInputHandler *GetInputHandler(const wxString& control, | ||||
|                                             wxInputConsumer *consumer); | ||||
|     virtual wxColourScheme *GetColourScheme(); | ||||
|  | ||||
| protected: | ||||
|     // gets or creates theme and sets m_theme to point to it, | ||||
|     // returns true on success | ||||
|     bool GetOrCreateTheme(); | ||||
|  | ||||
|     wxString    m_themeName; | ||||
|     wxTheme    *m_theme; | ||||
| }; | ||||
|  | ||||
| // ---------------------------------------------------------------------------- | ||||
| // dynamic theme creation helpers | ||||
| // ---------------------------------------------------------------------------- | ||||
|   | ||||
		Reference in New Issue
	
	Block a user