1 \section{\class{wxSashWindow
}}\label{wxsashwindow
}
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.
8 \wxheading{Derived from
}
10 \helpref{wxWindow
}{wxwindow
}\\
11 \helpref{wxEvtHandler
}{wxevthandler
}\\
12 \helpref{wxObject
}{wxobject
}
14 \wxheading{Window styles
}
16 The following styles apply in addition to the normal wxWindow styles.
19 \begin{twocollist
}\itemsep=
0pt
20 \twocolitem{\windowstyle{wxSW
\_3D}}{Draws the sashes in
3D.
}
23 See also
\helpref{window styles overview
}{windowstyles
}.
25 \wxheading{Event handling
}
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.
}
36 \wxheading{Data types
}
40 enum wxSashEdgePosition
{
52 \helpref{wxSashEvent
}{wxsashevent
},
\helpref{wxSashLayoutWindow
}{wxsashlayoutwindow
},
\helpref{Event handling overview
}{eventhandlingoverview
}
54 \latexignore{\rtfignore{\wxheading{Members
}}}
56 \membersection{wxSashWindow::wxSashWindow
}
58 \func{}{wxSashWindow
}{\void}
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"
}}
68 Constructs a sash window, which can be a child of a frame, dialog or any other non-control window.
70 \wxheading{Parameters
}
72 \docparam{parent
}{Pointer to a parent window.
}
74 \docparam{id
}{Window identifier. If -
1, will automatically create an identifier.
}
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
80 \docparam{size
}{Window size. wxDefaultSize is (-
1, -
1) which indicates that wxSashWindows
81 should generate a default size for the window.
}
83 \docparam{style
}{Window style. For window styles, please see
\helpref{wxSashWindow
}{wxsashwindow
}.
}
85 \docparam{name
}{Window name.
}
87 \membersection{wxSashWindow::
\destruct{wxSashWindow
}}
89 \func{}{\destruct{wxSashWindow
}}{\void}
93 \membersection{wxSashWindow::GetSashVisible
}\label{wxsashwindowgetsashvisible
}
95 \constfunc{bool
}{GetSashVisible
}{\param{wxSashEdgePosition
}{edge
}}
97 Returns TRUE if a sash is visible on the given edge, FALSE otherwise.
99 \wxheading{Parameters
}
101 \docparam{edge
}{Edge. One of wxSASH
\_TOP, wxSASH
\_RIGHT, wxSASH
\_BOTTOM, wxSASH
\_LEFT.
}
105 \helpref{wxSashWindow::SetSashVisible
}{wxsashwindowsetsashvisible
}
107 \membersection{wxSashWindow::GetMaximumSizeX
}\label{wxsashwindowgetmaximumsizex
}
109 \constfunc{int
}{GetMaximumSizeX
}{\void}
111 Gets the maximum window size in the x direction.
113 \membersection{wxSashWindow::GetMaximumSizeY
}\label{wxsashwindowgetmaximumsizey
}
115 \constfunc{int
}{GetMaximumSizeY
}{\void}
117 Gets the maximum window size in the y direction.
119 \membersection{wxSashWindow::GetMinimumSizeX
}\label{wxsashwindowgetminimumsizex
}
121 \func{int
}{GetMinimumSizeX
}{\void}
123 Gets the minimum window size in the x direction.
125 \membersection{wxSashWindow::GetMinimumSizeY
}\label{wxsashwindowgetminimumsizey
}
127 \constfunc{int
}{GetMinimumSizeY
}{\param{int
}{ min
}}
129 Gets the minimum window size in the y direction.
131 \membersection{wxSashWindow::HasBorder
}\label{wxsashwindowhasborder
}
133 \constfunc{bool
}{HasBorder
}{\param{wxSashEdgePosition
}{edge
}}
135 Returns TRUE if the sash has a border, FALSE otherwise.
137 \wxheading{Parameters
}
139 \docparam{edge
}{Edge. One of wxSASH
\_TOP, wxSASH
\_RIGHT, wxSASH
\_BOTTOM, wxSASH
\_LEFT.
}
143 \helpref{wxSashWindow::SetSashBorder
}{wxsashwindowsetsashborder
}
145 \membersection{wxSashWindow::SetMaximumSizeX
}\label{wxsashwindowsetmaximumsizex
}
147 \func{void
}{SetMaximumSizeX
}{\param{int
}{ min
}}
149 Sets the maximum window size in the x direction.
151 \membersection{wxSashWindow::SetMaximumSizeY
}\label{wxsashwindowsetmaximumsizey
}
153 \func{void
}{SetMaximumSizeY
}{\param{int
}{ min
}}
155 Sets the maximum window size in the y direction.
157 \membersection{wxSashWindow::SetMinimumSizeX
}\label{wxsashwindowsetminimumsizex
}
159 \func{void
}{SetMinimumSizeX
}{\param{int
}{ min
}}
161 Sets the minimum window size in the x direction.
163 \membersection{wxSashWindow::SetMinimumSizeY
}\label{wxsashwindowsetminimumsizey
}
165 \func{void
}{SetMinimumSizeY
}{\param{int
}{ min
}}
167 Sets the minimum window size in the y direction.
169 \membersection{wxSashWindow::SetSashVisible
}\label{wxsashwindowsetsashvisible
}
171 \func{void
}{SetSashVisible
}{\param{wxSashEdgePosition
}{edge
},
\param{bool
}{ visible
}}
173 Call this function to make a sash visible or invisible on a particular edge.
175 \wxheading{Parameters
}
177 \docparam{edge
}{Edge to change. One of wxSASH
\_TOP, wxSASH
\_RIGHT, wxSASH
\_BOTTOM, wxSASH
\_LEFT.
}
179 \docparam{visible
}{TRUE to make the sash visible, FALSE to make it invisible.
}
183 \helpref{wxSashWindow::GetSashVisible
}{wxsashwindowgetsashvisible
}
185 // Set whether there's a border in this position
186 inline void SetSashBorder(wxSashEdgePosition edge, bool border)
{ m_sashes
[edge
].m_border = border;
}
188 \membersection{wxSashWindow::SetSashBorder
}\label{wxsashwindowsetsashborder
}
190 \func{void
}{SetSashBorder
}{\param{wxSashEdgePosition
}{edge
},
\param{bool
}{ hasBorder
}}
192 Call this function to give the sash a border, or remove the border.
194 \wxheading{Parameters
}
196 \docparam{edge
}{Edge to change. One of wxSASH
\_TOP, wxSASH
\_RIGHT, wxSASH
\_BOTTOM, wxSASH
\_LEFT.
}
198 \docparam{hasBorder
}{TRUE to give the sash a border visible, FALSE to remove it.
}
202 \helpref{wxSashWindow::HashBorder
}{wxsashwindowhasborder
}