]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/event.h
Upported combobox changes and another fix.
[wxWidgets.git] / include / wx / event.h
index c5d9a283b743dc473367f5b7264c287aeb9c0996..a8f7d3dcccfe4adab7a954688ee1f03a8bf80c8d 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef _WX_EVENTH__
 #define _WX_EVENTH__
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
     #pragma interface "event.h"
 #endif
 
@@ -74,7 +74,7 @@ typedef int wxEventType;
 #define BEGIN_DECLARE_EVENT_TYPES() enum {
 #define END_DECLARE_EVENT_TYPES() };
 #define DECLARE_EVENT_TYPE(name, value) name = wxEVT_FIRST + value,
-#define DECLARE_LOCAL_EVENT_TYPE(name, value) name = wxEVT_FIRST + value,
+#define DECLARE_LOCAL_EVENT_TYPE(name, value) name = wxEVT_USER_FIRST + value,
 #define DEFINE_EVENT_TYPE(name)
 #define DEFINE_LOCAL_EVENT_TYPE(name)
 
@@ -107,7 +107,7 @@ BEGIN_DECLARE_EVENT_TYPES()
 #else // !WXWIN_COMPATIBILITY_EVENT_TYPES
     // it is important to still have these as constants to avoid
     // initialization order related problems
-    DECLARE_EVENT_TYPE(wxEVT_NULL,0);
+    DECLARE_EVENT_TYPE(wxEVT_NULL, 0)
     const wxEventType wxEVT_FIRST = 10000;
     const wxEventType wxEVT_USER_FIRST = wxEVT_FIRST + 2000;
 #endif // WXWIN_COMPATIBILITY_EVENT_TYPES/!WXWIN_COMPATIBILITY_EVENT_TYPES
@@ -546,9 +546,9 @@ class WXDLLEXPORT wxScrollWinEvent : public wxEvent
 public:
     wxScrollWinEvent(wxEventType commandType = wxEVT_NULL,
                      int pos = 0, int orient = 0);
-       wxScrollWinEvent(const wxScrollWinEvent & event) : wxEvent(event)
-               {       m_commandInt = event.m_commandInt;
-                       m_extraLong = event.m_extraLong;        }
+    wxScrollWinEvent(const wxScrollWinEvent & event) : wxEvent(event)
+        {    m_commandInt = event.m_commandInt;
+            m_extraLong = event.m_extraLong;    }
 
     int GetOrientation() const { return (int) m_extraLong ; }
     int GetPosition() const { return m_commandInt ; }
