X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/85b38e0bd12e376b5ecebac69de539dea5232332..717a70722efbd1931301d44344df83ec23118b7b:/include/wx/window.h diff --git a/include/wx/window.h b/include/wx/window.h index ed8bfdd743..da86c0b470 100644 --- a/include/wx/window.h +++ b/include/wx/window.h @@ -5,17 +5,13 @@ // Modified by: Ron Lee // Created: 01/02/97 // RCS-ID: $Id$ -// Copyright: (c) wxWidgets team +// Copyright: (c) Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_WINDOW_H_BASE_ #define _WX_WINDOW_H_BASE_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "windowbase.h" -#endif - // ---------------------------------------------------------------------------- // headers which we must include here // ---------------------------------------------------------------------------- @@ -172,19 +168,11 @@ public: // window attributes // ----------------- - // NB: in future versions of wxWidgets Set/GetTitle() will only work - // with the top level windows (such as dialogs and frames) and - // Set/GetLabel() only with the other ones (i.e. all controls). - - // the title (or label, see below) of the window: the text which the - // window shows - 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(); } + // 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; // the window name is used for ressource setting in X, it is not the // same as the window title/label @@ -424,16 +412,10 @@ public: // Override these methods for windows that have a virtual size // independent of their client size. eg. the virtual area of a - // wxScrolledWindow. Default is to return m_virtualSize unless - // the client size is bigger. + // wxScrolledWindow. virtual void DoSetVirtualSize( int x, int y ); virtual wxSize DoGetVirtualSize() const; - - - // Really return just m_virtualSize, nothing else - - wxSize GetPureVirtualSize() const { return m_virtualSize; } // Return the largest of ClientSize and BestSize (as determined // by a sizer, interior children, or other means) @@ -488,14 +470,6 @@ public: virtual void SetThemeEnabled(bool enableTheme) { m_themeEnabled = enableTheme; } virtual bool GetThemeEnabled() const { return m_themeEnabled; } - // Returns true if this class should have the background colour - // changed to match the parent window's theme. For example when a - // page is added to a notebook it and its children may need to have - // the colours adjusted depending on the current theme settings, but - // not all windows/controls can do this without looking wrong. - virtual void ApplyParentThemeBackground(const wxColour& WXUNUSED(bg)) - { /* do nothing */ } - // focus and keyboard handling // --------------------------- @@ -765,13 +739,14 @@ public: m_inheritBgCol = false; } wxColour GetBackgroundColour() const; - - // if the window shouldn't inherit its colour from the parent, override - // this function to return true - // - // this is currently only used by wxMSW and wxUniv but should be useful for - // the other ports too - virtual bool ProvidesBackground() const { return false; } + bool InheritsBackgroundColour() const + { + return m_inheritBgCol; + } + bool UseBgCol() const + { + return m_hasBgCol; + } virtual bool SetForegroundColour(const wxColour& colour); void SetOwnForegroundColour(const wxColour& colour) @@ -933,6 +908,10 @@ public: void SetHelpTextForId(const wxString& text); // get the help string associated with this window (may be empty) wxString GetHelpText() const; +#else + // silently ignore SetHelpText() calls + void SetHelpText(const wxString& WXUNUSED(text)) { } + void SetHelpTextForId(const wxString& WXUNUSED(text)) { } #endif // wxUSE_HELP // tooltips @@ -977,7 +956,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); @@ -1082,6 +1061,17 @@ public: // behaviour in the most common case virtual bool ShouldInheritColours() const { return false; } + // Reserved for future use + virtual void ReservedWindowFunc1() {} + virtual void ReservedWindowFunc2() {} + virtual void ReservedWindowFunc3() {} + virtual void ReservedWindowFunc4() {} + virtual void ReservedWindowFunc5() {} + virtual void ReservedWindowFunc6() {} + virtual void ReservedWindowFunc7() {} + virtual void ReservedWindowFunc8() {} + virtual void ReservedWindowFunc9() {} + protected: // event handling specific to wxWindow virtual bool TryValidator(wxEvent& event); @@ -1281,6 +1271,14 @@ protected: // same size as it would have after a call to Fit() virtual wxSize DoGetBestSize() const; + // called from DoGetBestSize() to convert best virtual size (returned by + // the window sizer) to the best size for the window itself; this is + // overridden at wxScrolledWindow level to clump down virtual size to real + virtual wxSize GetWindowSizeForVirtualSize(const wxSize& size) const + { + return size; + } + // this is the virtual function to be overriden in any derived class which // wants to change how SetSize() or Move() works - it is called by all // versions of these functions in the base class @@ -1314,6 +1312,9 @@ protected: // implements the window variants virtual void DoSetWindowVariant( wxWindowVariant variant ) ; + // Reserved for future use + void* m_windowReserved; + private: // contains the last id generated by NewControlId static int ms_lastControlId; @@ -1527,6 +1528,4 @@ public: #endif // wxUSE_ACCESSIBILITY -#endif - // _WX_WINDOW_H_BASE_ - +#endif // _WX_WINDOW_H_BASE_