X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5eb16fe200346c41de14bff0fc84128faaec5496..a4301b8f14d21b7d28fc4f6a247b740d945ca6dc:/include/wx/sizer.h?ds=sidebyside diff --git a/include/wx/sizer.h b/include/wx/sizer.h index ab296ad069..29facff1e2 100644 --- a/include/wx/sizer.h +++ b/include/wx/sizer.h @@ -125,6 +125,10 @@ public: wxSizerFlags& Border(int direction, int borderInPixels) { + wxCHECK_MSG( !(direction & ~wxALL), *this, + wxS("direction must be a combination of wxDirection ") + wxS("enum values.") ); + m_flags &= ~wxALL; m_flags |= direction; @@ -311,6 +315,10 @@ public: { return m_minSize; } wxSize GetMinSizeWithBorder() const; + wxSize GetMaxSize() const + { return IsWindow() ? m_window->GetMaxSize() : wxDefaultSize; } + wxSize GetMaxSizeWithBorder() const; + void SetMinSize(const wxSize& size) { if ( IsWindow() ) @@ -436,6 +444,10 @@ protected: void DoSetSizer(wxSizer *sizer); void DoSetSpacer(const wxSize& size); + // Add the border specified for this item to the given size + // if it's != wxDefaultSize, just return wxDefaultSize otherwise. + wxSize AddBorderToSize(const wxSize& size) const; + // discriminated union: depending on m_kind one of the fields is valid enum { @@ -601,7 +613,7 @@ public: virtual void DeleteWindows(); // Inform sizer about the first direction that has been decided (by parent item) - // Returns true if it made use of the informtion (and recalculated min size) + // Returns true if it made use of the information (and recalculated min size) virtual bool InformFirstDirection( int WXUNUSED(direction), int WXUNUSED(size), int WXUNUSED(availableOtherDir) ) { return false; } @@ -703,6 +715,10 @@ public: void Show(bool show) { ShowItems(show); } + // This is the ShowItems() counterpart and returns true if any of the sizer + // items are shown. + virtual bool AreAnyItemsShown() const; + protected: wxSize m_size; wxSize m_minSize; @@ -1021,6 +1037,7 @@ public: // override to hide/show the static box as well virtual void ShowItems (bool show); + virtual bool AreAnyItemsShown() const; virtual bool Detach( wxWindow *window ); virtual bool Detach( wxSizer *sizer ) { return wxBoxSizer::Detach(sizer); }