]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/sashwin.tex
wxSize/wxPoint/wxRect versions of functions added to wxMSW, wxMotif;
[wxWidgets.git] / docs / latex / wx / sashwin.tex
1 \section{\class{wxSashWindow}}\label{wxsashwindow}
2
3 wxSashWindow allows any of its edges to have a sash which can be dragged
4 to resize the window. The actual content window will be created by the application
5 as a child of wxSashWindow. The window (or an ancestor) will be notified of a drag
6 via a \helpref{wxSashEvent}{wxsashevent} notification.
7
8 \wxheading{Derived from}
9
10 \helpref{wxWindow}{wxwindow}\\
11 \helpref{wxEvtHandler}{wxevthandler}\\
12 \helpref{wxObject}{wxobject}
13
14 \wxheading{Window styles}
15
16 The following styles apply in addition to the normal wxWindow styles.
17
18 \twocolwidtha{5cm}%
19 \begin{twocollist}\itemsep=0pt
20 \twocolitem{\windowstyle{wxSW\_3D}}{Draws the sashes in 3D.}
21 \end{twocollist}
22
23 See also \helpref{window styles overview}{windowstyles}.
24
25 \wxheading{Event handling}
26
27 \twocolwidtha{7cm}%
28 \begin{twocollist}\itemsep=0pt
29 \twocolitem{{\bf EVT\_SASH\_DRAGGED(id, func)}}{Process a wxEVT\_SASH\_DRAGGED event,
30 when the user has finished dragging a sash.}
31 \twocolitem{{\bf EVT\_SASH\_DRAGGED\_RANGE(id1, id2, func)}}{Process a wxEVT\_SASH\_DRAGGED\_RANGE event,
32 when the user has finished dragging a sash. The event handler is called when windows with ids in the
33 given range have their sashes dragged.}
34 \end{twocollist}
35
36 \wxheading{Data types}
37
38 {\small
39 \begin{verbatim}
40 enum wxSashEdgePosition {
41 wxSASH_TOP = 0,
42 wxSASH_RIGHT,
43 wxSASH_BOTTOM,
44 wxSASH_LEFT,
45 wxSASH_NONE = 100
46 };
47 \end{verbatim}
48 }
49
50 \wxheading{See also}
51
52 \helpref{wxSashEvent}{wxsashevent}, \helpref{wxSashLayoutWindow}{wxsashlayoutwindow}, \helpref{Event handling overview}{eventhandlingoverview}
53
54 \latexignore{\rtfignore{\wxheading{Members}}}
55
56 \membersection{wxSashWindow::wxSashWindow}
57
58 \func{}{wxSashWindow}{\void}
59
60 Default constructor.
61
62 \func{}{wxSashWindow}{\param{wxSashWindow*}{ parent}, \param{wxSashWindowID }{id},
63 \param{const wxPoint\& }{pos = wxDefaultPosition},
64 \param{const wxSize\& }{size = wxDefaultSize},
65 \param{long }{style = wxCLIP\_CHILDREN \pipe wxSW\_3D},
66 \param{const wxString\& }{name = "sashWindow"}}
67
68 Constructs a sash window, which can be a child of a frame, dialog or any other non-control window.
69
70 \wxheading{Parameters}
71
72 \docparam{parent}{Pointer to a parent window.}
73
74 \docparam{id}{Window identifier. If -1, will automatically create an identifier.}
75
76 \docparam{pos}{Window position. wxDefaultPosition is (-1, -1) which indicates that wxSashWindows
77 should generate a default position for the window. If using the wxSashWindow class directly, supply
78 an actual position.}
79
80 \docparam{size}{Window size. wxDefaultSize is (-1, -1) which indicates that wxSashWindows
81 should generate a default size for the window.}
82
83 \docparam{style}{Window style. For window styles, please see \helpref{wxSashWindow}{wxsashwindow}.}
84
85 \docparam{name}{Window name.}
86
87 \membersection{wxSashWindow::\destruct{wxSashWindow}}
88
89 \func{}{\destruct{wxSashWindow}}{\void}
90
91 Destructor.
92
93 \membersection{wxSashWindow::GetSashVisible}\label{wxsashwindowgetsashvisible}
94
95 \constfunc{bool}{GetSashVisible}{\param{wxSashEdgePosition }{edge}}
96
97 Returns TRUE if a sash is visible on the given edge, FALSE otherwise.
98
99 \wxheading{Parameters}
100
101 \docparam{edge}{Edge. One of wxSASH\_TOP, wxSASH\_RIGHT, wxSASH\_BOTTOM, wxSASH\_LEFT.}
102
103 \wxheading{See also}
104
105 \helpref{wxSashWindow::SetSashVisible}{wxsashwindowsetsashvisible}
106
107 \membersection{wxSashWindow::GetMaximumSizeX}\label{wxsashwindowgetmaximumsizex}
108
109 \constfunc{int}{GetMaximumSizeX}{\void}
110
111 Gets the maximum window size in the x direction.
112
113 \membersection{wxSashWindow::GetMaximumSizeY}\label{wxsashwindowgetmaximumsizey}
114
115 \constfunc{int}{GetMaximumSizeY}{\void}
116
117 Gets the maximum window size in the y direction.
118
119 \membersection{wxSashWindow::GetMinimumSizeX}\label{wxsashwindowgetminimumsizex}
120
121 \func{int}{GetMinimumSizeX}{\void}
122
123 Gets the minimum window size in the x direction.
124
125 \membersection{wxSashWindow::GetMinimumSizeY}\label{wxsashwindowgetminimumsizey}
126
127 \constfunc{int}{GetMinimumSizeY}{\param{int}{ min}}
128
129 Gets the minimum window size in the y direction.
130
131 \membersection{wxSashWindow::HasBorder}\label{wxsashwindowhasborder}
132
133 \constfunc{bool}{HasBorder}{\param{wxSashEdgePosition }{edge}}
134
135 Returns TRUE if the sash has a border, FALSE otherwise.
136
137 \wxheading{Parameters}
138
139 \docparam{edge}{Edge. One of wxSASH\_TOP, wxSASH\_RIGHT, wxSASH\_BOTTOM, wxSASH\_LEFT.}
140
141 \wxheading{See also}
142
143 \helpref{wxSashWindow::SetSashBorder}{wxsashwindowsetsashborder}
144
145 \membersection{wxSashWindow::SetMaximumSizeX}\label{wxsashwindowsetmaximumsizex}
146
147 \func{void}{SetMaximumSizeX}{\param{int}{ min}}
148
149 Sets the maximum window size in the x direction.
150
151 \membersection{wxSashWindow::SetMaximumSizeY}\label{wxsashwindowsetmaximumsizey}
152
153 \func{void}{SetMaximumSizeY}{\param{int}{ min}}
154
155 Sets the maximum window size in the y direction.
156
157 \membersection{wxSashWindow::SetMinimumSizeX}\label{wxsashwindowsetminimumsizex}
158
159 \func{void}{SetMinimumSizeX}{\param{int}{ min}}
160
161 Sets the minimum window size in the x direction.
162
163 \membersection{wxSashWindow::SetMinimumSizeY}\label{wxsashwindowsetminimumsizey}
164
165 \func{void}{SetMinimumSizeY}{\param{int}{ min}}
166
167 Sets the minimum window size in the y direction.
168
169 \membersection{wxSashWindow::SetSashVisible}\label{wxsashwindowsetsashvisible}
170
171 \func{void}{SetSashVisible}{\param{wxSashEdgePosition }{edge}, \param{bool}{ visible}}
172
173 Call this function to make a sash visible or invisible on a particular edge.
174
175 \wxheading{Parameters}
176
177 \docparam{edge}{Edge to change. One of wxSASH\_TOP, wxSASH\_RIGHT, wxSASH\_BOTTOM, wxSASH\_LEFT.}
178
179 \docparam{visible}{TRUE to make the sash visible, FALSE to make it invisible.}
180
181 \wxheading{See also}
182
183 \helpref{wxSashWindow::GetSashVisible}{wxsashwindowgetsashvisible}
184
185 // Set whether there's a border in this position
186 inline void SetSashBorder(wxSashEdgePosition edge, bool border) { m_sashes[edge].m_border = border; }
187
188 \membersection{wxSashWindow::SetSashBorder}\label{wxsashwindowsetsashborder}
189
190 \func{void}{SetSashBorder}{\param{wxSashEdgePosition }{edge}, \param{bool}{ hasBorder}}
191
192 Call this function to give the sash a border, or remove the border.
193
194 \wxheading{Parameters}
195
196 \docparam{edge}{Edge to change. One of wxSASH\_TOP, wxSASH\_RIGHT, wxSASH\_BOTTOM, wxSASH\_LEFT.}
197
198 \docparam{hasBorder}{TRUE to give the sash a border visible, FALSE to remove it.}
199
200 \wxheading{See also}
201
202 \helpref{wxSashWindow::HashBorder}{wxsashwindowhasborder}
203