@@ -606,13 +606,10 @@ enum
 
 class WXDLLEXPORT wxMouseEvent : public wxEvent
 {
-private:
-    wxMouseEvent& operator=(const wxMouseEvent& event);
-       
 public:
     wxMouseEvent(wxEventType mouseType = wxEVT_NULL);
-    wxMouseEvent(const wxMouseEvent& event)    : wxEvent(event)
-               { Assign(event); }
+    wxMouseEvent(const wxMouseEvent& event)    : wxEvent(event)
+        { Assign(event); }
 
     // Was it a button event? (*doesn't* mean: is any button *down*?)
     bool IsButton() const { return Button(wxMOUSE_BTN_ANY); }
@@ -741,8 +738,13 @@ public:
     // wheel action.  Defaults to one.
     int GetLinesPerAction() const { return m_linesPerAction; }
 
+    // Is the system set to do page scrolling?
+    bool IsPageScroll() const { return ((unsigned int)m_linesPerAction == UINT_MAX); }
+
     virtual wxEvent *Clone() const { return new wxMouseEvent(*this); }
 
+    wxMouseEvent& operator=(const wxMouseEvent& event) { Assign(event); return *this; }
+
 public:
     wxCoord m_x, m_y;
 
@@ -780,10 +782,12 @@ public:
           m_x(x), m_y(y), m_cursor()
         { }
 
-       wxSetCursorEvent(const wxSetCursorEvent & event) : wxEvent(event)
-               {       m_x = event.m_x;
-                       m_y = event.m_y;
-                       m_cursor = event.m_cursor;      }
+    wxSetCursorEvent(const wxSetCursorEvent & event)
+        : wxEvent(event),
+          m_x(event.m_x),
+          m_y(event.m_y),
+          m_cursor(event.m_cursor)
+        { }
 
     wxCoord GetX() const { return m_x; }
     wxCoord GetY() const { return m_y; }
@@ -815,22 +819,7 @@ class WXDLLEXPORT wxKeyEvent : public wxEvent
 {
 public:
     wxKeyEvent(wxEventType keyType = wxEVT_NULL);
-       wxKeyEvent(const wxKeyEvent& evt) : wxEvent(evt)
-    {
-        m_x = evt.m_x;
-        m_y = evt.m_y;
-               
-        m_keyCode = evt.m_keyCode;
-               
-        m_controlDown = evt.m_controlDown;
-        m_shiftDown = evt.m_shiftDown;
-        m_altDown = evt.m_altDown;
-        m_metaDown = evt.m_metaDown;
-        m_scanCode = evt.m_scanCode;
-        m_rawCode = evt.m_rawCode;
-        m_rawFlags = evt.m_rawFlags;
-    }
-       
+    wxKeyEvent(const wxKeyEvent& evt);
 
     // Find state of shift/control keys
     bool ControlDown() const { return m_controlDown; }
@@ -876,8 +865,8 @@ public:
     // Get Y position
     wxCoord GetY() const { return m_y; }
 
-    // deprecated
-    long KeyCode() const { return m_keyCode; }
+    // deprecated, Use GetKeyCode instead.
+    wxDEPRECATED( long KeyCode() const );
 
     virtual wxEvent *Clone() const { return new wxKeyEvent(*this); }
 
@@ -912,8 +901,14 @@ public:
     bool          m_metaDown;
     bool          m_scanCode;
 
-    // these fields contain the platform-specific information about the pressed
-    // key
+#if wxUSE_UNICODE
+    // This contains the full Unicode character
+    // in a character events in Unicode mode
+    wxChar        m_uniChar;
+#endif
+
+    // these fields contain the platform-specific information about
+    // key that was pressed
     wxUint32      m_rawCode;
     wxUint32      m_rawFlags;
 
@@ -936,10 +931,10 @@ public:
           m_size(sz)
         { }
     wxSizeEvent(const wxSizeEvent & event)
-               : wxEvent(event),
-                 m_size(event.m_size)
-               { }
-       
+        : wxEvent(event),
+          m_size(event.m_size)
+        { }
+
     wxSize GetSize() const { return m_size; }
 
     virtual wxEvent *Clone() const { return new wxSizeEvent(*this); }
@@ -969,9 +964,9 @@ public:
         { }
     wxMoveEvent(const wxMoveEvent& event)
         : wxEvent(event),
-                 m_pos(event.m_pos)
-       { }
-       
+          m_pos(event.m_pos)
+    { }
+
     wxPoint GetPosition() const { return m_pos; }
 
     virtual wxEvent *Clone() const { return new wxMoveEvent(*this); }
@@ -1127,8 +1122,8 @@ public:
         { m_active = active; }
     wxActivateEvent(const wxActivateEvent& event)
         : wxEvent(event)
-       { m_active = event.m_active; }
-       
+    { m_active = event.m_active; }
+
     bool GetActive() const { return m_active; }
 
     virtual wxEvent *Clone() const { return new wxActivateEvent(*this); }
@@ -1173,8 +1168,8 @@ public:
         { m_menuId = id; }
     wxMenuEvent(const wxMenuEvent & event)
         : wxEvent(event)
-       { m_menuId = event.m_menuId; }
-       
+    { m_menuId = event.m_menuId; }
+
     // only for wxEVT_MENU_HIGHLIGHT
     int GetMenuId() const { return m_menuId; }
 
@@ -1211,15 +1206,15 @@ public:
     }
     wxCloseEvent(const wxCloseEvent & event)
         : wxEvent(event),
-               m_loggingOff(event.m_loggingOff),
-               m_veto(event.m_veto),
-               m_canVeto(event.m_canVeto)
+        m_loggingOff(event.m_loggingOff),
+        m_veto(event.m_veto),
+        m_canVeto(event.m_canVeto)
     {
 #if WXWIN_COMPATIBILITY
         m_force = event.m_force;
 #endif // WXWIN_COMPATIBILITY
-       }
-       
+    }
+
     void SetLoggingOff(bool logOff) { m_loggingOff = logOff; }
     bool GetLoggingOff() const { return m_loggingOff; }
 
