mode set by wxUpdateUIEvent::SetMode is @c wxUPDATE_UI_PROCESS_SPECIFIED.
@endExtraStyleTable
+ @beginEventEmissionTable
+ @event{EVT_ACTIVATE(id, func)}
+ Process a @c wxEVT_ACTIVATE event. See wxActivateEvent.
+ @event{EVT_CHILD_FOCUS(func)}
+ Process a @c wxEVT_CHILD_FOCUS event. See wxChildFocusEvent.
+ @event{EVT_CONTEXT_MENU(func)}
+ A right click (or other context menu command depending on platform) has been detected.
+ See wxContextMenuEvent.
+ @event{EVT_HELP(id, func)}
+ Process a @c wxEVT_HELP event. See wxHelpEvent.
+ @event{EVT_HELP_RANGE(id1, id2, func)}
+ Process a @c wxEVT_HELP event for a range of ids. See wxHelpEvent.
+ @event{EVT_DROP_FILES(func)}
+ Process a @c wxEVT_DROP_FILES event. See wxDropFilesEvent.
+ @event{EVT_ERASE_BACKGROUND(func)}
+ Process a @c wxEVT_ERASE_BACKGROUND event. See wxEraseEvent.
+ @event{EVT_SET_FOCUS(func)}
+ Process a @c wxEVT_SET_FOCUS event. See wxFocusEvent.
+ @event{EVT_KILL_FOCUS(func)}
+ Process a @c wxEVT_KILL_FOCUS event. See wxFocusEvent.
+ @event{EVT_IDLE(func)}
+ Process a @c wxEVT_IDLE event. See wxIdleEvent.
+ @event{EVT_JOY_*(func)}
+ Processes joystick events. See wxJoystickEvent.
+ @event{EVT_KEY_DOWN(func)}
+ Process a @c wxEVT_KEY_DOWN event (any key has been pressed).
+ See wxKeyEvent.
+ @event{EVT_KEY_UP(func)}
+ Process a @c wxEVT_KEY_UP event (any key has been released).
+ @event{EVT_CHAR(func)}
+ Process a @c wxEVT_CHAR event.
+ See wxKeyEvent.
+ @event{EVT_MOUSE_CAPTURE_LOST(func)}
+ Process a @c wxEVT_MOUSE_CAPTURE_LOST event. See wxMouseCaptureLostEvent.
+ @event{EVT_MOUSE_CAPTURE_CHANGED(func)}
+ Process a @c wxEVT_MOUSE_CAPTURE_CHANGED event. See wxMouseCaptureChangedEvent.
+ @event{EVT_MOUSE_*(func)}
+ See wxMouseEvent.
+ @event{EVT_PAINT(func)}
+ Process a @c wxEVT_PAINT event. See wxPaintEvent.
+ @event{EVT_POWER_*(func)}
+ The system power state changed. See wxPowerEvent.
+ @event{EVT_SCROLLWIN_*(func)}
+ Process scroll events. See wxScrollWinEvent.
+ @event{EVT_SET_CURSOR(func)}
+ Process a @c wxEVT_SET_CURSOR event. See wxSetCursorEvent.
+ @event{EVT_SHOW(func)}
+ Process a @c wxEVT_SHOW event. See wxShowEvent.
+ @event{EVT_SIZE(func)}
+ Process a @c wxEVT_SIZE event. See wxSizeEvent.
+ @event{EVT_SYS_COLOUR_CHANGED(func)}
+ Process a @c wxEVT_SYS_COLOUR_CHANGED event. See wxSysColourChangedEvent.
+ @endEventTable
+
@library{wxcore}
@category{miscwnd}
- @see @ref overview_events "Event handling overview",
- @ref overview_windowsizing "Window sizing overview"
+ @see @ref overview_events, @ref overview_windowsizing
*/
class wxWindow : public wxEvtHandler
{
@param font
Font to use instead of the current window font (optional).
*/
- virtual void GetTextExtent(const wxString& string, int* w, int* h,
- int* descent = NULL,
- int* externalLeading = NULL,
- const wxFont* font = NULL) const;
+ void GetTextExtent(const wxString& string,
+ int* w, int* h,
+ int* descent = NULL,
+ int* externalLeading = NULL,
+ const wxFont* font = NULL) const;
/**
Gets the dimensions of the string as it would be drawn on the
/**
Sets the window to have the given layout sizer.
+
The window will then own the object, and will take care of its deletion.
If an existing layout constraints object is already owned by the
- window, it will be deleted if the deleteOld parameter is @true.
+ window, it will be deleted if the @a deleteOld parameter is @true.
Note that this function will also call SetAutoLayout() implicitly with @true
- parameter if the @a sizer is non-@NULL and @false otherwise.
+ parameter if the @a sizer is non-@NULL and @false otherwise so that the
+ sizer will be effectively used to layout the window children whenever
+ it is resized.
@param sizer
The sizer to set. Pass @NULL to disassociate and conditionally delete
the window's sizer. See below.
@param deleteOld
If @true (the default), this will delete any pre-existing sizer.
- Pass @false if you wish to handle deleting the old sizer yourself.
+ Pass @false if you wish to handle deleting the old sizer yourself
+ but remember to do it yourself in this case to avoid memory leaks.
@remarks SetSizer enables and disables Layout automatically.
*/
/**
Determines whether the Layout() function will be called automatically
- when the window is resized. Please note that this only happens for the
- windows usually used to contain children, namely wxPanel and wxTopLevelWindow
- (and the classes deriving from them).
+ when the window is resized.
This method is called implicitly by SetSizer() but if you use SetConstraints()
you should call it manually or otherwise the window layout won't be correctly
updated when its size changes.
@param autoLayout
- Set this to @true if you wish the Layout() function to be
- called automatically when the window is resized
- (really happens only if you derive from wxPanel or wxTopLevelWindow).
+ Set this to @true if you wish the Layout() function to be called
+ automatically when the window is resized.
- @see SetConstraints()
+ @see SetSizer(), SetConstraints()
*/
void SetAutoLayout(bool autoLayout);