00001 // $Id: platform.h 1344 2006-06-20 19:52:02Z alex $ 00002 /* @@tag:xara-cn-tp@@ THIRD PARTY COPYRIGHT */ 00003 // The following line makes normalize.pl skip type fixing 00004 /* SKIPFIXTYPES: START */ 00005 00006 // This file is derived from CVSHEAD wxWidgets and is thus 00007 // under the wxWidgets / wxWindows license. 00008 00009 #ifndef __WXXTRA_PLATFORM_H 00010 #define __WXXTRA_PLATFORM_H 00011 00012 #include <wx/wx.h> 00013 00014 // This is an interface class which allows use of platform dependent functions 00015 // without the user having to include any platform dependent includes. 00016 00017 class wxPlatformDependent : public wxObject 00018 { 00019 public: 00020 static bool Init(wxClassInfo * pClassInfo = NULL); 00021 00022 static void DeInit(); 00023 00024 private: 00025 static wxPlatformDependent * s_PlatformDependent; 00026 00027 public: 00028 static wxPlatformDependent * Get() {return s_PlatformDependent;} 00029 00030 protected: 00031 virtual void Initialise() {} // To override 00032 virtual void Deinitialise() {} // To override 00033 00034 public: 00035 virtual void InitWindow(wxWindow * pwxWindow) {} // To override 00036 00037 virtual void FixUpdate(wxWindow * pwxWindow, bool flush=true); 00038 00039 #if defined( __WXGTK__ ) 00040 virtual void ParseGtkRcString(char * rcstring); 00041 virtual void SetGtkWidgetName(wxWindow * pwxWindow, char * name); 00042 #endif 00043 00044 virtual void RealYield(); 00045 00046 DECLARE_DYNAMIC_CLASS(wxPlatformDependent); 00047 }; 00048 00049 #endif // __WXXTRA_PLATFORM_H