bool ProcessWindowEvent(wxEvent& event)
{ return GetEventHandler()->ProcessEvent(event); }
+ // Call GetEventHandler()->ProcessEventLocally(): this should be used
+ // instead of calling ProcessEventLocally() directly on the window
+ // itself as this wouldn't take any pushed event handlers into account
+ // correctly
+ bool ProcessWindowEventLocally(wxEvent& event)
+ { return GetEventHandler()->ProcessEventLocally(event); }
+
// Process an event by calling GetEventHandler()->ProcessEvent() and
// handling any exceptions thrown by event handlers. It's mostly useful
// when processing wx events when called from C code (e.g. in GTK+
// The same holds for all other wxEvtHandler functions.
using wxEvtHandler::ProcessEvent;
+ using wxEvtHandler::ProcessEventLocally;
#if wxUSE_THREADS
using wxEvtHandler::ProcessThreadEvent;
#endif
// dialog units translations
// -------------------------
- wxPoint ConvertPixelsToDialog( const wxPoint& pt );
- wxPoint ConvertDialogToPixels( const wxPoint& pt );
- wxSize ConvertPixelsToDialog( const wxSize& sz )
+ wxPoint ConvertPixelsToDialog( const wxPoint& pt ) const;
+ wxPoint ConvertDialogToPixels( const wxPoint& pt ) const;
+ wxSize ConvertPixelsToDialog( const wxSize& sz ) const
{
wxPoint pt(ConvertPixelsToDialog(wxPoint(sz.x, sz.y)));
return wxSize(pt.x, pt.y);
}
- wxSize ConvertDialogToPixels( const wxSize& sz )
+ wxSize ConvertDialogToPixels( const wxSize& sz ) const
{
wxPoint pt(ConvertDialogToPixels(wxPoint(sz.x, sz.y)));
// simply return the id of the selected item or wxID_NONE without
// generating any events
- int GetPopupMenuSelectionFromUser(wxMenu& menu, const wxPoint& pos)
+ int GetPopupMenuSelectionFromUser(wxMenu& menu,
+ const wxPoint& pos = wxDefaultPosition)
{ return DoGetPopupMenuSelectionFromUser(menu, pos.x, pos.y); }
int GetPopupMenuSelectionFromUser(wxMenu& menu, int x, int y)
{ return DoGetPopupMenuSelectionFromUser(menu, x, y); }
// used only by Windows
virtual bool CanApplyThemeBorder() const { return true; }
+ // returns the main window of composite control; this is the window
+ // that FindFocus returns if the focus is in one of composite control's
+ // windows
+ virtual wxWindow *GetMainWindowOfCompositeControl()
+ { return (wxWindow*)this; }
+
protected:
// helper for the derived class Create() methods: the first overload, with
// validator parameter, should be used for child windows while the second
// to true
void SendDestroyEvent();
- // returns the main window of composite control; this is the window
- // that FindFocus returns if the focus is in one of composite control's
- // windows
- virtual wxWindow *GetMainWindowOfCompositeControl()
- { return (wxWindow*)this; }
-
// this method should be implemented to use operating system specific code
// to really enable/disable the widget, it will only be called when we
// really need to enable/disable window and so no additional checks on the
// of the left and the right border in the x component of the returned size
// and the sum of the heights of the top and bottom borders in the y one
//
- // NB: this is new/temporary API only implemented by wxMSW and wxUniv so
- // far and subject to change, don't use
- virtual wxSize DoGetBorderSize() const
- {
- wxFAIL_MSG( "must be overridden if called" );
-
- return wxDefaultSize;
- }
+ // NB: this is currently only implemented properly for wxMSW, wxGTK and
+ // wxUniv and doesn't behave correctly in the presence of scrollbars in
+ // the other ports
+ virtual wxSize DoGetBorderSize() const;
// move the window to the specified location and resize it: this is called
// from both DoSetSize() and DoSetClientSize() and would usually just
// explicitly disabled with SetAutoLayout(false)
void InternalOnSize(wxSizeEvent& event);
+ // base for dialog unit conversion, i.e. average character size
+ wxSize GetDlgUnitBase() const;
// the stack of windows which have captured the mouse
static struct WXDLLIMPEXP_FWD_CORE wxWindowNext *ms_winCaptureNext;