@@ -1271,8 +1266,8 @@ public:
         { m_show = show; }
     wxShowEvent(const wxShowEvent & event)
         : wxEvent(event)
-       { m_show = event.m_show; }
-       
+    { m_show = event.m_show; }
+
     void SetShow(bool show) { m_show = show; }
     bool GetShow() const { return m_show; }
 
@@ -1297,8 +1292,8 @@ public:
         { m_iconized = iconized; }
     wxIconizeEvent(const wxIconizeEvent & event)
         : wxEvent(event)
-       { m_iconized = event.m_iconized; }
-       
+    { m_iconized = event.m_iconized; }
+
     // return true if the frame was iconized, false if restored
     bool Iconized() const { return m_iconized; }
 
@@ -1374,14 +1369,14 @@ public:
     {
     }
     wxJoystickEvent(const wxJoystickEvent & event)
-               : wxEvent(event),
-                 m_pos(event.m_pos),
-                 m_zPosition(event.m_zPosition),
-                 m_buttonChange(event.m_buttonChange),
-                 m_buttonState(event.m_buttonState),
-                 m_joyStick(event.m_joyStick)
+        : wxEvent(event),
+          m_pos(event.m_pos),
+          m_zPosition(event.m_zPosition),
+          m_buttonChange(event.m_buttonChange),
+          m_buttonState(event.m_buttonState),
+          m_joyStick(event.m_joyStick)
     { }
-       
+
     wxPoint GetPosition() const { return m_pos; }
     int GetZPosition() const { return m_zPosition; }
     int GetButtonState() const { return m_buttonState; }
@@ -1492,19 +1487,19 @@ public:
         m_checked =
         m_enabled =
         m_setEnabled =
-        m_setText = 
+        m_setText =
         m_setChecked = FALSE;
     }
     wxUpdateUIEvent(const wxUpdateUIEvent & event)
         : wxCommandEvent(event),
-                 m_checked(event.m_checked),
-                 m_enabled(event.m_enabled),
-                 m_setEnabled(event.m_setEnabled),
-                 m_setText(event.m_setText),
-                 m_setChecked(event.m_setChecked),
-                 m_text(event.m_text)
-       { }
-       
+          m_checked(event.m_checked),
+          m_enabled(event.m_enabled),
+          m_setEnabled(event.m_setEnabled),
+          m_setText(event.m_setText),
+          m_setChecked(event.m_setChecked),
+          m_text(event.m_text)
+    { }
+
     bool GetChecked() const { return m_checked; }
     bool GetEnabled() const { return m_enabled; }
     wxString GetText() const { return m_text; }
@@ -1641,9 +1636,9 @@ public:
         { }
     wxQueryNewPaletteEvent(const wxQueryNewPaletteEvent & event)
         : wxEvent(event),
-               m_paletteRealized(event.m_paletteRealized)
-       { }
-       
+        m_paletteRealized(event.m_paletteRealized)
+    { }
+
     // App sets this if it changes the palette.
     void SetPaletteRealized(bool realized) { m_paletteRealized = realized; }
     bool GetPaletteRealized() const { return m_paletteRealized; }
