X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/72f8c792205f18e8f171468240b6c04ceca000d2..2d6dd9c09e7084d402fc923d2f09d8b7158a1a04:/include/wx/window.h diff --git a/include/wx/window.h b/include/wx/window.h index 6efb7a0249..c7183ecabb 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -25,6 +25,7 @@ #include "wx/colour.h" #include "wx/region.h" #include "wx/utils.h" +#include "wx/intl.h" #include "wx/validate.h" // for wxDefaultValidator (always include it) @@ -180,9 +181,10 @@ public: virtual void SetName( const wxString &name ) { m_windowName = name; } virtual wxString GetName() const { return m_windowName; } - // sets the window variant, calls internally DoSetVariant if variant has changed - void SetWindowVariant( wxWindowVariant variant ) ; - wxWindowVariant GetWindowVariant() const { return m_windowVariant ; } + // sets the window variant, calls internally DoSetVariant if variant + // has changed + void SetWindowVariant(wxWindowVariant variant); + wxWindowVariant GetWindowVariant() const { return m_windowVariant; } // window id uniquely identifies the window among its siblings unless @@ -190,6 +192,19 @@ public: void SetId( wxWindowID winid ) { m_windowId = winid; } wxWindowID GetId() const { return m_windowId; } + // get or change the layout direction (LTR or RTL) for this window, + // wxLayout_Default is returned if layout direction is not supported + virtual wxLayoutDirection GetLayoutDirection() const + { return wxLayout_Default; } + virtual void SetLayoutDirection(wxLayoutDirection WXUNUSED(dir)) + { } + + // mirror coordinates for RTL layout if this window uses it and if the + // mirroring is not done automatically like Win32 + virtual wxCoord AdjustForLayoutDirection(wxCoord x, + wxCoord width, + wxCoord widthTotal) const; + // generate a control id for the controls which were not given one by // user static int NewControlId() { return --ms_lastControlId; } @@ -464,6 +479,10 @@ public: virtual bool IsShown() const { return m_isShown; } virtual bool IsEnabled() const { return m_isEnabled; } + // returns true if the window is visible, i.e. IsShown() returns true + // if called on it and all its parents up to the first TLW + virtual bool IsVisible() const; + // get/set window style (setting style won't update the window and so // is only useful for internal usage) virtual void SetWindowStyleFlag( long style ) { m_windowStyle = style; } @@ -709,13 +728,17 @@ public: // these functions verify whether the given point/rectangle belongs to // (or at least intersects with) the update region - bool IsExposed( int x, int y ) const; - bool IsExposed( int x, int y, int w, int h ) const; + virtual bool DoIsExposed( int x, int y ) const; + virtual bool DoIsExposed( int x, int y, int w, int h ) const; + bool IsExposed( int x, int y ) const + { return DoIsExposed(x, y); } + bool IsExposed( int x, int y, int w, int h ) const + { return DoIsExposed(x, y, w, h); } bool IsExposed( const wxPoint& pt ) const - { return IsExposed(pt.x, pt.y); } + { return DoIsExposed(pt.x, pt.y); } bool IsExposed( const wxRect& rect ) const - { return IsExposed(rect.x, rect.y, rect.width, rect.height); } + { return DoIsExposed(rect.x, rect.y, rect.width, rect.height); } // colours, fonts and cursors // -------------------------- @@ -1027,6 +1050,12 @@ public: wxAccessible* GetOrCreateAccessible() ; #endif + + // Set window transparency if the platform supports it + virtual bool SetTransparent(wxByte WXUNUSED(alpha)) { return false; } + virtual bool CanSetTransparent() { return false; } + + // implementation // -------------- @@ -1391,12 +1420,11 @@ private: #endif // wxUniv #include "wx/x11/window.h" #elif defined(__WXMGL__) - #ifdef __WXUNIVERSAL__ - #define wxWindowNative wxWindowMGL - #else // !wxUniv - #define wxWindowMGL wxWindow - #endif // wxUniv + #define wxWindowNative wxWindowMGL #include "wx/mgl/window.h" +#elif defined(__WXDFB__) + #define wxWindowNative wxWindowDFB + #include "wx/dfb/window.h" #elif defined(__WXMAC__) #ifdef __WXUNIVERSAL__ #define wxWindowNative wxWindowMac