X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3417c2cd3d5cb05451270b5a09fe2355406158a3..0a12e013f55022e684508316ad0079511e3b4fe7:/include/wx/layout.h?ds=sidebyside diff --git a/include/wx/layout.h b/include/wx/layout.h index e3e5353ce7..accc8836eb 100644 --- a/include/wx/layout.h +++ b/include/wx/layout.h @@ -1,26 +1,22 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: layout.h -// Purpose: Layout classes +// Name: wx/layout.h +// Purpose: OBSOLETE layout constraint classes, use sizers instead // Author: Julian Smart // Modified by: // Created: 29/01/98 // RCS-ID: $Id$ // Copyright: (c) 1998 Julian Smart -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef _WX_LAYOUTH__ -#define _WX_LAYOUTH__ +#ifndef _WX_LAYOUT_H_ +#define _WX_LAYOUT_H_ // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma interface "layout.h" -#endif - -#include "wx/defs.h" +#include "wx/object.h" // X stupidly defines these in X.h #ifdef Above @@ -30,12 +26,14 @@ #undef Below #endif +#if wxUSE_CONSTRAINTS + // ---------------------------------------------------------------------------- // forward declrations // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxWindowBase; -class WXDLLEXPORT wxLayoutConstraints; +class WXDLLIMPEXP_FWD_CORE wxWindowBase; +class WXDLLIMPEXP_FWD_CORE wxLayoutConstraints; // ---------------------------------------------------------------------------- // constants @@ -66,28 +64,14 @@ enum wxRelationship // wxIndividualLayoutConstraint: a constraint on window position // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxIndividualLayoutConstraint : public wxObject +class WXDLLIMPEXP_CORE wxIndividualLayoutConstraint : public wxObject { - DECLARE_DYNAMIC_CLASS(wxIndividualLayoutConstraint) - -protected: - // To be allowed to modify the internal variables - friend class wxIndividualLayoutConstraint_Serialize; - - // 'This' window is the parent or sibling of otherWin - wxWindowBase *otherWin; - - wxEdge myEdge; - wxRelationship relationship; - int margin; - int value; - int percent; - wxEdge otherEdge; - bool done; - public: wxIndividualLayoutConstraint(); - ~wxIndividualLayoutConstraint(); + + // note that default copy ctor and assignment operators are ok + + virtual ~wxIndividualLayoutConstraint(){} void Set(wxRelationship rel, wxWindowBase *otherW, wxEdge otherE, int val = 0, int marg = wxLAYOUT_DEFAULT_MARGIN); @@ -148,16 +132,31 @@ public: // Get the value of this edge or dimension, or if this // is not determinable, -1. int GetEdge(wxEdge which, wxWindowBase *thisWin, wxWindowBase *other) const; + +protected: + // To be allowed to modify the internal variables + friend class wxIndividualLayoutConstraint_Serialize; + + // 'This' window is the parent or sibling of otherWin + wxWindowBase *otherWin; + + wxEdge myEdge; + wxRelationship relationship; + int margin; + int value; + int percent; + wxEdge otherEdge; + bool done; + + DECLARE_DYNAMIC_CLASS(wxIndividualLayoutConstraint) }; // ---------------------------------------------------------------------------- // wxLayoutConstraints: the complete set of constraints for a window // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxLayoutConstraints : public wxObject +class WXDLLIMPEXP_CORE wxLayoutConstraints : public wxObject { - DECLARE_DYNAMIC_CLASS(wxLayoutConstraints) - public: // Edge constraints wxIndividualLayoutConstraint left; @@ -172,15 +171,21 @@ public: wxIndividualLayoutConstraint centreY; wxLayoutConstraints(); - ~wxLayoutConstraints(); + + // note that default copy ctor and assignment operators are ok + + virtual ~wxLayoutConstraints(){} bool SatisfyConstraints(wxWindowBase *win, int *noChanges); bool AreSatisfied() const { - return left.GetDone() && top.GetDone() && right.GetDone() && - bottom.GetDone() && centreX.GetDone() && centreY.GetDone(); + return left.GetDone() && top.GetDone() && + width.GetDone() && height.GetDone(); } + + DECLARE_DYNAMIC_CLASS(wxLayoutConstraints) }; -#endif - // _WX_LAYOUTH__ +#endif // wxUSE_CONSTRAINTS + +#endif // _WX_LAYOUT_H_