@@ -1776,11 +1771,11 @@ public:
     { }
     wxHelpEvent(const wxHelpEvent & event)
         : wxCommandEvent(event),
-                 m_pos(event.m_pos),
-                 m_target(event.m_target),
-                 m_link(event.m_link)
+          m_pos(event.m_pos),
+          m_target(event.m_target),
+          m_link(event.m_link)
     { }
-       
+
     // Position of event (in screen coordinates)
     const wxPoint& GetPosition() const { return m_pos; }
     void SetPosition(const wxPoint& pos) { m_pos = pos; }
@@ -1823,9 +1818,9 @@ public:
     { }
     wxContextMenuEvent(const wxContextMenuEvent & event)
         : wxCommandEvent(event),
-               m_pos(event.m_pos)
+        m_pos(event.m_pos)
     { }
-       
+
     // Position of event (in screen coordinates)
     const wxPoint& GetPosition() const { return m_pos; }
     void SetPosition(const wxPoint& pos) { m_pos = pos; }
@@ -1853,9 +1848,9 @@ public:
         { }
     wxIdleEvent(const wxIdleEvent & event)
         : wxEvent(event),
-               m_requestMore(event.m_requestMore)
-       { }
-       
+          m_requestMore(event.m_requestMore)
+    { }
+
     void RequestMore(bool needMore = TRUE) { m_requestMore = needMore; }
     bool MoreRequested() const { return m_requestMore; }
 
@@ -2160,8 +2155,8 @@ typedef void (wxEvtHandler::*wxUpdateUIEventFunction)(wxUpdateUIEvent&);
 typedef void (wxEvtHandler::*wxIdleEventFunction)(wxIdleEvent&);
 typedef void (wxEvtHandler::*wxCloseEventFunction)(wxCloseEvent&);
 typedef void (wxEvtHandler::*wxShowEventFunction)(wxShowEvent&);
-typedef void (wxEvtHandler::*wxIconizeEventFunction)(wxShowEvent&);
-typedef void (wxEvtHandler::*wxMaximizeEventFunction)(wxShowEvent&);
+typedef void (wxEvtHandler::*wxIconizeEventFunction)(wxIconizeEvent&);
+typedef void (wxEvtHandler::*wxMaximizeEventFunction)(wxMaximizeEvent&);
 typedef void (wxEvtHandler::*wxNavigationKeyEventFunction)(wxNavigationKeyEvent&);
 typedef void (wxEvtHandler::*wxPaletteChangedEventFunction)(wxPaletteChangedEvent&);
 typedef void (wxEvtHandler::*wxQueryNewPaletteEventFunction)(wxQueryNewPaletteEvent&);
@@ -2371,15 +2366,22 @@ typedef void (wxEvtHandler::*wxMouseCaptureChangedEventFunction)(wxMouseCaptureC
 #define EVT_COMMAND_ENTER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_ENTER, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) & fn, (wxObject *) NULL ),
 
 // Joystick events
-#define EVT_JOY_DOWN(func) \
+
+#define EVT_JOY_BUTTON_DOWN(func) \
  DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_DOWN, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
-#define EVT_JOY_UP(func) \
+#define EVT_JOY_BUTTON_UP(func) \
  DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_UP, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
 #define EVT_JOY_MOVE(func) \
  DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_MOVE, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
 #define EVT_JOY_ZMOVE(func) \
  DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_ZMOVE, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
 
+// These are obsolete, see _BUTTON_ events
+#define EVT_JOY_DOWN(func) \
+ DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_DOWN, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
+#define EVT_JOY_UP(func) \
+ DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_UP, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),
+
 // All joystick events
 #define EVT_JOYSTICK_EVENTS(func) \
  DECLARE_EVENT_TABLE_ENTRY( wxEVT_JOY_BUTTON_DOWN, wxID_ANY, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL ),\