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