X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fb5246bead0df931f25bd73c9a03c356b180fcd1..a7f61f762d284fb33d12d3b2e69f05675ab675c4:/include/wx/window.h diff --git a/include/wx/window.h b/include/wx/window.h index 6753073db0..007ea874d9 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -168,30 +168,11 @@ public: // window attributes // ----------------- -#if !defined(__WXMSW__) && \ - !defined(__WXMGL__) && \ - !defined(__WXMOTIF__) && \ - !defined(__WXPM__) && \ - !defined(__WXMAC__) && \ - !defined(__WXGTK__) - - // FIXME: This is work in progress about moving SetTitle/GetTitle from wxWindow - // to wxTopLevelWindow so initially enabled in wxMSW only to observe results - // and continue on other platforms - - virtual void SetTitle( const wxString& WXUNUSED(title) ) {} - virtual wxString GetTitle() const { return wxEmptyString; } - - // label is just the same as the title (but for, e.g., buttons it - // makes more sense to speak about labels) - virtual void SetLabel(const wxString& label) { SetTitle(label); } - virtual wxString GetLabel() const { return GetTitle(); } -#else - // label is just the same as the title (but for, e.g., buttons it - // makes more sense to speak about labels) + // label is just the same as the title (but for, e.g., buttons it + // makes more sense to speak about labels), title access + // is available from wxTLW classes only (frames, dialogs) virtual void SetLabel(const wxString& label) = 0; virtual wxString GetLabel() const = 0; -#endif // the window name is used for ressource setting in X, it is not the // same as the window title/label @@ -351,15 +332,11 @@ public: // the generic centre function - centers the window on parent by` // default or on screen if it doesn't have parent or // wxCENTER_ON_SCREEN flag is given - void Centre( int direction = wxBOTH ); - void Center( int direction = wxBOTH ) { Centre(direction); } - - // centre on screen (only works for top level windows) - void CentreOnScreen(int dir = wxBOTH) { Centre(dir | wxCENTER_ON_SCREEN); } - void CenterOnScreen(int dir = wxBOTH) { CentreOnScreen(dir); } + void Centre(int dir = wxBOTH) { DoCentre(dir); } + void Center(int dir = wxBOTH) { DoCentre(dir); } // centre with respect to the the parent window - void CentreOnParent(int dir = wxBOTH) { Centre(dir | wxCENTER_FRAME); } + void CentreOnParent(int dir = wxBOTH) { DoCentre(dir); } void CenterOnParent(int dir = wxBOTH) { CentreOnParent(dir); } // set window size to wrap around its children @@ -975,7 +952,7 @@ public: void DeleteRelatedConstraints(); void ResetConstraints(); - // these methods may be overriden for special layout algorithms + // these methods may be overridden for special layout algorithms virtual void SetConstraintSizes(bool recurse = true); virtual bool LayoutPhase1(int *noChanges); virtual bool LayoutPhase2(int *noChanges); @@ -1314,6 +1291,11 @@ protected: // arrange themselves inside the given rectangle virtual void DoMoveWindow(int x, int y, int width, int height) = 0; + // centre the window in the specified direction on parent, note that + // wxCENTRE_ON_SCREEN shouldn't be specified here, it only makes sense for + // TLWs + virtual void DoCentre(int dir); + #if wxUSE_TOOLTIPS virtual void DoSetToolTip( wxToolTip *tip ); #endif // wxUSE_TOOLTIPS @@ -1367,13 +1349,20 @@ private: #include "wx/msw/window.h" #elif defined(__WXMOTIF__) #include "wx/motif/window.h" -#elif defined(__WXGTK__) +#elif defined(__WXGTK20__) #ifdef __WXUNIVERSAL__ #define wxWindowNative wxWindowGTK #else // !wxUniv #define wxWindowGTK wxWindow #endif // wxUniv #include "wx/gtk/window.h" +#elif defined(__WXGTK__) + #ifdef __WXUNIVERSAL__ + #define wxWindowNative wxWindowGTK + #else // !wxUniv + #define wxWindowGTK wxWindow + #endif // wxUniv + #include "wx/gtk1/window.h" #elif defined(__WXX11__) #ifdef __WXUNIVERSAL__ #define wxWindowNative wxWindowX11