]>
Commit | Line | Data |
---|---|---|
1 | \section{\class{wxSashEvent}}\label{wxsashevent} | |
2 | ||
3 | A sash event is sent when the sash of a \helpref{wxSashWindow}{wxsashwindow} has been | |
4 | dragged by the user. | |
5 | ||
6 | \wxheading{Derived from} | |
7 | ||
8 | \helpref{wxCommandEvent}{wxcommandevent}\\ | |
9 | \helpref{wxEvent}{wxevent}\\ | |
10 | \helpref{wxObject}{wxobject} | |
11 | ||
12 | \wxheading{Include files} | |
13 | ||
14 | <wx/sashwin.h> | |
15 | ||
16 | \wxheading{Library} | |
17 | ||
18 | \helpref{wxAdv}{librarieslist} | |
19 | ||
20 | \wxheading{Event table macros} | |
21 | ||
22 | To process an activate event, use these event handler macros to direct input to a member | |
23 | function that takes a wxSashEvent argument. | |
24 | ||
25 | \twocolwidtha{7cm}% | |
26 | \begin{twocollist}\itemsep=0pt | |
27 | \twocolitem{{\bf EVT\_SASH\_DRAGGED(id, func)}}{Process a wxEVT\_SASH\_DRAGGED event, | |
28 | when the user has finished dragging a sash.} | |
29 | \twocolitem{{\bf EVT\_SASH\_DRAGGED\_RANGE(id1, id2, func)}}{Process a wxEVT\_SASH\_DRAGGED\_RANGE event, | |
30 | when the user has finished dragging a sash. The event handler is called when windows with ids in the | |
31 | given range have their sashes dragged.} | |
32 | \end{twocollist} | |
33 | ||
34 | \wxheading{Data structures} | |
35 | ||
36 | {\small | |
37 | \begin{verbatim} | |
38 | enum wxSashDragStatus | |
39 | { | |
40 | wxSASH_STATUS_OK, | |
41 | wxSASH_STATUS_OUT_OF_RANGE | |
42 | }; | |
43 | \end{verbatim} | |
44 | } | |
45 | ||
46 | \wxheading{Remarks} | |
47 | ||
48 | When a sash belonging to a sash window is dragged by the user, and then released, | |
49 | this event is sent to the window, where it may be processed by an event table | |
50 | entry in a derived class, a plug-in event handler or an ancestor class. | |
51 | ||
52 | Note that the wxSashWindow doesn't change the window's size itself. It relies on the application's | |
53 | event handler to do that. This is because the application may have to handle other consequences | |
54 | of the resize, or it may wish to veto it altogether. The event handler should | |
55 | look at the drag rectangle: see \helpref{wxSashEvent::GetDragRect}{wxsasheventgetdragrect} to see | |
56 | what the new size of the window would be if the resize were to be applied. It should | |
57 | also call \helpref{wxSashEvent::GetDragStatus}{wxsasheventgetdragstatus} to see whether the | |
58 | drag was OK or out of the current allowed range. | |
59 | ||
60 | \wxheading{See also} | |
61 | ||
62 | \helpref{wxSashWindow}{wxsashwindow},\rtfsp | |
63 | \helpref{Event handling overview}{eventhandlingoverview} | |
64 | ||
65 | \latexignore{\rtfignore{\wxheading{Members}}} | |
66 | ||
67 | \membersection{wxSashEvent::wxSashEvent}\label{wxsasheventctor} | |
68 | ||
69 | \func{}{wxSashEvent}{\param{int }{id = 0}, \param{wxSashEdgePosition}{ edge = wxSASH\_NONE}} | |
70 | ||
71 | Constructor. | |
72 | ||
73 | \membersection{wxSashEvent::GetEdge}\label{wxsasheventgetedge} | |
74 | ||
75 | \constfunc{wxSashEdgePosition}{GetEdge}{\void} | |
76 | ||
77 | Returns the dragged edge. The return value is one of wxSASH\_TOP, wxSASH\_RIGHT, wxSASH\_BOTTOM, wxSASH\_LEFT. | |
78 | ||
79 | \membersection{wxSashEvent::GetDragRect}\label{wxsasheventgetdragrect} | |
80 | ||
81 | \constfunc{wxRect}{GetDragRect}{\void} | |
82 | ||
83 | Returns the rectangle representing the new size the window would be if the resize was applied. It is | |
84 | up to the application to set the window size if required. | |
85 | ||
86 | \membersection{wxSashEvent::GetDragStatus}\label{wxsasheventgetdragstatus} | |
87 | ||
88 | \constfunc{wxSashDragStatus}{GetDragStatus}{\void} | |
89 | ||
90 | Returns the status of the sash: one of wxSASH\_STATUS\_OK, wxSASH\_STATUS\_OUT\_OF\_RANGE. | |
91 | If the drag caused the notional bounding box of the window to flip over, for example, the drag will be out of rage. | |
92 | ||
93 |