]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/ilayout.tex
Some manual updates; in MDI sample, child frames now have default size/position ...
[wxWidgets.git] / docs / latex / wx / ilayout.tex
CommitLineData
a660d684
KB
1\section{\class{wxIndividualLayoutConstraint}}\label{wxindividuallayoutconstraint}
2
3Objects of this class are stored in the wxIndividualLayoutConstraint class
4as one of eight possible constraints that a window can be involved in.
5
6Constraints are initially set to have the relationship wxUnconstrained,
7which means that their values should be calculated by looking at known constraints.
8
9\wxheading{Derived from}
10
11\helpref{wxObject}{wxobject}
12
13\wxheading{See also}
14
15\helpref{Overview and examples}{constraintsoverview},\rtfsp
16\helpref{wxLayoutConstraints}{wxlayoutconstraints}, \helpref{wxWindow::SetConstraints}{wxwindowsetconstraints}.
17
18\latexignore{\rtfignore{\wxheading{Members}}}
19
20\subsection{Edges and relationships}
21
22TODO: put this in a different section.
23
24The {\it wxEdge}\index{wxEdge} enumerated type specifies the type of edge or dimension of a window.
25
26\begin{twocollist}\itemsep=0pt
27\twocolitem{wxLeft}{The left edge.}
28\twocolitem{wxTop}{The top edge.}
29\twocolitem{wxRight}{The right edge.}
30\twocolitem{wxBottom}{The bottom edge.}
31\twocolitem{wxCentreX}{The x-coordinate of the centre of the window.}
32\twocolitem{wxCentreY}{The y-coordinate of the centre of the window.}
33\end{twocollist}
34
35The {\it wxRelationship}\index{wxRelationship} enumerated type specifies the relationship that
36this edge or dimension has with another specified edge or dimension. Normally, the user
37doesn't use these directly because functions such as {\it Below} and {\it RightOf} are a convenience
38for using the more general {\it Set} function.
39
40\begin{twocollist}\itemsep=0pt
41\twocolitem{wxUnconstrained}{The edge or dimension is unconstrained (the default for edges.}
42\twocolitem{wxAsIs}{The edge or dimension is to be taken from the current window position or size (the
43default for dimensions.}
44\twocolitem{wxAbove}{The edge should be above another edge.}
45\twocolitem{wxBelow}{The edge should be below another edge.}
46\twocolitem{wxLeftOf}{The edge should be to the left of another edge.}
47\twocolitem{wxRightOf}{The edge should be to the right of another edge.}
48\twocolitem{wxSameAs}{The edge or dimension should be the same as another edge or dimension.}
49\twocolitem{wxPercentOf}{The edge or dimension should be a percentage of another edge or dimension.}
50\twocolitem{wxAbsolute}{The edge or dimension should be a given absolute value.}
51\end{twocollist}
52
53\membersection{wxIndividualLayoutConstraint::wxIndividualLayoutConstraint}
54
55\func{void}{wxIndividualLayoutConstraint}{\void}
56
57Constructor. Not used by the end-user.
58
59\membersection{wxIndividualLayoutConstraint::Above}
60
61\func{void}{Above}{\param{wxWindow *}{otherWin}, \param{int}{ margin = 0}}
62
63Constrains this edge to be above the given window, with an
64optional margin. Implicitly, this is relative to the top edge of the other window.
65
66\membersection{wxIndividualLayoutConstraint::Absolute}
67
68\func{void}{Absolute}{\param{int}{ value}}
69
70Constrains this edge or dimension to be the given absolute value.
71
72\membersection{wxIndividualLayoutConstraint::AsIs}
73
74\func{void}{AsIs}{\void}
75
76Sets this edge or constraint to be whatever the window's value is
77at the moment. If either of the width and height constraints
78are {\it as is}, the window will not be resized, but moved instead.
79This is important when considering panel items which are intended
80to have a default size, such as a button, which may take its size
81from the size of the button label.
82
83\membersection{wxIndividualLayoutConstraint::Below}
84
85\func{void}{Below}{\param{wxWindow *}{otherWin}, \param{int}{ margin = 0}}
86
87Constrains this edge to be below the given window, with an
88optional margin. Implicitly, this is relative to the bottom edge of the other window.
89
90\membersection{wxIndividualLayoutConstraint::Unconstrained}
91
92\func{void}{Unconstrained}{\void}
93
94Sets this edge or dimension to be unconstrained, that is, dependent on
95other edges and dimensions from which this value can be deduced.
96
97\membersection{wxIndividualLayoutConstraint::LeftOf}
98
99\func{void}{LeftOf}{\param{wxWindow *}{otherWin}, \param{int}{ margin = 0}}
100
101Constrains this edge to be to the left of the given window, with an
102optional margin. Implicitly, this is relative to the left edge of the other window.
103
104\membersection{wxIndividualLayoutConstraint::PercentOf}
105
106\func{void}{PercentOf}{\param{wxWindow *}{otherWin}, \param{wxEdge}{ edge}, \param{int}{ margin = 0}}
107
108Constrains this edge or dimension to be to a percentage of the given window, with an
109optional margin.
110
111\membersection{wxIndividualLayoutConstraint::RightOf}
112
113\func{void}{RightOf}{\param{wxWindow *}{otherWin}, \param{int}{ margin = 0}}
114
115Constrains this edge to be to the right of the given window, with an
116optional margin. Implicitly, this is relative to the right edge of the other window.
117
118\membersection{wxIndividualLayoutConstraint::SameAs}
119
120\func{void}{SameAs}{\param{wxWindow *}{otherWin}, \param{wxEdge}{ edge}, \param{int}{ margin = 0}}
121
122Constrains this edge or dimension to be to the same as the edge of the given window, with an
123optional margin.
124
125\membersection{wxIndividualLayoutConstraint::Set}
126
127\func{void}{Set}{\param{wxRelationship}{ rel}, \param{wxWindow *}{otherWin}, \param{wxEdge}{ otherEdge},
128 \param{int}{ value = 0}, \param{int}{ margin = 0}}
129
130Sets the properties of the constraint. Normally called by one of the convenience
131functions such as Above, RightOf, SameAs.
132
133