]>
Commit | Line | Data |
---|---|---|
6fb26ea3 JS |
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 |