From 2e4df4bfaf214faac6d4c7519f4aab5b8c7fd287 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 31 Jan 2001 17:16:40 +0000 Subject: [PATCH] 1. made compilation with WXWIN_COMPATIBILITY_EVENT_TYPES really work 2. moved ~50% of the event types in their own headers/sources from event.h/cpp git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/calctrl.h | 23 +- include/wx/dialup.h | 11 +- include/wx/event.h | 737 ++++++++++++++++------------------ include/wx/generic/grid.h | 69 ++-- include/wx/generic/gridg.h | 18 +- include/wx/generic/laywin.h | 10 +- include/wx/generic/sashwin.h | 4 +- include/wx/generic/splitter.h | 8 +- include/wx/listctrl.h | 55 ++- include/wx/motif/tabctrl.h | 4 +- include/wx/msw/tabctrl.h | 4 +- include/wx/msw/taskbar.h | 14 +- include/wx/notebook.h | 21 +- include/wx/process.h | 18 +- include/wx/socket.h | 9 +- include/wx/spinbutt.h | 6 +- include/wx/spinctrl.h | 2 +- include/wx/splitter.h | 7 + include/wx/tabctrl.h | 5 + include/wx/timer.h | 2 +- include/wx/treebase.h | 59 ++- include/wx/wizard.h | 12 +- src/common/event.cpp | 329 +++++++-------- src/common/process.cpp | 2 + src/generic/calctrl.cpp | 11 + src/generic/grid.cpp | 30 +- src/generic/laywin.cpp | 4 +- src/generic/listctrl.cpp | 21 + src/generic/notebook.cpp | 16 +- src/generic/splitter.cpp | 5 + src/generic/treectlg.cpp | 23 ++ src/generic/wizard.cpp | 4 + src/gtk/notebook.cpp | 7 + src/gtk1/notebook.cpp | 7 + src/msw/dialup.cpp | 3 + src/msw/listctrl.cpp | 19 +- src/msw/notebook.cpp | 3 + src/msw/tabctrl.cpp | 3 + src/msw/treectrl.cpp | 23 ++ src/unix/dialup.cpp | 3 + 40 files changed, 869 insertions(+), 742 deletions(-) diff --git a/include/wx/calctrl.h b/include/wx/calctrl.h index 23540485f7..9e747ae652 100644 --- a/include/wx/calctrl.h +++ b/include/wx/calctrl.h @@ -151,16 +151,25 @@ private: #include "wx/generic/calctrl.h" // ---------------------------------------------------------------------------- -// calendar events macros +// calendar event types and macros for handling them // ---------------------------------------------------------------------------- +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_SEL_CHANGED, 950) + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DAY_CHANGED, 951) + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_MONTH_CHANGED, 952) + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_YEAR_CHANGED, 953) + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DOUBLECLICKED, 954) + DECLARE_EVENT_TYPE(wxEVT_CALENDAR_WEEKDAY_CLICKED, 955) +END_DECLARE_EVENT_TYPES() + typedef void (wxEvtHandler::*wxCalendarEventFunction)(wxCalendarEvent&); -#define EVT_CALENDAR(id, fn) wxEventTableEntry(wxEVT_CALENDAR_DOUBLECLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), -#define EVT_CALENDAR_SEL_CHANGED(id, fn) wxEventTableEntry(wxEVT_CALENDAR_SEL_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), -#define EVT_CALENDAR_DAY(id, fn) wxEventTableEntry(wxEVT_CALENDAR_DAY_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), -#define EVT_CALENDAR_MONTH(id, fn) wxEventTableEntry(wxEVT_CALENDAR_MONTH_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), -#define EVT_CALENDAR_YEAR(id, fn) wxEventTableEntry(wxEVT_CALENDAR_YEAR_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), -#define EVT_CALENDAR_WEEKDAY_CLICKED(id, fn) wxEventTableEntry(wxEVT_CALENDAR_WEEKDAY_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_DOUBLECLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR_SEL_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_SEL_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR_DAY(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_DAY_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR_MONTH(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_MONTH_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR_YEAR(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_YEAR_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), +#define EVT_CALENDAR_WEEKDAY_CLICKED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_WEEKDAY_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL), #endif // _WX_CALCTRL_H diff --git a/include/wx/dialup.h b/include/wx/dialup.h index dcbbd911fa..599abd2d0c 100644 --- a/include/wx/dialup.h +++ b/include/wx/dialup.h @@ -153,7 +153,7 @@ public: }; // ---------------------------------------------------------------------------- -// DIALUP events processing +// wxDialUpManager events // ---------------------------------------------------------------------------- // the event class for the dialup events @@ -179,11 +179,16 @@ public: // the type of dialup event handler function typedef void (wxEvtHandler::*wxDialUpEventFunction)(wxDialUpEvent&); +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED, 450) + DECLARE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED, 451) +END_DECLARE_EVENT_TYPES() + // macros to catch dialup events #define EVT_DIALUP_CONNECTED(func) \ - wxEventTableEntry( wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL), #define EVT_DIALUP_DISCONNECTED(func) \ - wxEventTableEntry( wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL), #endif // wxUSE_DIALUP_MANAGER diff --git a/include/wx/event.h b/include/wx/event.h index df4641fa56..abf5448de6 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -71,25 +71,32 @@ typedef int wxEventType; #define DECLARE_EVENT_TABLE_ENTRY(type, id, idLast, fn, obj) \ { type, id, idLast, fn, obj } +#define BEGIN_DECLARE_EVENT_TYPES() enum { +#define END_DECLARE_EVENT_TYPES() }; #define DECLARE_EVENT_TYPE(name, value) name = wxEVT_FIRST + value, +#define DEFINE_EVENT_TYPE(name) #else // !WXWIN_COMPATIBILITY_EVENT_TYPES #define DECLARE_EVENT_TABLE_ENTRY(type, id, idLast, fn, obj) \ wxEventTableEntry(type, id, idLast, fn, obj) +#define BEGIN_DECLARE_EVENT_TYPES() +#define END_DECLARE_EVENT_TYPES() #define DECLARE_EVENT_TYPE(name, value) extern wxEventType name; +#define DEFINE_EVENT_TYPE(name) wxEventType name = wxNewEventType(); // generate a new unique event type extern WXDLLEXPORT wxEventType wxNewEventType(); #endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES +BEGIN_DECLARE_EVENT_TYPES() + #if WXWIN_COMPATIBILITY_EVENT_TYPES -enum -{ wxEVT_NULL = 0, wxEVT_FIRST = 10000, + wxEVT_USER_FIRST = wxEVT_FIRST + 2000, #else // !WXWIN_COMPATIBILITY_EVENT_TYPES // it is important to still have these as constants to avoid // initialization order related problems @@ -98,226 +105,148 @@ enum const wxEventType wxEVT_USER_FIRST = wxEVT_FIRST + 2000; #endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES -DECLARE_EVENT_TYPE(wxEVT_COMMAND_BUTTON_CLICKED, 1) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHECKBOX_CLICKED, 2) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHOICE_SELECTED, 3) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_SELECTED, 4) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, 5) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, 6) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TEXT_UPDATED, 7) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TEXT_ENTER, 8) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_MENU_SELECTED, 9) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SLIDER_UPDATED, 10) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_RADIOBOX_SELECTED, 11) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_RADIOBUTTON_SELECTED, 12) - -// wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use -// wxEVT_SCROLL... events - -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SCROLLBAR_UPDATED, 13) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_VLBOX_SELECTED, 14) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_COMBOBOX_SELECTED, 15) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TOOL_RCLICKED, 16) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TOOL_ENTER, 17) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPINCTRL_UPDATED, 18) - - // Sockets and timers send events, too -DECLARE_EVENT_TYPE(wxEVT_SOCKET, 50) -DECLARE_EVENT_TYPE(wxEVT_TIMER , 80) - - // Mouse event types -DECLARE_EVENT_TYPE(wxEVT_LEFT_DOWN, 100) -DECLARE_EVENT_TYPE(wxEVT_LEFT_UP, 101) -DECLARE_EVENT_TYPE(wxEVT_MIDDLE_DOWN, 102) -DECLARE_EVENT_TYPE(wxEVT_MIDDLE_UP, 103) -DECLARE_EVENT_TYPE(wxEVT_RIGHT_DOWN, 104) -DECLARE_EVENT_TYPE(wxEVT_RIGHT_UP, 105) -DECLARE_EVENT_TYPE(wxEVT_MOTION, 106) -DECLARE_EVENT_TYPE(wxEVT_ENTER_WINDOW, 107) -DECLARE_EVENT_TYPE(wxEVT_LEAVE_WINDOW, 108) -DECLARE_EVENT_TYPE(wxEVT_LEFT_DCLICK, 109) -DECLARE_EVENT_TYPE(wxEVT_MIDDLE_DCLICK, 110) -DECLARE_EVENT_TYPE(wxEVT_RIGHT_DCLICK, 111) -DECLARE_EVENT_TYPE(wxEVT_SET_FOCUS, 112) -DECLARE_EVENT_TYPE(wxEVT_KILL_FOCUS, 113) - - // Non-client mouse events -DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_DOWN, 200) -DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_UP, 201) -DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_DOWN, 202) -DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_UP, 203) -DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_DOWN, 204) -DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_UP, 205) -DECLARE_EVENT_TYPE(wxEVT_NC_MOTION, 206) -DECLARE_EVENT_TYPE(wxEVT_NC_ENTER_WINDOW, 207) -DECLARE_EVENT_TYPE(wxEVT_NC_LEAVE_WINDOW, 208) -DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_DCLICK, 209) -DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_DCLICK, 210) -DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_DCLICK, 211) - - // Character input event type -DECLARE_EVENT_TYPE(wxEVT_CHAR, 212) -DECLARE_EVENT_TYPE(wxEVT_CHAR_HOOK, 213) -DECLARE_EVENT_TYPE(wxEVT_NAVIGATION_KEY, 214) -DECLARE_EVENT_TYPE(wxEVT_KEY_DOWN, 215) -DECLARE_EVENT_TYPE(wxEVT_KEY_UP, 216) - - // Set cursor event -DECLARE_EVENT_TYPE(wxEVT_SET_CURSOR, 230) - - // wxScrollbar and wxSlider event identifiers -DECLARE_EVENT_TYPE(wxEVT_SCROLL_TOP, 300) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_BOTTOM, 301) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_LINEUP, 302) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_LINEDOWN, 303) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_PAGEUP, 304) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_PAGEDOWN, 305) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_THUMBTRACK, 306) -DECLARE_EVENT_TYPE(wxEVT_SCROLL_THUMBRELEASE, 307) - - // Scroll events from wxWindow -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_TOP, 320) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_BOTTOM, 321) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEUP, 322) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEDOWN, 323) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEUP, 324) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEDOWN, 325) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBTRACK, 326) -DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBRELEASE, 327) - - // System events -DECLARE_EVENT_TYPE(wxEVT_SIZE, 400) -DECLARE_EVENT_TYPE(wxEVT_MOVE, 401) -DECLARE_EVENT_TYPE(wxEVT_CLOSE_WINDOW, 402) -DECLARE_EVENT_TYPE(wxEVT_END_SESSION, 403) -DECLARE_EVENT_TYPE(wxEVT_QUERY_END_SESSION, 404) -DECLARE_EVENT_TYPE(wxEVT_ACTIVATE_APP, 405) -DECLARE_EVENT_TYPE(wxEVT_POWER, 406) -DECLARE_EVENT_TYPE(wxEVT_ACTIVATE, 409) -DECLARE_EVENT_TYPE(wxEVT_CREATE, 410) -DECLARE_EVENT_TYPE(wxEVT_DESTROY, 411) -DECLARE_EVENT_TYPE(wxEVT_SHOW, 412) -DECLARE_EVENT_TYPE(wxEVT_ICONIZE, 413) -DECLARE_EVENT_TYPE(wxEVT_MAXIMIZE, 414) -DECLARE_EVENT_TYPE(wxEVT_MOUSE_CAPTURE_CHANGED, 415) -DECLARE_EVENT_TYPE(wxEVT_PAINT, 416) -DECLARE_EVENT_TYPE(wxEVT_ERASE_BACKGROUND, 417) -DECLARE_EVENT_TYPE(wxEVT_NC_PAINT, 418) -DECLARE_EVENT_TYPE(wxEVT_PAINT_ICON, 419) -DECLARE_EVENT_TYPE(wxEVT_MENU_CHAR, 420) -DECLARE_EVENT_TYPE(wxEVT_MENU_INIT, 421) -DECLARE_EVENT_TYPE(wxEVT_MENU_HIGHLIGHT, 422) -DECLARE_EVENT_TYPE(wxEVT_POPUP_MENU_INIT, 423) -DECLARE_EVENT_TYPE(wxEVT_CONTEXT_MENU, 424) -DECLARE_EVENT_TYPE(wxEVT_SYS_COLOUR_CHANGED, 425) -DECLARE_EVENT_TYPE(wxEVT_SETTING_CHANGED, 426) -DECLARE_EVENT_TYPE(wxEVT_QUERY_NEW_PALETTE, 427) -DECLARE_EVENT_TYPE(wxEVT_PALETTE_CHANGED, 428) -DECLARE_EVENT_TYPE(wxEVT_JOY_BUTTON_DOWN, 429) -DECLARE_EVENT_TYPE(wxEVT_JOY_BUTTON_UP, 430) -DECLARE_EVENT_TYPE(wxEVT_JOY_MOVE, 431) -DECLARE_EVENT_TYPE(wxEVT_JOY_ZMOVE, 432) -DECLARE_EVENT_TYPE(wxEVT_DROP_FILES, 433) -DECLARE_EVENT_TYPE(wxEVT_DRAW_ITEM, 434) -DECLARE_EVENT_TYPE(wxEVT_MEASURE_ITEM, 435) -DECLARE_EVENT_TYPE(wxEVT_COMPARE_ITEM, 436) -DECLARE_EVENT_TYPE(wxEVT_INIT_DIALOG, 437) -DECLARE_EVENT_TYPE(wxEVT_IDLE, 438) -DECLARE_EVENT_TYPE(wxEVT_UPDATE_UI, 439) - - // System misc. -DECLARE_EVENT_TYPE(wxEVT_END_PROCESS, 440) - - // Dial up events -DECLARE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED, 450) -DECLARE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED, 451) - - // Generic command events - // Note: a click is a higher-level event than button down/up -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LEFT_CLICK, 500) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LEFT_DCLICK, 501) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_CLICK, 502) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_DCLICK, 503) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SET_FOCUS, 504) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_KILL_FOCUS, 505) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_ENTER, 506) - - // Tree control event types -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_DRAG, 600) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_RDRAG, 601) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT, 602) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_LABEL_EDIT, 603) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_DELETE_ITEM, 604) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_GET_INFO, 605) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SET_INFO, 606) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDED, 607) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDING, 608) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSED, 609) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSING, 610) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGED, 611) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGING, 612) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_KEY_DOWN, 613) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_ACTIVATED, 614) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK, 615) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK, 616) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_DRAG, 617) - - // List control event types -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_DRAG, 700) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_RDRAG, 701) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT, 702) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_END_LABEL_EDIT, 703) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ITEM, 704) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS, 705) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_GET_INFO, 706) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_SET_INFO, 707) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_SELECTED, 708) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_DESELECTED, 709) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_KEY_DOWN, 710) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_INSERT_ITEM, 711) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_COL_CLICK, 712) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, 713) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, 714) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_ACTIVATED, 715) - - // Tab and notebook control event types -#if defined(__BORLANDC__) && defined(__WIN16__) - // For 16-bit BC++, these 2 would be identical otherwise (truncated) - #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED wxEVT_COMMAND_NB_PAGE_CHANGED - #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING wxEVT_COMMAND_NB_PAGE_CHANGING -#endif - -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGED, 800) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGING, 801) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, 802) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, 803) - - // Splitter events -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, 850) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING, 851) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, 852) -DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_UNSPLIT, 853) - - // Wizard events -DECLARE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGED, 900) -DECLARE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGING, 901) -DECLARE_EVENT_TYPE(wxEVT_WIZARD_CANCEL, 902) - - // Calendar events -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_SEL_CHANGED, 950) -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DAY_CHANGED, 951) -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_MONTH_CHANGED, 952) -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_YEAR_CHANGED, 953) -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DOUBLECLICKED, 954) -DECLARE_EVENT_TYPE(wxEVT_CALENDAR_WEEKDAY_CLICKED, 955) - - // Help events -DECLARE_EVENT_TYPE(wxEVT_HELP, 1050) -DECLARE_EVENT_TYPE(wxEVT_DETAILED_HELP, 1051) - -#if WXWIN_COMPATIBILITY_EVENT_TYPES -}; -#endif // WXWIN_COMPATIBILITY_EVENT_TYPES + DECLARE_EVENT_TYPE(wxEVT_COMMAND_BUTTON_CLICKED, 1) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHECKBOX_CLICKED, 2) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHOICE_SELECTED, 3) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_SELECTED, 4) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, 5) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, 6) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TEXT_UPDATED, 7) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TEXT_ENTER, 8) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_MENU_SELECTED, 9) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SLIDER_UPDATED, 10) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_RADIOBOX_SELECTED, 11) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_RADIOBUTTON_SELECTED, 12) + + // wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use + // wxEVT_SCROLL... events + + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SCROLLBAR_UPDATED, 13) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_VLBOX_SELECTED, 14) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_COMBOBOX_SELECTED, 15) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TOOL_RCLICKED, 16) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TOOL_ENTER, 17) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPINCTRL_UPDATED, 18) + + // Sockets and timers send events, too + DECLARE_EVENT_TYPE(wxEVT_SOCKET, 50) + DECLARE_EVENT_TYPE(wxEVT_TIMER , 80) + + // Mouse event types + DECLARE_EVENT_TYPE(wxEVT_LEFT_DOWN, 100) + DECLARE_EVENT_TYPE(wxEVT_LEFT_UP, 101) + DECLARE_EVENT_TYPE(wxEVT_MIDDLE_DOWN, 102) + DECLARE_EVENT_TYPE(wxEVT_MIDDLE_UP, 103) + DECLARE_EVENT_TYPE(wxEVT_RIGHT_DOWN, 104) + DECLARE_EVENT_TYPE(wxEVT_RIGHT_UP, 105) + DECLARE_EVENT_TYPE(wxEVT_MOTION, 106) + DECLARE_EVENT_TYPE(wxEVT_ENTER_WINDOW, 107) + DECLARE_EVENT_TYPE(wxEVT_LEAVE_WINDOW, 108) + DECLARE_EVENT_TYPE(wxEVT_LEFT_DCLICK, 109) + DECLARE_EVENT_TYPE(wxEVT_MIDDLE_DCLICK, 110) + DECLARE_EVENT_TYPE(wxEVT_RIGHT_DCLICK, 111) + DECLARE_EVENT_TYPE(wxEVT_SET_FOCUS, 112) + DECLARE_EVENT_TYPE(wxEVT_KILL_FOCUS, 113) + + // Non-client mouse events + DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_DOWN, 200) + DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_UP, 201) + DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_DOWN, 202) + DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_UP, 203) + DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_DOWN, 204) + DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_UP, 205) + DECLARE_EVENT_TYPE(wxEVT_NC_MOTION, 206) + DECLARE_EVENT_TYPE(wxEVT_NC_ENTER_WINDOW, 207) + DECLARE_EVENT_TYPE(wxEVT_NC_LEAVE_WINDOW, 208) + DECLARE_EVENT_TYPE(wxEVT_NC_LEFT_DCLICK, 209) + DECLARE_EVENT_TYPE(wxEVT_NC_MIDDLE_DCLICK, 210) + DECLARE_EVENT_TYPE(wxEVT_NC_RIGHT_DCLICK, 211) + + // Character input event type + DECLARE_EVENT_TYPE(wxEVT_CHAR, 212) + DECLARE_EVENT_TYPE(wxEVT_CHAR_HOOK, 213) + DECLARE_EVENT_TYPE(wxEVT_NAVIGATION_KEY, 214) + DECLARE_EVENT_TYPE(wxEVT_KEY_DOWN, 215) + DECLARE_EVENT_TYPE(wxEVT_KEY_UP, 216) + + // Set cursor event + DECLARE_EVENT_TYPE(wxEVT_SET_CURSOR, 230) + + // wxScrollbar and wxSlider event identifiers + DECLARE_EVENT_TYPE(wxEVT_SCROLL_TOP, 300) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_BOTTOM, 301) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_LINEUP, 302) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_LINEDOWN, 303) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_PAGEUP, 304) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_PAGEDOWN, 305) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_THUMBTRACK, 306) + DECLARE_EVENT_TYPE(wxEVT_SCROLL_THUMBRELEASE, 307) + + // Scroll events from wxWindow + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_TOP, 320) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_BOTTOM, 321) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEUP, 322) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEDOWN, 323) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEUP, 324) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEDOWN, 325) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBTRACK, 326) + DECLARE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBRELEASE, 327) + + // System events + DECLARE_EVENT_TYPE(wxEVT_SIZE, 400) + DECLARE_EVENT_TYPE(wxEVT_MOVE, 401) + DECLARE_EVENT_TYPE(wxEVT_CLOSE_WINDOW, 402) + DECLARE_EVENT_TYPE(wxEVT_END_SESSION, 403) + DECLARE_EVENT_TYPE(wxEVT_QUERY_END_SESSION, 404) + DECLARE_EVENT_TYPE(wxEVT_ACTIVATE_APP, 405) + DECLARE_EVENT_TYPE(wxEVT_POWER, 406) + DECLARE_EVENT_TYPE(wxEVT_ACTIVATE, 409) + DECLARE_EVENT_TYPE(wxEVT_CREATE, 410) + DECLARE_EVENT_TYPE(wxEVT_DESTROY, 411) + DECLARE_EVENT_TYPE(wxEVT_SHOW, 412) + DECLARE_EVENT_TYPE(wxEVT_ICONIZE, 413) + DECLARE_EVENT_TYPE(wxEVT_MAXIMIZE, 414) + DECLARE_EVENT_TYPE(wxEVT_MOUSE_CAPTURE_CHANGED, 415) + DECLARE_EVENT_TYPE(wxEVT_PAINT, 416) + DECLARE_EVENT_TYPE(wxEVT_ERASE_BACKGROUND, 417) + DECLARE_EVENT_TYPE(wxEVT_NC_PAINT, 418) + DECLARE_EVENT_TYPE(wxEVT_PAINT_ICON, 419) + DECLARE_EVENT_TYPE(wxEVT_MENU_CHAR, 420) + DECLARE_EVENT_TYPE(wxEVT_MENU_INIT, 421) + DECLARE_EVENT_TYPE(wxEVT_MENU_HIGHLIGHT, 422) + DECLARE_EVENT_TYPE(wxEVT_POPUP_MENU_INIT, 423) + DECLARE_EVENT_TYPE(wxEVT_CONTEXT_MENU, 424) + DECLARE_EVENT_TYPE(wxEVT_SYS_COLOUR_CHANGED, 425) + DECLARE_EVENT_TYPE(wxEVT_SETTING_CHANGED, 426) + DECLARE_EVENT_TYPE(wxEVT_QUERY_NEW_PALETTE, 427) + DECLARE_EVENT_TYPE(wxEVT_PALETTE_CHANGED, 428) + DECLARE_EVENT_TYPE(wxEVT_JOY_BUTTON_DOWN, 429) + DECLARE_EVENT_TYPE(wxEVT_JOY_BUTTON_UP, 430) + DECLARE_EVENT_TYPE(wxEVT_JOY_MOVE, 431) + DECLARE_EVENT_TYPE(wxEVT_JOY_ZMOVE, 432) + DECLARE_EVENT_TYPE(wxEVT_DROP_FILES, 433) + DECLARE_EVENT_TYPE(wxEVT_DRAW_ITEM, 434) + DECLARE_EVENT_TYPE(wxEVT_MEASURE_ITEM, 435) + DECLARE_EVENT_TYPE(wxEVT_COMPARE_ITEM, 436) + DECLARE_EVENT_TYPE(wxEVT_INIT_DIALOG, 437) + DECLARE_EVENT_TYPE(wxEVT_IDLE, 438) + DECLARE_EVENT_TYPE(wxEVT_UPDATE_UI, 439) + + // Generic command events + // Note: a click is a higher-level event than button down/up + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LEFT_CLICK, 500) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LEFT_DCLICK, 501) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_CLICK, 502) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_DCLICK, 503) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SET_FOCUS, 504) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_KILL_FOCUS, 505) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_ENTER, 506) + + // Help events + DECLARE_EVENT_TYPE(wxEVT_HELP, 1050) + DECLARE_EVENT_TYPE(wxEVT_DETAILED_HELP, 1051) + +END_DECLARE_EVENT_TYPES() // these 2 events are the same #define wxEVT_COMMAND_TOOL_CLICKED wxEVT_COMMAND_MENU_SELECTED @@ -1508,14 +1437,29 @@ protected: typedef void (wxObject::*wxObjectEventFunction)(wxEvent&); +// we can't have ctors nor base struct in backwards compatibility mode or +// otherwise we won't be able to initialize the objects with an agregate, so +// we have to keep both versions +#if WXWIN_COMPATIBILITY_EVENT_TYPES + +struct WXDLLEXPORT wxEventTableEntry +{ + // For some reason, this can't be wxEventType, or VC++ complains. + int m_eventType; // main event type + int m_id; // control/menu/toolbar id + int m_lastId; // used for ranges of ids + wxObjectEventFunction m_fn; // function to call: not wxEventFunction, + // because of dependency problems + + wxObject* m_callbackUserData; +}; + +#else // !WXWIN_COMPATIBILITY_EVENT_TYPES + // struct containing the members common to static and dynamic event tables // entries struct WXDLLEXPORT wxEventTableEntryBase { - // provide default ctors for everything in backwards compatibility mode -#if WXWIN_COMPATIBILITY_EVENT_TYPES - wxEventTableEntryBase() { } -#else // !WXWIN_COMPATIBILITY_EVENT_TYPES wxEventTableEntryBase(int id, int idLast, wxObjectEventFunction fn, wxObject *data) { @@ -1524,7 +1468,6 @@ struct WXDLLEXPORT wxEventTableEntryBase m_fn = fn; m_callbackUserData = data; } -#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES // the range of ids for this entry: if m_lastId == -1, the range consists // only of m_id, otherwise it is m_id..m_lastId inclusive @@ -1540,16 +1483,13 @@ struct WXDLLEXPORT wxEventTableEntryBase // an entry from a static event table struct WXDLLEXPORT wxEventTableEntry : public wxEventTableEntryBase { -#if WXWIN_COMPATIBILITY_EVENT_TYPES - wxEventTableEntry() { } -#else // !WXWIN_COMPATIBILITY_EVENT_TYPES + int m_eventType; wxEventTableEntry(const int& evType, int id, int idLast, wxObjectEventFunction fn, wxObject *data) : wxEventTableEntryBase(id, idLast, fn, data), m_eventType(evType) { } -#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES // the reference to event type: this allows us to not care about the // (undefined) order in which the event table entries and the event types @@ -1563,16 +1503,12 @@ struct WXDLLEXPORT wxEventTableEntry : public wxEventTableEntryBase // an entry used in dynamic event table managed by wxEvtHandler::Connect() struct WXDLLEXPORT wxDynamicEventTableEntry : public wxEventTableEntryBase { -#if WXWIN_COMPATIBILITY_EVENT_TYPES - wxDynamicEventTableEntry() { } -#else // !WXWIN_COMPATIBILITY_EVENT_TYPES wxDynamicEventTableEntry(int evType, int id, int idLast, wxObjectEventFunction fn, wxObject *data) : wxEventTableEntryBase(id, idLast, fn, data) { m_eventType = evType; } -#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES // not a reference here as we can't keep a reference to a temporary int // created to wrap the constant value typically passed to Connect() - nor @@ -1580,6 +1516,11 @@ struct WXDLLEXPORT wxDynamicEventTableEntry : public wxEventTableEntryBase int m_eventType; }; +#endif // !WXWIN_COMPATIBILITY_EVENT_TYPES + +// ---------------------------------------------------------------------------- +// wxEventTable: an array of event entries terminated with {0, 0, 0, 0, 0} +// ---------------------------------------------------------------------------- struct WXDLLEXPORT wxEventTable { const wxEventTable *baseTable; // base event table (next in chain) @@ -1742,227 +1683,227 @@ typedef void (wxEvtHandler::*wxHelpEventFunction)(wxHelpEvent&); // (use &) or the compiler crashes... #define DECLARE_EVENT_TABLE() \ -private:\ - static const wxEventTableEntry sm_eventTableEntries[];\ -protected:\ - static const wxEventTable sm_eventTable;\ + private: \ + static const wxEventTableEntry sm_eventTableEntries[]; \ + protected: \ + static const wxEventTable sm_eventTable; \ virtual const wxEventTable* GetEventTable() const; #define BEGIN_EVENT_TABLE(theClass, baseClass) \ -const wxEventTable *theClass::GetEventTable() const { return &theClass::sm_eventTable; }\ -const wxEventTable theClass::sm_eventTable =\ - { &baseClass::sm_eventTable, &theClass::sm_eventTableEntries[0] };\ -const wxEventTableEntry theClass::sm_eventTableEntries[] = { \ + const wxEventTable *theClass::GetEventTable() const \ + { return &theClass::sm_eventTable; } \ + const wxEventTable theClass::sm_eventTable = \ + { &baseClass::sm_eventTable, &theClass::sm_eventTableEntries[0] }; \ + const wxEventTableEntry theClass::sm_eventTableEntries[] = { \ -#define END_EVENT_TABLE() \ - wxEventTableEntry( 0, 0, 0, 0, 0 ) }; +#define END_EVENT_TABLE() DECLARE_EVENT_TABLE_ENTRY( 0, 0, 0, 0, 0 ) }; /* * Event table macros */ // Generic events -#define EVT_CUSTOM(event, id, func) wxEventTableEntry( event, id, -1, (wxObjectEventFunction) (wxEventFunction) & func, (wxObject *) NULL ), -#define EVT_CUSTOM_RANGE(event, id1, id2, func) wxEventTableEntry( event, id1, id2, (wxObjectEventFunction) (wxEventFunction) & func, (wxObject *) NULL ), +#define EVT_CUSTOM(event, id, func) DECLARE_EVENT_TABLE_ENTRY( event, id, -1, (wxObjectEventFunction) (wxEventFunction) & func, (wxObject *) NULL ), +#define EVT_CUSTOM_RANGE(event, id1, id2, func) DECLARE_EVENT_TABLE_ENTRY( event, id1, id2, (wxObjectEventFunction) (wxEventFunction) & func, (wxObject *) NULL ), // Miscellaneous -#define EVT_SIZE(func) wxEventTableEntry( wxEVT_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSizeEventFunction) & func, (wxObject *) NULL ), -#define EVT_MOVE(func) wxEventTableEntry( wxEVT_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMoveEventFunction) & func, (wxObject *) NULL ), -#define EVT_CLOSE(func) wxEventTableEntry( wxEVT_CLOSE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), -#define EVT_END_SESSION(func) wxEventTableEntry( wxEVT_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), -#define EVT_QUERY_END_SESSION(func) wxEventTableEntry( wxEVT_QUERY_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), -#define EVT_PAINT(func) wxEventTableEntry( wxEVT_PAINT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxPaintEventFunction) & func, (wxObject *) NULL ), -#define EVT_ERASE_BACKGROUND(func) wxEventTableEntry( wxEVT_ERASE_BACKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxEraseEventFunction) & func, (wxObject *) NULL ), -#define EVT_CHAR(func) wxEventTableEntry( wxEVT_CHAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), -#define EVT_KEY_DOWN(func) wxEventTableEntry( wxEVT_KEY_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), -#define EVT_KEY_UP(func) wxEventTableEntry( wxEVT_KEY_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), -#define EVT_CHAR_HOOK(func) wxEventTableEntry( wxEVT_CHAR_HOOK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, NULL ), -#define EVT_MENU_HIGHLIGHT(id, func) wxEventTableEntry( wxEVT_MENU_HIGHLIGHT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxMenuEventFunction) & func, (wxObject *) NULL ), -#define EVT_MENU_HIGHLIGHT_ALL(func) wxEventTableEntry( wxEVT_MENU_HIGHLIGHT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMenuEventFunction) & func, (wxObject *) NULL ), -#define EVT_SET_FOCUS(func) wxEventTableEntry( wxEVT_SET_FOCUS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxFocusEventFunction) & func, (wxObject *) NULL ), -#define EVT_KILL_FOCUS(func) wxEventTableEntry( wxEVT_KILL_FOCUS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxFocusEventFunction) & func, (wxObject *) NULL ), -#define EVT_ACTIVATE(func) wxEventTableEntry( wxEVT_ACTIVATE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxActivateEventFunction) & func, (wxObject *) NULL ), -#define EVT_ACTIVATE_APP(func) wxEventTableEntry( wxEVT_ACTIVATE_APP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxActivateEventFunction) & func, (wxObject *) NULL ), -#define EVT_END_SESSION(func) wxEventTableEntry( wxEVT_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), -#define EVT_QUERY_END_SESSION(func) wxEventTableEntry( wxEVT_QUERY_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), -#define EVT_DROP_FILES(func) wxEventTableEntry( wxEVT_DROP_FILES, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDropFilesEventFunction) & func, (wxObject *) NULL ), -#define EVT_INIT_DIALOG(func) wxEventTableEntry( wxEVT_INIT_DIALOG, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxInitDialogEventFunction) & func, (wxObject *) NULL ), -#define EVT_SYS_COLOUR_CHANGED(func) wxEventTableEntry( wxEVT_SYS_COLOUR_CHANGED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSysColourChangedFunction) & func, (wxObject *) NULL ), -#define EVT_SHOW(func) wxEventTableEntry( wxEVT_SHOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxShowEventFunction) & func, (wxObject *) NULL ), -#define EVT_MAXIMIZE(func) wxEventTableEntry( wxEVT_MAXIMIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMaximizeEventFunction) & func, (wxObject *) NULL ), -#define EVT_ICONIZE(func) wxEventTableEntry( wxEVT_ICONIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIconizeEventFunction) & func, (wxObject *) NULL ), -#define EVT_NAVIGATION_KEY(func) wxEventTableEntry( wxEVT_NAVIGATION_KEY, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxNavigationKeyEventFunction) & func, (wxObject *) NULL ), -#define EVT_PALETTE_CHANGED(func) wxEventTableEntry( wxEVT_PALETTE_CHANGED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxPaletteChangedEventFunction) & func, (wxObject *) NULL ), -#define EVT_QUERY_NEW_PALETTE(func) wxEventTableEntry( wxEVT_QUERY_NEW_PALETTE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryNewPaletteEventFunction) & func, (wxObject *) NULL ), -#define EVT_WINDOW_CREATE(func) wxEventTableEntry( wxEVT_CREATE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxWindowCreateEventFunction) & func, (wxObject *) NULL ), -#define EVT_WINDOW_DESTROY(func) wxEventTableEntry( wxEVT_DESTROY, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxWindowDestroyEventFunction) & func, (wxObject *) NULL ), -#define EVT_SET_CURSOR(func) wxEventTableEntry( wxEVT_SET_CURSOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSetCursorEventFunction) & func, (wxObject *) NULL ), +#define EVT_SIZE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSizeEventFunction) & func, (wxObject *) NULL ), +#define EVT_MOVE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMoveEventFunction) & func, (wxObject *) NULL ), +#define EVT_CLOSE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_CLOSE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), +#define EVT_END_SESSION(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), +#define EVT_QUERY_END_SESSION(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_QUERY_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), +#define EVT_PAINT(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_PAINT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxPaintEventFunction) & func, (wxObject *) NULL ), +#define EVT_ERASE_BACKGROUND(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_ERASE_BACKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxEraseEventFunction) & func, (wxObject *) NULL ), +#define EVT_CHAR(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_CHAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), +#define EVT_KEY_DOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_KEY_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), +#define EVT_KEY_UP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_KEY_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, (wxObject *) NULL ), +#define EVT_CHAR_HOOK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_CHAR_HOOK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCharEventFunction) & func, NULL ), +#define EVT_MENU_HIGHLIGHT(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MENU_HIGHLIGHT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxMenuEventFunction) & func, (wxObject *) NULL ), +#define EVT_MENU_HIGHLIGHT_ALL(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MENU_HIGHLIGHT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMenuEventFunction) & func, (wxObject *) NULL ), +#define EVT_SET_FOCUS(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SET_FOCUS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxFocusEventFunction) & func, (wxObject *) NULL ), +#define EVT_KILL_FOCUS(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_KILL_FOCUS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxFocusEventFunction) & func, (wxObject *) NULL ), +#define EVT_ACTIVATE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_ACTIVATE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxActivateEventFunction) & func, (wxObject *) NULL ), +#define EVT_ACTIVATE_APP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_ACTIVATE_APP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxActivateEventFunction) & func, (wxObject *) NULL ), +#define EVT_END_SESSION(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), +#define EVT_QUERY_END_SESSION(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_QUERY_END_SESSION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCloseEventFunction) & func, (wxObject *) NULL ), +#define EVT_DROP_FILES(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_DROP_FILES, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDropFilesEventFunction) & func, (wxObject *) NULL ), +#define EVT_INIT_DIALOG(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_INIT_DIALOG, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxInitDialogEventFunction) & func, (wxObject *) NULL ), +#define EVT_SYS_COLOUR_CHANGED(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SYS_COLOUR_CHANGED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSysColourChangedFunction) & func, (wxObject *) NULL ), +#define EVT_SHOW(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SHOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxShowEventFunction) & func, (wxObject *) NULL ), +#define EVT_MAXIMIZE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MAXIMIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMaximizeEventFunction) & func, (wxObject *) NULL ), +#define EVT_ICONIZE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_ICONIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIconizeEventFunction) & func, (wxObject *) NULL ), +#define EVT_NAVIGATION_KEY(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_NAVIGATION_KEY, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxNavigationKeyEventFunction) & func, (wxObject *) NULL ), +#define EVT_PALETTE_CHANGED(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_PALETTE_CHANGED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxPaletteChangedEventFunction) & func, (wxObject *) NULL ), +#define EVT_QUERY_NEW_PALETTE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_QUERY_NEW_PALETTE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryNewPaletteEventFunction) & func, (wxObject *) NULL ), +#define EVT_WINDOW_CREATE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_CREATE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxWindowCreateEventFunction) & func, (wxObject *) NULL ), +#define EVT_WINDOW_DESTROY(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_DESTROY, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxWindowDestroyEventFunction) & func, (wxObject *) NULL ), +#define EVT_SET_CURSOR(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SET_CURSOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxSetCursorEventFunction) & func, (wxObject *) NULL ), // Mouse events -#define EVT_LEFT_DOWN(func) wxEventTableEntry( wxEVT_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_LEFT_UP(func) wxEventTableEntry( wxEVT_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_MIDDLE_DOWN(func) wxEventTableEntry( wxEVT_MIDDLE_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_MIDDLE_UP(func) wxEventTableEntry( wxEVT_MIDDLE_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_RIGHT_DOWN(func) wxEventTableEntry( wxEVT_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_RIGHT_UP(func) wxEventTableEntry( wxEVT_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_MOTION(func) wxEventTableEntry( wxEVT_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_LEFT_DCLICK(func) wxEventTableEntry( wxEVT_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_MIDDLE_DCLICK(func) wxEventTableEntry( wxEVT_MIDDLE_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_RIGHT_DCLICK(func) wxEventTableEntry( wxEVT_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_LEAVE_WINDOW(func) wxEventTableEntry( wxEVT_LEAVE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), -#define EVT_ENTER_WINDOW(func) wxEventTableEntry( wxEVT_ENTER_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_LEFT_DOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_LEFT_UP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_MIDDLE_DOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_MIDDLE_UP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_RIGHT_DOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_RIGHT_UP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_MOTION(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_LEFT_DCLICK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_MIDDLE_DCLICK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_RIGHT_DCLICK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_LEAVE_WINDOW(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEAVE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), +#define EVT_ENTER_WINDOW(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_ENTER_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), // All mouse events #define EVT_MOUSE_EVENTS(func) \ - wxEventTableEntry( wxEVT_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_MIDDLE_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_MIDDLE_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_MIDDLE_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_ENTER_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_LEAVE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_MIDDLE_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_ENTER_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_LEAVE_WINDOW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxMouseEventFunction) & func, (wxObject *) NULL ), // EVT_COMMAND -#define EVT_COMMAND(id, event, fn) wxEventTableEntry( event, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_RANGE(id1, id2, event, fn) wxEventTableEntry( event, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND(id, event, fn) DECLARE_EVENT_TABLE_ENTRY( event, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_RANGE(id1, id2, event, fn) DECLARE_EVENT_TABLE_ENTRY( event, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), // Scrolling from wxWindow (sent to wxScrolledWindow) #define EVT_SCROLLWIN(func) \ - wxEventTableEntry( wxEVT_SCROLLWIN_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLLWIN_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), - -#define EVT_SCROLLWIN_TOP(func) wxEventTableEntry( wxEVT_SCROLLWIN_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_BOTTOM(func) wxEventTableEntry( wxEVT_SCROLLWIN_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_LINEUP(func) wxEventTableEntry( wxEVT_SCROLLWIN_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_LINEDOWN(func) wxEventTableEntry( wxEVT_SCROLLWIN_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_PAGEUP(func) wxEventTableEntry( wxEVT_SCROLLWIN_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_PAGEDOWN(func) wxEventTableEntry( wxEVT_SCROLLWIN_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_THUMBTRACK(func) wxEventTableEntry( wxEVT_SCROLLWIN_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLLWIN_THUMBRELEASE(func) wxEventTableEntry( wxEVT_SCROLLWIN_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), + +#define EVT_SCROLLWIN_TOP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_BOTTOM(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_LINEUP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_LINEDOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_PAGEUP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_PAGEDOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_THUMBTRACK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLLWIN_THUMBRELEASE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLLWIN_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollWinEventFunction) & func, (wxObject *) NULL ), // Scrolling from wxSlider and wxScrollBar #define EVT_SCROLL(func) \ - wxEventTableEntry( wxEVT_SCROLL_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), - -#define EVT_SCROLL_TOP(func) wxEventTableEntry( wxEVT_SCROLL_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_BOTTOM(func) wxEventTableEntry( wxEVT_SCROLL_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_LINEUP(func) wxEventTableEntry( wxEVT_SCROLL_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_LINEDOWN(func) wxEventTableEntry( wxEVT_SCROLL_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_PAGEUP(func) wxEventTableEntry( wxEVT_SCROLL_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_PAGEDOWN(func) wxEventTableEntry( wxEVT_SCROLL_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_THUMBTRACK(func) wxEventTableEntry( wxEVT_SCROLL_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_SCROLL_THUMBRELEASE(func) wxEventTableEntry( wxEVT_SCROLL_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), + +#define EVT_SCROLL_TOP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_TOP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_BOTTOM(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_BOTTOM, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_LINEUP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_LINEDOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_PAGEUP(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEUP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_PAGEDOWN(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEDOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_THUMBTRACK(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBTRACK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_SCROLL_THUMBRELEASE(func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBRELEASE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), // Scrolling from wxSlider and wxScrollBar, with an id #define EVT_COMMAND_SCROLL(id, func) \ - wxEventTableEntry( wxEVT_SCROLL_TOP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_BOTTOM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_PAGEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_PAGEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_SCROLL_THUMBRELEASE, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), - -#define EVT_COMMAND_SCROLL_TOP(id, func) wxEventTableEntry( wxEVT_SCROLL_TOP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_BOTTOM(id, func) wxEventTableEntry( wxEVT_SCROLL_BOTTOM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_LINEUP(id, func) wxEventTableEntry( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_LINEDOWN(id, func) wxEventTableEntry( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_PAGEUP(id, func) wxEventTableEntry( wxEVT_SCROLL_PAGEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_PAGEDOWN(id, func) wxEventTableEntry( wxEVT_SCROLL_PAGEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_THUMBTRACK(id, func) wxEventTableEntry( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), -#define EVT_COMMAND_SCROLL_THUMBRELEASE(id, func) wxEventTableEntry( wxEVT_SCROLL_THUMBRELEASE, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_TOP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_BOTTOM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBRELEASE, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), + +#define EVT_COMMAND_SCROLL_TOP(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_TOP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_BOTTOM(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_BOTTOM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_LINEUP(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_LINEDOWN(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_PAGEUP(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_PAGEDOWN(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_PAGEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_THUMBTRACK(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), +#define EVT_COMMAND_SCROLL_THUMBRELEASE(id, func) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBRELEASE, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxScrollEventFunction) & func, (wxObject *) NULL ), // Convenience macros for commonly-used commands -#define EVT_BUTTON(id, fn) wxEventTableEntry( wxEVT_COMMAND_BUTTON_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_CHECKBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_CHECKBOX_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_CHOICE(id, fn) wxEventTableEntry( wxEVT_COMMAND_CHOICE_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_LISTBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_LISTBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_LISTBOX_DCLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TEXT(id, fn) wxEventTableEntry( wxEVT_COMMAND_TEXT_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TEXT_ENTER(id, fn) wxEventTableEntry( wxEVT_COMMAND_TEXT_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_MENU(id, fn) wxEventTableEntry( wxEVT_COMMAND_MENU_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_MENU_RANGE(id1, id2, fn) wxEventTableEntry( wxEVT_COMMAND_MENU_SELECTED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_SLIDER(id, fn) wxEventTableEntry( wxEVT_COMMAND_SLIDER_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_RADIOBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_RADIOBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_RADIOBUTTON(id, fn) wxEventTableEntry( wxEVT_COMMAND_RADIOBUTTON_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_BUTTON(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_BUTTON_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_CHECKBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_CHECKBOX_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_CHOICE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_CHOICE_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_LISTBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LISTBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_LISTBOX_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TEXT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TEXT_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TEXT_ENTER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TEXT_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_MENU(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_MENU_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_MENU_RANGE(id1, id2, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_MENU_SELECTED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_SLIDER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_SLIDER_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_RADIOBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RADIOBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_RADIOBUTTON(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RADIOBUTTON_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), // EVT_SCROLLBAR is now obsolete since we use EVT_COMMAND_SCROLL... events -#define EVT_SCROLLBAR(id, fn) wxEventTableEntry( wxEVT_COMMAND_SCROLLBAR_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_VLBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_VLBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMBOBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_COMBOBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TOOL(id, fn) wxEventTableEntry( wxEVT_COMMAND_TOOL_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TOOL_RANGE(id1, id2, fn) wxEventTableEntry( wxEVT_COMMAND_TOOL_CLICKED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TOOL_RCLICKED(id, fn) wxEventTableEntry( wxEVT_COMMAND_TOOL_RCLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TOOL_RCLICKED_RANGE(id1, id2, fn) wxEventTableEntry( wxEVT_COMMAND_TOOL_RCLICKED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TOOL_ENTER(id, fn) wxEventTableEntry( wxEVT_COMMAND_TOOL_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_CHECKLISTBOX(id, fn) wxEventTableEntry( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_SCROLLBAR(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_SCROLLBAR_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_VLBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_VLBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMBOBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_COMBOBOX_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TOOL(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TOOL_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TOOL_RANGE(id1, id2, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TOOL_CLICKED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TOOL_RCLICKED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TOOL_RCLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TOOL_RCLICKED_RANGE(id1, id2, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TOOL_RCLICKED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TOOL_ENTER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TOOL_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_CHECKLISTBOX(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), // Generic command events -#define EVT_COMMAND_LEFT_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LEFT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_LEFT_DCLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LEFT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_RIGHT_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_RIGHT_DCLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_RIGHT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_SET_FOCUS(id, fn) wxEventTableEntry( wxEVT_COMMAND_SET_FOCUS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_KILL_FOCUS(id, fn) wxEventTableEntry( wxEVT_COMMAND_KILL_FOCUS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), -#define EVT_COMMAND_ENTER(id, fn) wxEventTableEntry( wxEVT_COMMAND_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_LEFT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LEFT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_LEFT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LEFT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_RIGHT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RIGHT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_SET_FOCUS(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_SET_FOCUS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_KILL_FOCUS(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_KILL_FOCUS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), +#define EVT_COMMAND_ENTER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_ENTER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ), // Joystick events #define EVT_JOY_DOWN(func) \ - wxEventTableEntry( wxEVT_JOY_BUTTON_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), #define EVT_JOY_UP(func) \ - wxEventTableEntry( wxEVT_JOY_BUTTON_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), #define EVT_JOY_MOVE(func) \ - wxEventTableEntry( wxEVT_JOY_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), #define EVT_JOY_ZMOVE(func) \ - wxEventTableEntry( wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), // All joystick events #define EVT_JOYSTICK_EVENTS(func) \ - wxEventTableEntry( wxEVT_JOY_BUTTON_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_JOY_BUTTON_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_JOY_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ - wxEventTableEntry( wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ), // Idle event #define EVT_IDLE(func) \ - wxEventTableEntry( wxEVT_IDLE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIdleEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_IDLE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIdleEventFunction) & func, (wxObject *) NULL ), // Update UI event #define EVT_UPDATE_UI(id, func) \ - wxEventTableEntry( wxEVT_UPDATE_UI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxUpdateUIEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_UPDATE_UI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxUpdateUIEventFunction) & func, (wxObject *) NULL ), #define EVT_UPDATE_UI_RANGE(id1, id2, func) \ - wxEventTableEntry( wxEVT_UPDATE_UI, id1, id2, (wxObjectEventFunction)(wxEventFunction)(wxUpdateUIEventFunction)&func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_UPDATE_UI, id1, id2, (wxObjectEventFunction)(wxEventFunction)(wxUpdateUIEventFunction)&func, (wxObject *) NULL ), // Help events #define EVT_HELP(id, func) \ - wxEventTableEntry( wxEVT_HELP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_HELP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), #define EVT_HELP_RANGE(id1, id2, func) \ - wxEventTableEntry( wxEVT_HELP, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_HELP, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), #define EVT_DETAILED_HELP(id, func) \ - wxEventTableEntry( wxEVT_DETAILED_HELP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DETAILED_HELP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), #define EVT_DETAILED_HELP_RANGE(id1, id2, func) \ - wxEventTableEntry( wxEVT_DETAILED_HELP, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DETAILED_HELP, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxHelpEventFunction) & func, (wxObject *) NULL ), // ---------------------------------------------------------------------------- // Global data diff --git a/include/wx/generic/grid.h b/include/wx/generic/grid.h index fec70bf02c..e4be782cb9 100644 --- a/include/wx/generic/grid.h +++ b/include/wx/generic/grid.h @@ -1875,43 +1875,44 @@ protected: DECLARE_DYNAMIC_CLASS(wxGridRangeSelectEvent) }; -// TODO move to wx/event.h -extern const int wxEVT_GRID_CELL_LEFT_CLICK; -extern const int wxEVT_GRID_CELL_RIGHT_CLICK; -extern const int wxEVT_GRID_CELL_LEFT_DCLICK; -extern const int wxEVT_GRID_CELL_RIGHT_DCLICK; -extern const int wxEVT_GRID_LABEL_LEFT_CLICK; -extern const int wxEVT_GRID_LABEL_RIGHT_CLICK; -extern const int wxEVT_GRID_LABEL_LEFT_DCLICK; -extern const int wxEVT_GRID_LABEL_RIGHT_DCLICK; -extern const int wxEVT_GRID_ROW_SIZE; -extern const int wxEVT_GRID_COL_SIZE; -extern const int wxEVT_GRID_RANGE_SELECT; -extern const int wxEVT_GRID_CELL_CHANGE; -extern const int wxEVT_GRID_SELECT_CELL; -extern const int wxEVT_GRID_EDITOR_SHOWN; -extern const int wxEVT_GRID_EDITOR_HIDDEN; +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_LEFT_CLICK, 1580) + DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_RIGHT_CLICK, 1581) + DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_LEFT_DCLICK, 1582) + DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_RIGHT_DCLICK, 1583) + DECLARE_EVENT_TYPE(wxEVT_GRID_LABEL_LEFT_CLICK, 1584) + DECLARE_EVENT_TYPE(wxEVT_GRID_LABEL_RIGHT_CLICK, 1585) + DECLARE_EVENT_TYPE(wxEVT_GRID_LABEL_LEFT_DCLICK, 1586) + DECLARE_EVENT_TYPE(wxEVT_GRID_LABEL_RIGHT_DCLICK, 1587) + DECLARE_EVENT_TYPE(wxEVT_GRID_ROW_SIZE, 1588) + DECLARE_EVENT_TYPE(wxEVT_GRID_COL_SIZE, 1589) + DECLARE_EVENT_TYPE(wxEVT_GRID_RANGE_SELECT, 1590) + DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_CHANGE, 1591) + DECLARE_EVENT_TYPE(wxEVT_GRID_SELECT_CELL, 1592) + DECLARE_EVENT_TYPE(wxEVT_GRID_EDITOR_SHOWN, 1593) + DECLARE_EVENT_TYPE(wxEVT_GRID_EDITOR_HIDDEN, 1594) +END_DECLARE_EVENT_TYPES() typedef void (wxEvtHandler::*wxGridEventFunction)(wxGridEvent&); typedef void (wxEvtHandler::*wxGridSizeEventFunction)(wxGridSizeEvent&); typedef void (wxEvtHandler::*wxGridRangeSelectEventFunction)(wxGridRangeSelectEvent&); -#define EVT_GRID_CELL_LEFT_CLICK(fn) wxEventTableEntry( wxEVT_GRID_CELL_LEFT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_CELL_RIGHT_CLICK(fn) wxEventTableEntry( wxEVT_GRID_CELL_RIGHT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_CELL_LEFT_DCLICK(fn) wxEventTableEntry( wxEVT_GRID_CELL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_CELL_RIGHT_DCLICK(fn) wxEventTableEntry( wxEVT_GRID_CELL_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_LABEL_LEFT_CLICK(fn) wxEventTableEntry( wxEVT_GRID_LABEL_LEFT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_LABEL_RIGHT_CLICK(fn) wxEventTableEntry( wxEVT_GRID_LABEL_RIGHT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_LABEL_LEFT_DCLICK(fn) wxEventTableEntry( wxEVT_GRID_LABEL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_LABEL_RIGHT_DCLICK(fn) wxEventTableEntry( wxEVT_GRID_LABEL_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_ROW_SIZE(fn) wxEventTableEntry( wxEVT_GRID_ROW_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridSizeEventFunction) &fn, NULL ), -#define EVT_GRID_COL_SIZE(fn) wxEventTableEntry( wxEVT_GRID_COL_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridSizeEventFunction) &fn, NULL ), -#define EVT_GRID_RANGE_SELECT(fn) wxEventTableEntry( wxEVT_GRID_RANGE_SELECT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridRangeSelectEventFunction) &fn, NULL ), -#define EVT_GRID_CELL_CHANGE(fn) wxEventTableEntry( wxEVT_GRID_CELL_CHANGE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_SELECT_CELL(fn) wxEventTableEntry( wxEVT_GRID_SELECT_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_EDITOR_SHOWN(fn) wxEventTableEntry( wxEVT_GRID_EDITOR_SHOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_EDITOR_HIDDEN(fn) wxEventTableEntry( wxEVT_GRID_EDITOR_HIDDEN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CELL_LEFT_CLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_LEFT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CELL_RIGHT_CLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_RIGHT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CELL_LEFT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CELL_RIGHT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_LABEL_LEFT_CLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_LABEL_LEFT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_LABEL_RIGHT_CLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_LABEL_RIGHT_CLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_LABEL_LEFT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_LABEL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_LABEL_RIGHT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_LABEL_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_ROW_SIZE(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_ROW_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridSizeEventFunction) &fn, NULL ), +#define EVT_GRID_COL_SIZE(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_COL_SIZE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridSizeEventFunction) &fn, NULL ), +#define EVT_GRID_RANGE_SELECT(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_RANGE_SELECT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridRangeSelectEventFunction) &fn, NULL ), +#define EVT_GRID_CELL_CHANGE(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_CHANGE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_SELECT_CELL(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_SELECT_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_EDITOR_SHOWN(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_EDITOR_SHOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_EDITOR_HIDDEN(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_EDITOR_HIDDEN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), #if 0 // TODO: implement these ? others ? @@ -1920,9 +1921,9 @@ extern const int wxEVT_GRID_CREATE_CELL; extern const int wxEVT_GRID_CHANGE_LABELS; extern const int wxEVT_GRID_CHANGE_SEL_LABEL; -#define EVT_GRID_CREATE_CELL(fn) wxEventTableEntry( wxEVT_GRID_CREATE_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_CHANGE_LABELS(fn) wxEventTableEntry( wxEVT_GRID_CHANGE_LABELS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), -#define EVT_GRID_CHANGE_SEL_LABEL(fn) wxEventTableEntry( wxEVT_GRID_CHANGE_SEL_LABEL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CREATE_CELL(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CREATE_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CHANGE_LABELS(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CHANGE_LABELS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), +#define EVT_GRID_CHANGE_SEL_LABEL(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CHANGE_SEL_LABEL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ), #endif diff --git a/include/wx/generic/gridg.h b/include/wx/generic/gridg.h index 110176f7f4..dd880fa622 100644 --- a/include/wx/generic/gridg.h +++ b/include/wx/generic/gridg.h @@ -410,15 +410,15 @@ const wxEventType wxEVT_GRID_LABEL_RCLICK = wxEVT_FIRST + 1583; typedef void (wxEvtHandler::*wxGridEventFunction)(wxGridEvent&); -#define EVT_GRID_SELECT_CELL(fn) wxEventTableEntry(wxEVT_GRID_SELECT_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CREATE_CELL(fn) wxEventTableEntry(wxEVT_GRID_CREATE_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CHANGE_LABELS(fn) wxEventTableEntry(wxEVT_GRID_CHANGE_LABELS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CHANGE_SEL_LABEL(fn) wxEventTableEntry(wxEVT_GRID_CHANGE_SEL_LABEL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CELL_CHANGE(fn) wxEventTableEntry(wxEVT_GRID_CELL_CHANGE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CELL_LCLICK(fn) wxEventTableEntry(wxEVT_GRID_CELL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_CELL_RCLICK(fn) wxEventTableEntry(wxEVT_GRID_CELL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_LABEL_LCLICK(fn) wxEventTableEntry(wxEVT_GRID_LABEL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), -#define EVT_GRID_LABEL_RCLICK(fn) wxEventTableEntry(wxEVT_GRID_LABEL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_SELECT_CELL(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_SELECT_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CREATE_CELL(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CREATE_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CHANGE_LABELS(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CHANGE_LABELS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CHANGE_SEL_LABEL(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CHANGE_SEL_LABEL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CELL_CHANGE(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CELL_CHANGE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CELL_LCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CELL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_CELL_RCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_CELL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_LABEL_LCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_LABEL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), +#define EVT_GRID_LABEL_RCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_GRID_LABEL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL), #endif // __GRIDH_G__ diff --git a/include/wx/generic/laywin.h b/include/wx/generic/laywin.h index 79111cd0e3..7556ff983d 100644 --- a/include/wx/generic/laywin.h +++ b/include/wx/generic/laywin.h @@ -23,8 +23,10 @@ #include "wx/sashwin.h" #endif // wxUSE_SASH -extern const int wxEVT_QUERY_LAYOUT_INFO; -extern const int wxEVT_CALCULATE_LAYOUT; +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_QUERY_LAYOUT_INFO, 1500) + DECLARE_EVENT_TYPE(wxEVT_CALCULATE_LAYOUT, 1501) +END_DECLARE_EVENT_TYPES() enum wxLayoutOrientation { @@ -101,7 +103,7 @@ protected: typedef void (wxEvtHandler::*wxQueryLayoutInfoEventFunction)(wxQueryLayoutInfoEvent&); #define EVT_QUERY_LAYOUT_INFO(func) \ - wxEventTableEntry( wxEVT_QUERY_LAYOUT_INFO, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryLayoutInfoEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_QUERY_LAYOUT_INFO, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryLayoutInfoEventFunction) & func, NULL ), /* * This event is used to take a bite out of the available client area. @@ -132,7 +134,7 @@ protected: typedef void (wxEvtHandler::*wxCalculateLayoutEventFunction)(wxCalculateLayoutEvent&); #define EVT_CALCULATE_LAYOUT(func) \ - wxEventTableEntry( wxEVT_CALCULATE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCalculateLayoutEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_CALCULATE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCalculateLayoutEventFunction) & func, NULL ), #if wxUSE_SASH diff --git a/include/wx/generic/sashwin.h b/include/wx/generic/sashwin.h index 0229f0c7fe..81fcdf1b88 100644 --- a/include/wx/generic/sashwin.h +++ b/include/wx/generic/sashwin.h @@ -229,9 +229,9 @@ class WXDLLEXPORT wxSashEvent: public wxCommandEvent typedef void (wxEvtHandler::*wxSashEventFunction)(wxSashEvent&); #define EVT_SASH_DRAGGED(id, fn) \ - wxEventTableEntry( wxEVT_SASH_DRAGGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SASH_DRAGGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL ), #define EVT_SASH_DRAGGED_RANGE(id1, id2, fn) \ - wxEventTableEntry( wxEVT_SASH_DRAGGED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SASH_DRAGGED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL ), #endif // wxUSE_SASH diff --git a/include/wx/generic/splitter.h b/include/wx/generic/splitter.h index 53fab35462..ff65670f54 100644 --- a/include/wx/generic/splitter.h +++ b/include/wx/generic/splitter.h @@ -323,7 +323,7 @@ private: typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); #define EVT_SPLITTER_SASH_POS_CHANGED(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, \ id, \ -1, \ @@ -332,7 +332,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); ), #define EVT_SPLITTER_SASH_POS_CHANGING(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING, \ id, \ -1, \ @@ -341,7 +341,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); ), #define EVT_SPLITTER_DCLICK(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, \ id, \ -1, \ @@ -350,7 +350,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); ), #define EVT_SPLITTER_UNSPLIT(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_UNSPLIT, \ id, \ -1, \ diff --git a/include/wx/listctrl.h b/include/wx/listctrl.h index bba686acd8..043e2380a6 100644 --- a/include/wx/listctrl.h +++ b/include/wx/listctrl.h @@ -297,24 +297,47 @@ private: DECLARE_DYNAMIC_CLASS(wxListEvent) }; +// ---------------------------------------------------------------------------- +// wxListCtrl event macros +// ---------------------------------------------------------------------------- + +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_DRAG, 700) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_RDRAG, 701) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT, 702) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_END_LABEL_EDIT, 703) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ITEM, 704) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS, 705) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_GET_INFO, 706) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_SET_INFO, 707) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_SELECTED, 708) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_DESELECTED, 709) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_KEY_DOWN, 710) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_INSERT_ITEM, 711) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_COL_CLICK, 712) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, 713) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, 714) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_ACTIVATED, 715) +END_DECLARE_EVENT_TYPES() + typedef void (wxEvtHandler::*wxListEventFunction)(wxListEvent&); -#define EVT_LIST_BEGIN_DRAG(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_BEGIN_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_BEGIN_RDRAG(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_BEGIN_RDRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_BEGIN_LABEL_EDIT(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_END_LABEL_EDIT(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_END_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_DELETE_ITEM(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_DELETE_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_DELETE_ALL_ITEMS(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_GET_INFO(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_GET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_SET_INFO(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_SET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_ITEM_SELECTED(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_ITEM_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_ITEM_DESELECTED(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_ITEM_DESELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_KEY_DOWN(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_KEY_DOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_INSERT_ITEM(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_INSERT_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_COL_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_COL_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), -#define EVT_LIST_ITEM_RIGHT_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), -#define EVT_LIST_ITEM_MIDDLE_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), -#define EVT_LIST_ITEM_ACTIVATED(id, fn) wxEventTableEntry( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), +#define EVT_LIST_BEGIN_DRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_BEGIN_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_BEGIN_RDRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_BEGIN_RDRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_BEGIN_LABEL_EDIT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_END_LABEL_EDIT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_END_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_DELETE_ITEM(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_DELETE_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_DELETE_ALL_ITEMS(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_GET_INFO(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_GET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_SET_INFO(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_SET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_ITEM_SELECTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_ITEM_SELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_ITEM_DESELECTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_ITEM_DESELECTED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_KEY_DOWN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_KEY_DOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_INSERT_ITEM(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_INSERT_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_COL_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_COL_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, NULL ), +#define EVT_LIST_ITEM_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), +#define EVT_LIST_ITEM_MIDDLE_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), +#define EVT_LIST_ITEM_ACTIVATED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL ), #endif // _WX_LISTCTRL_H_BASE_ diff --git a/include/wx/motif/tabctrl.h b/include/wx/motif/tabctrl.h index 1cf660b6b1..b17804c615 100644 --- a/include/wx/motif/tabctrl.h +++ b/include/wx/motif/tabctrl.h @@ -129,9 +129,9 @@ class WXDLLEXPORT wxTabEvent: public wxCommandEvent typedef void (wxEvtHandler::*wxTabEventFunction)(wxTabEvent&); -#define EVT_TAB_SEL_CHANGED(id, fn) wxEventTableEntry(wxEVT_COMMAND_TAB_SEL_CHANGED, \ +#define EVT_TAB_SEL_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_TAB_SEL_CHANGED, \ id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTabEventFunction) & fn, NULL ), -#define EVT_TAB_SEL_CHANGING(id, fn) wxEventTableEntry(wxEVT_COMMAND_TAB_SEL_CHANGING, \ +#define EVT_TAB_SEL_CHANGING(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_TAB_SEL_CHANGING, \ id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTabEventFunction) & fn, NULL ), #endif diff --git a/include/wx/msw/tabctrl.h b/include/wx/msw/tabctrl.h index 9989b5ffc7..d1985bfddd 100644 --- a/include/wx/msw/tabctrl.h +++ b/include/wx/msw/tabctrl.h @@ -136,9 +136,9 @@ class WXDLLEXPORT wxTabEvent: public wxCommandEvent typedef void (wxEvtHandler::*wxTabEventFunction)(wxTabEvent&); -#define EVT_TAB_SEL_CHANGED(id, fn) wxEventTableEntry(wxEVT_COMMAND_TAB_SEL_CHANGED, \ +#define EVT_TAB_SEL_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_TAB_SEL_CHANGED, \ id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTabEventFunction) & fn, NULL), -#define EVT_TAB_SEL_CHANGING(id, fn) wxEventTableEntry(wxEVT_COMMAND_TAB_SEL_CHANGING, \ +#define EVT_TAB_SEL_CHANGING(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_COMMAND_TAB_SEL_CHANGING, \ id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTabEventFunction) & fn, NULL), #endif diff --git a/include/wx/msw/taskbar.h b/include/wx/msw/taskbar.h index ae55f9971f..bb3a9db3f5 100644 --- a/include/wx/msw/taskbar.h +++ b/include/wx/msw/taskbar.h @@ -86,13 +86,13 @@ const wxEventType wxEVT_TASKBAR_LEFT_DCLICK = wxEVT_FIRST + 1555; const wxEventType wxEVT_TASKBAR_RIGHT_DCLICK = wxEVT_FIRST + 1556; -#define EVT_TASKBAR_MOVE(fn) wxEventTableEntry(wxEVT_TASKBAR_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_LEFT_DOWN(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_LEFT_UP(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_RIGHT_DOWN(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_RIGHT_UP(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_LEFT_DCLICK(fn) wxEventTableEntry(wxEVT_TASKBAR_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), -#define EVT_TASKBAR_RIGHT_DCLICK(fn) wxEventTableEntry(wxEVT_TASKBAR_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_MOVE(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_LEFT_DOWN(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_LEFT_UP(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_LEFT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_RIGHT_DOWN(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_RIGHT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_RIGHT_UP(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_LEFT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), +#define EVT_TASKBAR_RIGHT_DCLICK(fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_TASKBAR_RIGHT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) &fn, NULL), #endif diff --git a/include/wx/notebook.h b/include/wx/notebook.h index 91564c3a4d..f1e119ff4a 100644 --- a/include/wx/notebook.h +++ b/include/wx/notebook.h @@ -38,15 +38,26 @@ private: }; // ---------------------------------------------------------------------------- -// event macros +// event types and macros for them // ---------------------------------------------------------------------------- +#if defined(__BORLANDC__) && defined(__WIN16__) + // For 16-bit BC++, these 2 would be identical otherwise (truncated) + #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED wxEVT_COMMAND_NB_PAGE_CHANGED + #define wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING wxEVT_COMMAND_NB_PAGE_CHANGING +#endif + +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, 802) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, 803) +END_DECLARE_EVENT_TYPES() + typedef void (wxEvtHandler::*wxNotebookEventFunction)(wxNotebookEvent&); // Truncation in 16-bit BC++ means we need to define these differently #if defined(__BORLANDC__) && defined(__WIN16__) #define EVT_NOTEBOOK_PAGE_CHANGED(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_NB_PAGE_CHANGED, \ id, \ -1, \ @@ -55,7 +66,7 @@ typedef void (wxEvtHandler::*wxNotebookEventFunction)(wxNotebookEvent&); ), #define EVT_NOTEBOOK_PAGE_CHANGING(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_NB_PAGE_CHANGING, \ id, \ -1, \ @@ -66,7 +77,7 @@ typedef void (wxEvtHandler::*wxNotebookEventFunction)(wxNotebookEvent&); #else #define EVT_NOTEBOOK_PAGE_CHANGED(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, \ id, \ -1, \ @@ -75,7 +86,7 @@ typedef void (wxEvtHandler::*wxNotebookEventFunction)(wxNotebookEvent&); ), #define EVT_NOTEBOOK_PAGE_CHANGING(id, fn) \ - wxEventTableEntry( \ + DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, \ id, \ -1, \ diff --git a/include/wx/process.h b/include/wx/process.h index ca13ae2d59..d0bff5c627 100644 --- a/include/wx/process.h +++ b/include/wx/process.h @@ -24,7 +24,10 @@ #include "wx/stream.h" #endif -// Process Event handling +// ---------------------------------------------------------------------------- +// wxProcessEvent: event used with wxProcess +// ---------------------------------------------------------------------------- + class WXDLLEXPORT wxProcessEvent : public wxEvent { DECLARE_DYNAMIC_CLASS(wxProcessEvent) @@ -48,8 +51,11 @@ public: int m_pid, m_exitcode; }; +// ---------------------------------------------------------------------------- // A wxProcess object should be passed to wxExecute - than its OnTerminate() // function will be called when the process terminates. +// ---------------------------------------------------------------------------- + class WXDLLEXPORT wxProcess : public wxEvtHandler { DECLARE_DYNAMIC_CLASS(wxProcess) @@ -104,10 +110,18 @@ protected: bool m_redirect; }; +// ---------------------------------------------------------------------------- +// wxProcess events +// ---------------------------------------------------------------------------- + +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_END_PROCESS, 440) +END_DECLARE_EVENT_TYPES() + typedef void (wxObject::*wxProcessEventFunction)(wxProcessEvent&); #define EVT_END_PROCESS(id, func) \ - wxEventTableEntry( wxEVT_END_PROCESS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxProcessEventFunction) & func, NULL), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_END_PROCESS, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxProcessEventFunction) & func, NULL), #endif // _WX_PROCESSH__ diff --git a/include/wx/socket.h b/include/wx/socket.h index a8a9ff7c02..4374b9b1d1 100644 --- a/include/wx/socket.h +++ b/include/wx/socket.h @@ -348,9 +348,12 @@ public: typedef void (wxEvtHandler::*wxSocketEventFunction)(wxSocketEvent&); -#define EVT_SOCKET(id, func) wxEventTableEntry( wxEVT_SOCKET, id, -1, \ - (wxObjectEventFunction) (wxEventFunction) (wxSocketEventFunction) & func, \ - (wxObject *) NULL ), +#define EVT_SOCKET(id, func) \ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SOCKET, id, -1, \ + (wxObjectEventFunction) \ + (wxEventFunction) \ + (wxSocketEventFunction) & func, \ + (wxObject *) NULL ), #endif diff --git a/include/wx/spinbutt.h b/include/wx/spinbutt.h index 76a7b8b187..7e1cddfe98 100644 --- a/include/wx/spinbutt.h +++ b/include/wx/spinbutt.h @@ -114,11 +114,11 @@ typedef void (wxEvtHandler::*wxSpinEventFunction)(wxSpinEvent&); // macros for handling spin events #define EVT_SPIN_UP(id, func) \ - wxEventTableEntry( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), #define EVT_SPIN_DOWN(id, func) \ - wxEventTableEntry( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), #define EVT_SPIN(id, func) \ - wxEventTableEntry( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func, NULL ), #endif // wxUSE_SPINBTN diff --git a/include/wx/spinctrl.h b/include/wx/spinctrl.h index 17dc5ff9a3..94b62fb846 100644 --- a/include/wx/spinctrl.h +++ b/include/wx/spinctrl.h @@ -62,7 +62,7 @@ protected: // Macro must be defined here, not event.h, since it must reference wxSpinEventFunction #define EVT_SPINCTRL(id, fn) \ - wxEventTableEntry( wxEVT_COMMAND_SPINCTRL_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & fn, (wxObject *) NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_SPINCTRL_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & fn, (wxObject *) NULL ), #endif // _WX_SPINCTRL_H_ diff --git a/include/wx/splitter.h b/include/wx/splitter.h index 0a5232403b..4a74ca9c1a 100644 --- a/include/wx/splitter.h +++ b/include/wx/splitter.h @@ -1,6 +1,13 @@ #ifndef _WX_SPLITTER_H_BASE_ #define _WX_SPLITTER_H_BASE_ +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, 850) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING, 851) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, 852) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_UNSPLIT, 853) +END_DECLARE_EVENT_TYPES() + #include "wx/generic/splitter.h" #endif diff --git a/include/wx/tabctrl.h b/include/wx/tabctrl.h index baf3850a04..202a41408f 100644 --- a/include/wx/tabctrl.h +++ b/include/wx/tabctrl.h @@ -1,6 +1,11 @@ #ifndef _WX_TABCTRL_H_BASE_ #define _WX_TABCTRL_H_BASE_ +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGED, 800) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGING, 801) +END_DECLARE_EVENT_TYPES() + #if defined(__WXMSW__) #include "wx/msw/tabctrl.h" #elif defined(__WXMOTIF__) diff --git a/include/wx/timer.h b/include/wx/timer.h index 802544a91b..7593cfd406 100644 --- a/include/wx/timer.h +++ b/include/wx/timer.h @@ -172,7 +172,7 @@ private: typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&); #define EVT_TIMER(id, func) \ - wxEventTableEntry( wxEVT_TIMER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTimerEventFunction) & func, NULL), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_TIMER, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTimerEventFunction) & func, NULL), #endif // wxUSE_GUI diff --git a/include/wx/treebase.h b/include/wx/treebase.h index ed6d9236b9..74dfe87157 100644 --- a/include/wx/treebase.h +++ b/include/wx/treebase.h @@ -230,58 +230,79 @@ private: typedef void (wxEvtHandler::*wxTreeEventFunction)(wxTreeEvent&); // ---------------------------------------------------------------------------- -// macros for handling tree control events +// tree control events and macros for handling them // ---------------------------------------------------------------------------- +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_DRAG, 600) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_RDRAG, 601) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT, 602) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_LABEL_EDIT, 603) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_DELETE_ITEM, 604) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_GET_INFO, 605) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SET_INFO, 606) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDED, 607) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDING, 608) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSED, 609) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSING, 610) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGED, 611) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGING, 612) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_KEY_DOWN, 613) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_ACTIVATED, 614) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK, 615) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK, 616) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_DRAG, 617) +END_DECLARE_EVENT_TYPES() + // GetItem() returns the item being dragged, GetPoint() the mouse coords // // if you call event.Allow(), the drag operation will start and a // EVT_TREE_END_DRAG event will be sent when the drag is over. -#define EVT_TREE_BEGIN_DRAG(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_BEGIN_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_BEGIN_RDRAG(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_BEGIN_RDRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_BEGIN_DRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_BEGIN_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_BEGIN_RDRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_BEGIN_RDRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), // GetItem() is the item on which the drop occured (if any) and GetPoint() the // current mouse coords -#define EVT_TREE_END_DRAG(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_END_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_END_DRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_END_DRAG, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), // GetItem() returns the itme whose label is being edited, GetLabel() returns // the current item label for BEGIN and the would be new one for END. // // Vetoing BEGIN event means that label editing won't happen at all, // vetoing END means that the new value is discarded and the old one kept -#define EVT_TREE_BEGIN_LABEL_EDIT(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_END_LABEL_EDIT(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_END_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_BEGIN_LABEL_EDIT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_END_LABEL_EDIT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_END_LABEL_EDIT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), // provide/update information about GetItem() item -#define EVT_TREE_GET_INFO(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_GET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_SET_INFO(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_SET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_GET_INFO(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_GET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_SET_INFO(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_SET_INFO, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), // GetItem() is the item being expanded/collapsed, the "ING" versions can use -#define EVT_TREE_ITEM_EXPANDED(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_EXPANDED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_ITEM_EXPANDING(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_EXPANDING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_ITEM_COLLAPSED(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_COLLAPSED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), -#define EVT_TREE_ITEM_COLLAPSING(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_COLLAPSING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_ITEM_EXPANDED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_EXPANDED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_ITEM_EXPANDING(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_EXPANDING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_ITEM_COLLAPSED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_COLLAPSED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_ITEM_COLLAPSING(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_COLLAPSING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), // GetOldItem() is the item which had the selection previously, GetItem() is // the item which acquires selection -#define EVT_TREE_SEL_CHANGED(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_SEL_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), -#define EVT_TREE_SEL_CHANGING(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_SEL_CHANGING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_SEL_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_SEL_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_SEL_CHANGING(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_SEL_CHANGING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), // GetCode() returns the key code // NB: this is the only message for which GetItem() is invalid (you may get the // item from GetSelection()) -#define EVT_TREE_KEY_DOWN(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_KEY_DOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_KEY_DOWN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_KEY_DOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), // GetItem() returns the item being deleted, the associated data (if any) will // be deleted just after the return of this event handler (if any) -#define EVT_TREE_DELETE_ITEM(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_DELETE_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), +#define EVT_TREE_DELETE_ITEM(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_DELETE_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, (wxObject *) NULL ), // GetItem() returns the item that was activated (double click, enter, space) -#define EVT_TREE_ITEM_ACTIVATED(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_ACTIVATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_ITEM_ACTIVATED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_ACTIVATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), // GetItem() returns the item that was clicked on -#define EVT_TREE_ITEM_RIGHT_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), -#define EVT_TREE_ITEM_MIDDLE_CLICK(id, fn) wxEventTableEntry( wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_ITEM_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), +#define EVT_TREE_ITEM_MIDDLE_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxTreeEventFunction) & fn, NULL ), // #endif // wxUSE_TREECTRL diff --git a/include/wx/wizard.h b/include/wx/wizard.h index 6ad0c43140..19a4082715 100644 --- a/include/wx/wizard.h +++ b/include/wx/wizard.h @@ -175,17 +175,23 @@ private: // macros for handling wxWizardEvents // ---------------------------------------------------------------------------- +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGED, 900) + DECLARE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGING, 901) + DECLARE_EVENT_TYPE(wxEVT_WIZARD_CANCEL, 902) +END_DECLARE_EVENT_TYPES() + typedef void (wxEvtHandler::*wxWizardEventFunction)(wxWizardEvent&); // notifies that the page has just been changed (can't be vetoed) -#define EVT_WIZARD_PAGE_CHANGED(id, fn) wxEventTableEntry(wxEVT_WIZARD_PAGE_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), +#define EVT_WIZARD_PAGE_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_WIZARD_PAGE_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), // the user pressed "" button and the page is going to be // changed - unless the event handler vetoes the event -#define EVT_WIZARD_PAGE_CHANGING(id, fn) wxEventTableEntry(wxEVT_WIZARD_PAGE_CHANGING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), +#define EVT_WIZARD_PAGE_CHANGING(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_WIZARD_PAGE_CHANGING, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), // the user pressed "Cancel" button and the wizard is going to be dismissed - // unless the event handler vetoes the event -#define EVT_WIZARD_CANCEL(id, fn) wxEventTableEntry(wxEVT_WIZARD_CANCEL, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), +#define EVT_WIZARD_CANCEL(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_WIZARD_CANCEL, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxWizardEventFunction) & fn, (wxObject *)NULL), #endif // _WX_WIZARD_H_ diff --git a/src/common/event.cpp b/src/common/event.cpp index 0012b8b359..7207ee820b 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -108,212 +108,145 @@ wxList *wxPendingEvents = (wxList *)NULL; #if !WXWIN_COMPATIBILITY_EVENT_TYPES -wxEventType wxEVT_COMMAND_BUTTON_CLICKED = wxNewEventType(); -wxEventType wxEVT_COMMAND_CHECKBOX_CLICKED = wxNewEventType(); -wxEventType wxEVT_COMMAND_CHOICE_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_LISTBOX_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_LISTBOX_DOUBLECLICKED = wxNewEventType(); -wxEventType wxEVT_COMMAND_CHECKLISTBOX_TOGGLED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TEXT_UPDATED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TEXT_ENTER = wxNewEventType(); -wxEventType wxEVT_COMMAND_MENU_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_SLIDER_UPDATED = wxNewEventType(); -wxEventType wxEVT_COMMAND_RADIOBOX_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_RADIOBUTTON_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_SCROLLBAR_UPDATED = wxNewEventType(); -wxEventType wxEVT_COMMAND_VLBOX_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_COMBOBOX_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TOOL_RCLICKED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TOOL_ENTER = wxNewEventType(); -wxEventType wxEVT_COMMAND_SPINCTRL_UPDATED = wxNewEventType(); +// common event types are defined here, other event types are defined by the +// components which use them + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_BUTTON_CLICKED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_CHECKBOX_CLICKED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_CHOICE_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LISTBOX_DOUBLECLICKED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_CHECKLISTBOX_TOGGLED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_UPDATED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TEXT_ENTER) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_MENU_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SLIDER_UPDATED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_RADIOBOX_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_RADIOBUTTON_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SCROLLBAR_UPDATED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_VLBOX_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_COMBOBOX_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOOL_RCLICKED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOOL_ENTER) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPINCTRL_UPDATED) // Sockets and timers send events, too -wxEventType wxEVT_SOCKET = wxNewEventType(); -wxEventType wxEVT_TIMER = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_SOCKET) +DEFINE_EVENT_TYPE(wxEVT_TIMER) // Mouse event types -wxEventType wxEVT_LEFT_DOWN = wxNewEventType(); -wxEventType wxEVT_LEFT_UP = wxNewEventType(); -wxEventType wxEVT_MIDDLE_DOWN = wxNewEventType(); -wxEventType wxEVT_MIDDLE_UP = wxNewEventType(); -wxEventType wxEVT_RIGHT_DOWN = wxNewEventType(); -wxEventType wxEVT_RIGHT_UP = wxNewEventType(); -wxEventType wxEVT_MOTION = wxNewEventType(); -wxEventType wxEVT_ENTER_WINDOW = wxNewEventType(); -wxEventType wxEVT_LEAVE_WINDOW = wxNewEventType(); -wxEventType wxEVT_LEFT_DCLICK = wxNewEventType(); -wxEventType wxEVT_MIDDLE_DCLICK = wxNewEventType(); -wxEventType wxEVT_RIGHT_DCLICK = wxNewEventType(); -wxEventType wxEVT_SET_FOCUS = wxNewEventType(); -wxEventType wxEVT_KILL_FOCUS = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_LEFT_DOWN) +DEFINE_EVENT_TYPE(wxEVT_LEFT_UP) +DEFINE_EVENT_TYPE(wxEVT_MIDDLE_DOWN) +DEFINE_EVENT_TYPE(wxEVT_MIDDLE_UP) +DEFINE_EVENT_TYPE(wxEVT_RIGHT_DOWN) +DEFINE_EVENT_TYPE(wxEVT_RIGHT_UP) +DEFINE_EVENT_TYPE(wxEVT_MOTION) +DEFINE_EVENT_TYPE(wxEVT_ENTER_WINDOW) +DEFINE_EVENT_TYPE(wxEVT_LEAVE_WINDOW) +DEFINE_EVENT_TYPE(wxEVT_LEFT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_MIDDLE_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_RIGHT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_SET_FOCUS) +DEFINE_EVENT_TYPE(wxEVT_KILL_FOCUS) // Non-client mouse events -wxEventType wxEVT_NC_LEFT_DOWN = wxNewEventType(); -wxEventType wxEVT_NC_LEFT_UP = wxNewEventType(); -wxEventType wxEVT_NC_MIDDLE_DOWN = wxNewEventType(); -wxEventType wxEVT_NC_MIDDLE_UP = wxNewEventType(); -wxEventType wxEVT_NC_RIGHT_DOWN = wxNewEventType(); -wxEventType wxEVT_NC_RIGHT_UP = wxNewEventType(); -wxEventType wxEVT_NC_MOTION = wxNewEventType(); -wxEventType wxEVT_NC_ENTER_WINDOW = wxNewEventType(); -wxEventType wxEVT_NC_LEAVE_WINDOW = wxNewEventType(); -wxEventType wxEVT_NC_LEFT_DCLICK = wxNewEventType(); -wxEventType wxEVT_NC_MIDDLE_DCLICK = wxNewEventType(); -wxEventType wxEVT_NC_RIGHT_DCLICK = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_NC_LEFT_DOWN) +DEFINE_EVENT_TYPE(wxEVT_NC_LEFT_UP) +DEFINE_EVENT_TYPE(wxEVT_NC_MIDDLE_DOWN) +DEFINE_EVENT_TYPE(wxEVT_NC_MIDDLE_UP) +DEFINE_EVENT_TYPE(wxEVT_NC_RIGHT_DOWN) +DEFINE_EVENT_TYPE(wxEVT_NC_RIGHT_UP) +DEFINE_EVENT_TYPE(wxEVT_NC_MOTION) +DEFINE_EVENT_TYPE(wxEVT_NC_ENTER_WINDOW) +DEFINE_EVENT_TYPE(wxEVT_NC_LEAVE_WINDOW) +DEFINE_EVENT_TYPE(wxEVT_NC_LEFT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_NC_MIDDLE_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_NC_RIGHT_DCLICK) // Character input event type -wxEventType wxEVT_CHAR = wxNewEventType(); -wxEventType wxEVT_CHAR_HOOK = wxNewEventType(); -wxEventType wxEVT_NAVIGATION_KEY = wxNewEventType(); -wxEventType wxEVT_KEY_DOWN = wxNewEventType(); -wxEventType wxEVT_KEY_UP = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_CHAR) +DEFINE_EVENT_TYPE(wxEVT_CHAR_HOOK) +DEFINE_EVENT_TYPE(wxEVT_NAVIGATION_KEY) +DEFINE_EVENT_TYPE(wxEVT_KEY_DOWN) +DEFINE_EVENT_TYPE(wxEVT_KEY_UP) // Set cursor event -wxEventType wxEVT_SET_CURSOR = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_SET_CURSOR) // wxScrollbar and wxSlider event identifiers -wxEventType wxEVT_SCROLL_TOP = wxNewEventType(); -wxEventType wxEVT_SCROLL_BOTTOM = wxNewEventType(); -wxEventType wxEVT_SCROLL_LINEUP = wxNewEventType(); -wxEventType wxEVT_SCROLL_LINEDOWN = wxNewEventType(); -wxEventType wxEVT_SCROLL_PAGEUP = wxNewEventType(); -wxEventType wxEVT_SCROLL_PAGEDOWN = wxNewEventType(); -wxEventType wxEVT_SCROLL_THUMBTRACK = wxNewEventType(); -wxEventType wxEVT_SCROLL_THUMBRELEASE = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_SCROLL_TOP) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_BOTTOM) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_LINEUP) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_LINEDOWN) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_PAGEUP) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_PAGEDOWN) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_THUMBTRACK) +DEFINE_EVENT_TYPE(wxEVT_SCROLL_THUMBRELEASE) // Scroll events from wxWindow -wxEventType wxEVT_SCROLLWIN_TOP = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_BOTTOM = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_LINEUP = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_LINEDOWN = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_PAGEUP = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_PAGEDOWN = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_THUMBTRACK = wxNewEventType(); -wxEventType wxEVT_SCROLLWIN_THUMBRELEASE = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_TOP) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_BOTTOM) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEUP) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_LINEDOWN) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEUP) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_PAGEDOWN) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBTRACK) +DEFINE_EVENT_TYPE(wxEVT_SCROLLWIN_THUMBRELEASE) // System events -wxEventType wxEVT_SIZE = wxNewEventType(); -wxEventType wxEVT_MOVE = wxNewEventType(); -wxEventType wxEVT_CLOSE_WINDOW = wxNewEventType(); -wxEventType wxEVT_END_SESSION = wxNewEventType(); -wxEventType wxEVT_QUERY_END_SESSION = wxNewEventType(); -wxEventType wxEVT_ACTIVATE_APP = wxNewEventType(); -wxEventType wxEVT_POWER = wxNewEventType(); -wxEventType wxEVT_ACTIVATE = wxNewEventType(); -wxEventType wxEVT_CREATE = wxNewEventType(); -wxEventType wxEVT_DESTROY = wxNewEventType(); -wxEventType wxEVT_SHOW = wxNewEventType(); -wxEventType wxEVT_ICONIZE = wxNewEventType(); -wxEventType wxEVT_MAXIMIZE = wxNewEventType(); -wxEventType wxEVT_MOUSE_CAPTURE_CHANGED = wxNewEventType(); -wxEventType wxEVT_PAINT = wxNewEventType(); -wxEventType wxEVT_ERASE_BACKGROUND = wxNewEventType(); -wxEventType wxEVT_NC_PAINT = wxNewEventType(); -wxEventType wxEVT_PAINT_ICON = wxNewEventType(); -wxEventType wxEVT_MENU_CHAR = wxNewEventType(); -wxEventType wxEVT_MENU_INIT = wxNewEventType(); -wxEventType wxEVT_MENU_HIGHLIGHT = wxNewEventType(); -wxEventType wxEVT_POPUP_MENU_INIT = wxNewEventType(); -wxEventType wxEVT_CONTEXT_MENU = wxNewEventType(); -wxEventType wxEVT_SYS_COLOUR_CHANGED = wxNewEventType(); -wxEventType wxEVT_SETTING_CHANGED = wxNewEventType(); -wxEventType wxEVT_QUERY_NEW_PALETTE = wxNewEventType(); -wxEventType wxEVT_PALETTE_CHANGED = wxNewEventType(); -wxEventType wxEVT_JOY_BUTTON_DOWN = wxNewEventType(); -wxEventType wxEVT_JOY_BUTTON_UP = wxNewEventType(); -wxEventType wxEVT_JOY_MOVE = wxNewEventType(); -wxEventType wxEVT_JOY_ZMOVE = wxNewEventType(); -wxEventType wxEVT_DROP_FILES = wxNewEventType(); -wxEventType wxEVT_DRAW_ITEM = wxNewEventType(); -wxEventType wxEVT_MEASURE_ITEM = wxNewEventType(); -wxEventType wxEVT_COMPARE_ITEM = wxNewEventType(); -wxEventType wxEVT_INIT_DIALOG = wxNewEventType(); -wxEventType wxEVT_IDLE = wxNewEventType(); -wxEventType wxEVT_UPDATE_UI = wxNewEventType(); - -// System misc. -wxEventType wxEVT_END_PROCESS = wxNewEventType(); - -// Dial up events -wxEventType wxEVT_DIALUP_CONNECTED = wxNewEventType(); -wxEventType wxEVT_DIALUP_DISCONNECTED = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_SIZE) +DEFINE_EVENT_TYPE(wxEVT_MOVE) +DEFINE_EVENT_TYPE(wxEVT_CLOSE_WINDOW) +DEFINE_EVENT_TYPE(wxEVT_END_SESSION) +DEFINE_EVENT_TYPE(wxEVT_QUERY_END_SESSION) +DEFINE_EVENT_TYPE(wxEVT_ACTIVATE_APP) +DEFINE_EVENT_TYPE(wxEVT_POWER) +DEFINE_EVENT_TYPE(wxEVT_ACTIVATE) +DEFINE_EVENT_TYPE(wxEVT_CREATE) +DEFINE_EVENT_TYPE(wxEVT_DESTROY) +DEFINE_EVENT_TYPE(wxEVT_SHOW) +DEFINE_EVENT_TYPE(wxEVT_ICONIZE) +DEFINE_EVENT_TYPE(wxEVT_MAXIMIZE) +DEFINE_EVENT_TYPE(wxEVT_MOUSE_CAPTURE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_PAINT) +DEFINE_EVENT_TYPE(wxEVT_ERASE_BACKGROUND) +DEFINE_EVENT_TYPE(wxEVT_NC_PAINT) +DEFINE_EVENT_TYPE(wxEVT_PAINT_ICON) +DEFINE_EVENT_TYPE(wxEVT_MENU_CHAR) +DEFINE_EVENT_TYPE(wxEVT_MENU_INIT) +DEFINE_EVENT_TYPE(wxEVT_MENU_HIGHLIGHT) +DEFINE_EVENT_TYPE(wxEVT_POPUP_MENU_INIT) +DEFINE_EVENT_TYPE(wxEVT_CONTEXT_MENU) +DEFINE_EVENT_TYPE(wxEVT_SYS_COLOUR_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_SETTING_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_QUERY_NEW_PALETTE) +DEFINE_EVENT_TYPE(wxEVT_PALETTE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_JOY_BUTTON_DOWN) +DEFINE_EVENT_TYPE(wxEVT_JOY_BUTTON_UP) +DEFINE_EVENT_TYPE(wxEVT_JOY_MOVE) +DEFINE_EVENT_TYPE(wxEVT_JOY_ZMOVE) +DEFINE_EVENT_TYPE(wxEVT_DROP_FILES) +DEFINE_EVENT_TYPE(wxEVT_DRAW_ITEM) +DEFINE_EVENT_TYPE(wxEVT_MEASURE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMPARE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_INIT_DIALOG) +DEFINE_EVENT_TYPE(wxEVT_IDLE) +DEFINE_EVENT_TYPE(wxEVT_UPDATE_UI) // Generic command events // Note: a click is a higher-level event than button down/up -wxEventType wxEVT_COMMAND_LEFT_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_LEFT_DCLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_RIGHT_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_RIGHT_DCLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_SET_FOCUS = wxNewEventType(); -wxEventType wxEVT_COMMAND_KILL_FOCUS = wxNewEventType(); -wxEventType wxEVT_COMMAND_ENTER = wxNewEventType(); - -// Tree control event types -wxEventType wxEVT_COMMAND_TREE_BEGIN_DRAG = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_BEGIN_RDRAG = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_END_LABEL_EDIT = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_DELETE_ITEM = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_GET_INFO = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_SET_INFO = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_EXPANDED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_EXPANDING = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_COLLAPSED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_COLLAPSING = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_SEL_CHANGED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_SEL_CHANGING = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_KEY_DOWN = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_ACTIVATED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_TREE_END_DRAG = wxNewEventType(); - -// List control event types -wxEventType wxEVT_COMMAND_LIST_BEGIN_DRAG = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_BEGIN_RDRAG = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_END_LABEL_EDIT = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_DELETE_ITEM = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_GET_INFO = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_SET_INFO = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_ITEM_SELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_ITEM_DESELECTED = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_KEY_DOWN = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_INSERT_ITEM = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_COL_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK = wxNewEventType(); -wxEventType wxEVT_COMMAND_LIST_ITEM_ACTIVATED = wxNewEventType(); - -// Tab and notebook control event types -wxEventType wxEVT_COMMAND_TAB_SEL_CHANGED = wxNewEventType(); -wxEventType wxEVT_COMMAND_TAB_SEL_CHANGING = wxNewEventType(); -wxEventType wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED = wxNewEventType(); -wxEventType wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING = wxNewEventType(); - -// Splitter events -wxEventType wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED = wxNewEventType(); -wxEventType wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING = wxNewEventType(); -wxEventType wxEVT_COMMAND_SPLITTER_DOUBLECLICKED = wxNewEventType(); -wxEventType wxEVT_COMMAND_SPLITTER_UNSPLIT = wxNewEventType(); - -// Wizard events -wxEventType wxEVT_WIZARD_PAGE_CHANGED = wxNewEventType(); -wxEventType wxEVT_WIZARD_PAGE_CHANGING = wxNewEventType(); -wxEventType wxEVT_WIZARD_CANCEL = wxNewEventType(); - -// Calendar events -wxEventType wxEVT_CALENDAR_SEL_CHANGED = wxNewEventType(); -wxEventType wxEVT_CALENDAR_DAY_CHANGED = wxNewEventType(); -wxEventType wxEVT_CALENDAR_MONTH_CHANGED = wxNewEventType(); -wxEventType wxEVT_CALENDAR_YEAR_CHANGED = wxNewEventType(); -wxEventType wxEVT_CALENDAR_DOUBLECLICKED = wxNewEventType(); -wxEventType wxEVT_CALENDAR_WEEKDAY_CLICKED = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LEFT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LEFT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_RIGHT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SET_FOCUS) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_KILL_FOCUS) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_ENTER) // Help events -wxEventType wxEVT_HELP = wxNewEventType(); -wxEventType wxEVT_DETAILED_HELP = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_HELP) +DEFINE_EVENT_TYPE(wxEVT_DETAILED_HELP) #endif // !WXWIN_COMPATIBILITY_EVENT_TYPES @@ -811,8 +744,14 @@ wxEvtHandler::~wxEvtHandler() wxNode *node = m_dynamicEvents->First(); while (node) { +#if WXWIN_COMPATIBILITY_EVENT_TYPES + wxEventTableEntry *entry = (wxEventTableEntry*)node->Data(); +#else // !WXWIN_COMPATIBILITY_EVENT_TYPES wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)node->Data(); - if (entry->m_callbackUserData) delete entry->m_callbackUserData; +#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES + + if (entry->m_callbackUserData) + delete entry->m_callbackUserData; delete entry; node = node->Next(); } @@ -1076,7 +1015,7 @@ void wxEvtHandler::Connect( int id, int lastId, wxObject *userData ) { #if WXWIN_COMPATIBILITY_EVENT_TYPES - wxDynamicEventTableEntry *entry = new wxDynamicEventTableEntry; + wxEventTableEntry *entry = new wxEventTableEntry; entry->m_eventType = eventType; entry->m_id = id; entry->m_lastId = lastId; @@ -1103,14 +1042,20 @@ bool wxEvtHandler::Disconnect( int id, int lastId, wxEventType eventType, wxNode *node = m_dynamicEvents->First(); while (node) { - wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)node->Data(); +#if WXWIN_COMPATIBILITY_EVENT_TYPES + wxEventTableEntry *entry = (wxEventTableEntry*)node->Data(); +#else // !WXWIN_COMPATIBILITY_EVENT_TYPES + wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)node->Data(); +#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES + if ((entry->m_id == id) && ((entry->m_lastId == lastId) || (lastId == -1)) && ((entry->m_eventType == eventType) || (eventType == wxEVT_NULL)) && ((entry->m_fn == func) || (func == (wxObjectEventFunction)NULL)) && ((entry->m_callbackUserData == userData) || (userData == (wxObject*)NULL))) { - if (entry->m_callbackUserData) delete entry->m_callbackUserData; + if (entry->m_callbackUserData) + delete entry->m_callbackUserData; m_dynamicEvents->DeleteNode( node ); delete entry; return TRUE; @@ -1130,7 +1075,11 @@ bool wxEvtHandler::SearchDynamicEventTable( wxEvent& event ) wxNode *node = m_dynamicEvents->First(); while (node) { - wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)node->Data(); +#if WXWIN_COMPATIBILITY_EVENT_TYPES + wxEventTableEntry *entry = (wxEventTableEntry*)node->Data(); +#else // !WXWIN_COMPATIBILITY_EVENT_TYPES + wxDynamicEventTableEntry *entry = (wxDynamicEventTableEntry*)node->Data(); +#endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES if (entry->m_fn) { diff --git a/src/common/process.cpp b/src/common/process.cpp index 5a3f23843a..7d9cdbec72 100644 --- a/src/common/process.cpp +++ b/src/common/process.cpp @@ -26,6 +26,8 @@ #include "wx/process.h" +DEFINE_EVENT_TYPE(wxEVT_END_PROCESS) + IMPLEMENT_DYNAMIC_CLASS(wxProcess, wxEvtHandler) IMPLEMENT_DYNAMIC_CLASS(wxProcessEvent, wxEvent) diff --git a/src/generic/calctrl.cpp b/src/generic/calctrl.cpp index f2ecd265a1..bc80003652 100644 --- a/src/generic/calctrl.cpp +++ b/src/generic/calctrl.cpp @@ -97,6 +97,17 @@ END_EVENT_TABLE() IMPLEMENT_DYNAMIC_CLASS(wxCalendarCtrl, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxCalendarEvent, wxCommandEvent) +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_SEL_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_DAY_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_MONTH_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_YEAR_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_DOUBLECLICKED) +DEFINE_EVENT_TYPE(wxEVT_CALENDAR_WEEKDAY_CLICKED) + // ============================================================================ // implementation // ============================================================================ diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp index d6de399fb8..517fd8d5ea 100644 --- a/src/generic/grid.cpp +++ b/src/generic/grid.cpp @@ -100,21 +100,21 @@ WX_DEFINE_OBJARRAY(wxGridCellWithAttrArray) // events // ---------------------------------------------------------------------------- -const int wxEVT_GRID_CELL_LEFT_CLICK = wxNewEventType(); -const int wxEVT_GRID_CELL_RIGHT_CLICK = wxNewEventType(); -const int wxEVT_GRID_CELL_LEFT_DCLICK = wxNewEventType(); -const int wxEVT_GRID_CELL_RIGHT_DCLICK = wxNewEventType(); -const int wxEVT_GRID_LABEL_LEFT_CLICK = wxNewEventType(); -const int wxEVT_GRID_LABEL_RIGHT_CLICK = wxNewEventType(); -const int wxEVT_GRID_LABEL_LEFT_DCLICK = wxNewEventType(); -const int wxEVT_GRID_LABEL_RIGHT_DCLICK = wxNewEventType(); -const int wxEVT_GRID_ROW_SIZE = wxNewEventType(); -const int wxEVT_GRID_COL_SIZE = wxNewEventType(); -const int wxEVT_GRID_RANGE_SELECT = wxNewEventType(); -const int wxEVT_GRID_CELL_CHANGE = wxNewEventType(); -const int wxEVT_GRID_SELECT_CELL = wxNewEventType(); -const int wxEVT_GRID_EDITOR_SHOWN = wxNewEventType(); -const int wxEVT_GRID_EDITOR_HIDDEN = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_LEFT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_LEFT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_RIGHT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_LABEL_LEFT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_LABEL_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_LABEL_LEFT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_LABEL_RIGHT_DCLICK) +DEFINE_EVENT_TYPE(wxEVT_GRID_ROW_SIZE) +DEFINE_EVENT_TYPE(wxEVT_GRID_COL_SIZE) +DEFINE_EVENT_TYPE(wxEVT_GRID_RANGE_SELECT) +DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_CHANGE) +DEFINE_EVENT_TYPE(wxEVT_GRID_SELECT_CELL) +DEFINE_EVENT_TYPE(wxEVT_GRID_EDITOR_SHOWN) +DEFINE_EVENT_TYPE(wxEVT_GRID_EDITOR_HIDDEN) // ---------------------------------------------------------------------------- // private classes diff --git a/src/generic/laywin.cpp b/src/generic/laywin.cpp index 26fb6fdf52..da48775938 100644 --- a/src/generic/laywin.cpp +++ b/src/generic/laywin.cpp @@ -33,8 +33,8 @@ IMPLEMENT_DYNAMIC_CLASS(wxQueryLayoutInfoEvent, wxEvent) IMPLEMENT_DYNAMIC_CLASS(wxCalculateLayoutEvent, wxEvent) -const int wxEVT_QUERY_LAYOUT_INFO = wxNewEventType(); -const int wxEVT_CALCULATE_LAYOUT = wxNewEventType(); +DEFINE_EVENT_TYPE(wxEVT_QUERY_LAYOUT_INFO) +DEFINE_EVENT_TYPE(wxEVT_CALCULATE_LAYOUT) #if wxUSE_SASH IMPLEMENT_CLASS(wxSashLayoutWindow, wxSashWindow) diff --git a/src/generic/listctrl.cpp b/src/generic/listctrl.cpp index a0fdcc1519..6b42edf1be 100644 --- a/src/generic/listctrl.cpp +++ b/src/generic/listctrl.cpp @@ -34,6 +34,27 @@ #define wxUSE_GENERIC_LIST_EXTENSIONS 1 #endif +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_DRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_RDRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_END_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_GET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_SET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_DESELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_KEY_DOWN) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_INSERT_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_COL_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_ACTIVATED) + // ============================================================================ // private classes // ============================================================================ diff --git a/src/generic/notebook.cpp b/src/generic/notebook.cpp index 97019ea950..4396754399 100644 --- a/src/generic/notebook.cpp +++ b/src/generic/notebook.cpp @@ -45,6 +45,9 @@ // event table // ---------------------------------------------------------------------------- +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + BEGIN_EVENT_TABLE(wxNotebook, wxControl) EVT_NOTEBOOK_PAGE_CHANGED(-1, wxNotebook::OnSelChange) EVT_SIZE(wxNotebook::OnSize) @@ -216,7 +219,7 @@ bool wxNotebook::SetPageImage(int nPage, int nImage) } void wxNotebook::SetImageList(wxImageList* imageList) -{ +{ m_pImageList = imageList; // TODO } @@ -474,7 +477,7 @@ bool wxNotebook::RefreshLayout(bool force) rect.y = tabHeight + 4; rect.width = cw - 8; rect.height = ch - 4 - rect.y ; - + m_tabView->SetViewRect(rect); m_tabView->LayoutTabs(); @@ -487,7 +490,7 @@ bool wxNotebook::RefreshLayout(bool force) rect.y = tabHeight + 4; rect.width = cw - 8; rect.height = ch - 4 - rect.y ; - + m_tabView->SetViewRect(rect); m_tabView->LayoutTabs(); @@ -634,7 +637,7 @@ wxRect wxNotebook::GetAvailableClientSize() /* * wxNotebookTabView */ - + IMPLEMENT_CLASS(wxNotebookTabView, wxTabView) wxNotebookTabView::wxNotebookTabView(wxNotebook *notebook, long style): wxTabView(style) @@ -656,12 +659,7 @@ void wxNotebookTabView::OnTabActivate(int activateId, int deactivateId) if (!m_notebook) return; -// Because of name truncation! -#if defined(__BORLANDC__) && defined(__WIN16__) - wxNotebookEvent event(wxEVT_COMMAND_NB_PAGE_CHANGED, m_notebook->GetId()); -#else wxNotebookEvent event(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, m_notebook->GetId()); -#endif #if defined (__WIN16__) int activatePos = activateId; diff --git a/src/generic/splitter.cpp b/src/generic/splitter.cpp index c018dc781d..30f6a94f25 100644 --- a/src/generic/splitter.cpp +++ b/src/generic/splitter.cpp @@ -34,6 +34,11 @@ #include "wx/settings.h" #include "wx/log.h" +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_DOUBLECLICKED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_UNSPLIT) + IMPLEMENT_DYNAMIC_CLASS(wxSplitterWindow, wxWindow) IMPLEMENT_DYNAMIC_CLASS(wxSplitterEvent, wxCommandEvent) diff --git a/src/generic/treectlg.cpp b/src/generic/treectlg.cpp index 6a24217b12..f1555f340b 100644 --- a/src/generic/treectlg.cpp +++ b/src/generic/treectlg.cpp @@ -38,6 +38,29 @@ #include "wx/dcclient.h" #include "wx/msgdlg.h" +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_DRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_RDRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_DELETE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_GET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_KEY_DOWN) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_ACTIVATED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_DRAG) + // ----------------------------------------------------------------------------- // array types // ----------------------------------------------------------------------------- diff --git a/src/generic/wizard.cpp b/src/generic/wizard.cpp index cd776451c2..65360bcda5 100644 --- a/src/generic/wizard.cpp +++ b/src/generic/wizard.cpp @@ -49,6 +49,10 @@ WX_DEFINE_ARRAY(wxPanel *, wxArrayPages); // event tables and such // ---------------------------------------------------------------------------- +DEFINE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_WIZARD_PAGE_CHANGING) +DEFINE_EVENT_TYPE(wxEVT_WIZARD_CANCEL) + BEGIN_EVENT_TABLE(wxWizard, wxDialog) EVT_BUTTON(wxID_CANCEL, wxWizard::OnCancel) EVT_BUTTON(-1, wxWizard::OnBackOrNext) diff --git a/src/gtk/notebook.cpp b/src/gtk/notebook.cpp index 1554c9e801..78f0ebc9d6 100644 --- a/src/gtk/notebook.cpp +++ b/src/gtk/notebook.cpp @@ -26,6 +26,13 @@ #include "wx/gtk/win_gtk.h" #include +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + //----------------------------------------------------------------------------- // idle system //----------------------------------------------------------------------------- diff --git a/src/gtk1/notebook.cpp b/src/gtk1/notebook.cpp index 1554c9e801..78f0ebc9d6 100644 --- a/src/gtk1/notebook.cpp +++ b/src/gtk1/notebook.cpp @@ -26,6 +26,13 @@ #include "wx/gtk/win_gtk.h" #include +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + //----------------------------------------------------------------------------- // idle system //----------------------------------------------------------------------------- diff --git a/src/msw/dialup.cpp b/src/msw/dialup.cpp index a1eacacb75..910b0aa98d 100644 --- a/src/msw/dialup.cpp +++ b/src/msw/dialup.cpp @@ -52,6 +52,9 @@ #include "wx/dialup.h" +DEFINE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED) +DEFINE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED) + // Doesn't yet compile under VC++ 4, BC++, mingw, Watcom C++: no wininet.h #if !defined(__BORLANDC__) && !defined(__GNUWIN32_OLD__) && !defined(__GNUWIN32__) && !defined(__WATCOMC__) && ! (defined(__VISUALC__) && (__VISUALC__ < 1020)) diff --git a/src/msw/listctrl.cpp b/src/msw/listctrl.cpp index d6fa5bda8b..2180a54210 100644 --- a/src/msw/listctrl.cpp +++ b/src/msw/listctrl.cpp @@ -72,9 +72,26 @@ static void wxConvertToMSWListItem(const wxListCtrl *ctrl, wxListItem& info, LV_ static void wxConvertFromMSWListItem(const wxListCtrl *ctrl, wxListItem& info, LV_ITEM& tvItem, HWND getFullInfo = 0); // ---------------------------------------------------------------------------- -// macros +// events // ---------------------------------------------------------------------------- +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_DRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_RDRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_END_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_GET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_SET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_SELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_DESELECTED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_KEY_DOWN) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_INSERT_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_COL_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_ACTIVATED) + IMPLEMENT_DYNAMIC_CLASS(wxListCtrl, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxListItem, wxObject) diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index dbaa99823a..426b8af2a0 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -81,6 +81,9 @@ // event table // ---------------------------------------------------------------------------- +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + BEGIN_EVENT_TABLE(wxNotebook, wxControl) EVT_NOTEBOOK_PAGE_CHANGED(-1, wxNotebook::OnSelChange) diff --git a/src/msw/tabctrl.cpp b/src/msw/tabctrl.cpp index 78f329f0d8..f4ffc5d16f 100644 --- a/src/msw/tabctrl.cpp +++ b/src/msw/tabctrl.cpp @@ -46,6 +46,9 @@ IMPLEMENT_DYNAMIC_CLASS(wxTabCtrl, wxControl) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TAB_SEL_CHANGING) + BEGIN_EVENT_TABLE(wxTabCtrl, wxControl) EVT_SYS_COLOUR_CHANGED(wxTabCtrl::OnSysColourChanged) END_EVENT_TABLE() diff --git a/src/msw/treectrl.cpp b/src/msw/treectrl.cpp index c4866985e6..8c2580a1d7 100644 --- a/src/msw/treectrl.cpp +++ b/src/msw/treectrl.cpp @@ -88,6 +88,29 @@ // looks quite ugly. #define wxUSE_CHECKBOXES_IN_MULTI_SEL_TREE 0 +// ---------------------------------------------------------------------------- +// events +// ---------------------------------------------------------------------------- + +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_DRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_RDRAG) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_LABEL_EDIT) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_DELETE_ITEM) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_GET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SET_INFO) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_EXPANDING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_COLLAPSING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_SEL_CHANGING) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_KEY_DOWN) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_ACTIVATED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_TREE_END_DRAG) + // ---------------------------------------------------------------------------- // private functions // ---------------------------------------------------------------------------- diff --git a/src/unix/dialup.cpp b/src/unix/dialup.cpp index f64e45fd90..54797d807c 100644 --- a/src/unix/dialup.cpp +++ b/src/unix/dialup.cpp @@ -46,6 +46,9 @@ #include #include +DEFINE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED) +DEFINE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED) + // ---------------------------------------------------------------------------- // A class which groups functions dealing with connecting to the network from a // workstation using dial-up access to the net. There is at most one instance -- 2.45.2