X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0eae5d09992c634488c5be14d5a378d6e1dedb71..88f67c2242209b8a752b515fdec30fd6ef858a18:/wxPython/src/_event.i diff --git a/wxPython/src/_event.i b/wxPython/src/_event.i index a0b5fc1a42..553f0e1cf6 100644 --- a/wxPython/src/_event.i +++ b/wxPython/src/_event.i @@ -37,6 +37,7 @@ enum Propagation_state wxEventType wxNewEventType(); +%constant wxEventType wxEVT_ANY; %constant wxEventType wxEVT_NULL; %constant wxEventType wxEVT_FIRST; @@ -433,14 +434,13 @@ it returns false. Note: Exists only for optimization purposes.", ""); DocDeclStr( void , Skip(bool skip = true), - "Called by an event handler, it controls whether additional event -handlers bound to this event will be called after the current event -handler returns. Skip(false) (the default setting) will prevent -additional event handlers from being called and control will be -returned to the sender of the event immediately after the current -handler has finished. Skip(True) will cause the event processing -system to continue searching for a handler function for this event. -", ""); + "This method can be used inside an event handler to control whether +further event handlers bound to this event will be called after the +current one returns. Without Skip() (or equivalently if Skip(False) is +used), the event will not be processed any more. If Skip(True) is +called, the event processing system continues searching for a further +handler function for this event, even though it has been processed +already in the current handler.", ""); DocDeclStr( bool , GetSkipped() const, @@ -475,6 +475,13 @@ example, you can use the value returned by an earlier call to // all derived classes must implement it because otherwise wxPostEvent() // for them wouldn't work (it needs to do a copy of the event) virtual wxEvent *Clone() /* =0*/; + + %property(EventObject, GetEventObject, SetEventObject, doc="See `GetEventObject` and `SetEventObject`"); + %property(EventType, GetEventType, SetEventType, doc="See `GetEventType` and `SetEventType`"); + %property(Id, GetId, SetId, doc="See `GetId` and `SetId`"); + %property(Skipped, GetSkipped, doc="See `GetSkipped`"); + %property(Timestamp, GetTimestamp, SetTimestamp, doc="See `GetTimestamp` and `SetTimestamp`"); + }; @@ -671,8 +678,8 @@ Events EVT_SCROLL_PAGEDOWN page down events EVT_SCROLL_THUMBTRACK thumbtrack events (frequent events sent as the user drags the 'thumb') - EVT_SCROLL_THUMBRELEASE thumb release events. - EVT_SCROLL_ENDSCROLL End of scrolling + EVT_SCROLL_THUMBRELEASE thumb release events + EVT_SCROLL_CHANGED End of scrolling ======================= ========================================== Note @@ -680,17 +687,17 @@ Note The EVT_SCROLL_THUMBRELEASE event is only emitted when actually dragging the thumb using the mouse and releasing it (This EVT_SCROLL_THUMBRELEASE event is also followed by an - EVT_SCROLL_ENDSCROLL event). + EVT_SCROLL_CHANGED event). - The EVT_SCROLL_ENDSCROLL event also occurs when using the keyboard + The EVT_SCROLL_CHANGED event also occurs when using the keyboard to change the thumb position, and when clicking next to the thumb (In all these cases the EVT_SCROLL_THUMBRELEASE event does not happen). - In short, the EVT_SCROLL_ENDSCROLL event is triggered when + In short, the EVT_SCROLL_CHANGED event is triggered when scrolling/ moving has finished. The only exception (unfortunately) is that changing the thumb position using the mousewheel does give - a EVT_SCROLL_THUMBRELEASE event but NOT an EVT_SCROLL_ENDSCROLL + a EVT_SCROLL_THUMBRELEASE event but NOT an EVT_SCROLL_CHANGED event. "); @@ -713,6 +720,9 @@ the scrollbar.", ""); void SetOrientation(int orient); void SetPosition(int pos); + + %property(Orientation, GetOrientation, SetOrientation, doc="See `GetOrientation` and `SetOrientation`"); + %property(Position, GetPosition, SetPosition, doc="See `GetPosition` and `SetPosition`"); }; @@ -735,8 +745,8 @@ Events EVT_SCROLLWIN_PAGEDOWN page down events EVT_SCROLLWIN_THUMBTRACK thumbtrack events (frequent events sent as the user drags the 'thumb') - EVT_SCROLLWIN_THUMBRELEASE thumb release events. - EVT_SCROLLWIN_ENDSCROLL End of scrolling + EVT_SCROLLWIN_THUMBRELEASE thumb release events + EVT_SCROLLWIN_CHANGED End of scrolling ========================== ========================================== :see: `wx.ScrollEvent` @@ -761,6 +771,9 @@ need to query the window itself for the current position in that case.", ""); void SetOrientation(int orient); void SetPosition(int pos); + + %property(Orientation, GetOrientation, SetOrientation, doc="See `GetOrientation` and `SetOrientation`"); + %property(Position, GetPosition, SetPosition, doc="See `GetPosition` and `SetPosition`"); }; //--------------------------------------------------------------------------- @@ -830,6 +843,9 @@ enum class wxMouseEvent : public wxEvent { public: + // turn off this typemap + %typemap(out) wxMouseEvent*; + DocCtorStr( wxMouseEvent(wxEventType mouseType = wxEVT_NULL), "Constructs a wx.MouseEvent. Valid event types are: @@ -848,6 +864,8 @@ public: * wxEVT_MOTION * wxEVT_MOUSEWHEEL ", ""); + // Turn it back on again + %typemap(out) wxMouseEvent* { $result = wxPyMake_wxObject($1, $owner); } DocDeclStr( bool , IsButton() const, @@ -1069,6 +1087,12 @@ have been accumulated before scrolling.", ""); taken, and one such action (for example, scrolling one increment) should occur for each delta.", ""); + DocDeclStr( + int , GetWheelAxis() const, + "Gets the axis the wheel operation concerns, 0 being the y axis as on +most mouse wheels, 1 is the x axis for things like MightyMouse scrolls +or horizontal trackpad scrolling.", ""); + DocDeclStr( int , GetLinesPerAction() const, @@ -1097,6 +1121,15 @@ public: int m_wheelRotation; int m_wheelDelta; int m_linesPerAction; + + %property(Button, GetButton, doc="See `GetButton`"); + %property(LinesPerAction, GetLinesPerAction, doc="See `GetLinesPerAction`"); + %property(LogicalPosition, GetLogicalPosition, doc="See `GetLogicalPosition`"); + %property(Position, GetPosition, doc="See `GetPosition`"); + %property(WheelDelta, GetWheelDelta, doc="See `GetWheelDelta`"); + %property(WheelRotation, GetWheelRotation, doc="See `GetWheelRotation`"); + %property(X, GetX, doc="See `GetX`"); + %property(Y, GetY, doc="See `GetY`"); }; //--------------------------------------------------------------------------- @@ -1139,6 +1172,9 @@ public: bool , HasCursor() const, "Returns true if the cursor specified by this event is a valid cursor.", ""); + %property(Cursor, GetCursor, SetCursor, doc="See `GetCursor` and `SetCursor`"); + %property(X, GetX, doc="See `GetX`"); + %property(Y, GetY, doc="See `GetY`"); }; //--------------------------------------------------------------------------- @@ -1320,7 +1356,8 @@ Note that in Unicode build, the returned value is meaningful only if the user entered a character that can be represented in current locale's default charset. You can obtain the corresponding Unicode character using `GetUnicodeKey`.", ""); - %pythoncode { KeyCode = GetKeyCode } + +// %pythoncode { KeyCode = GetKeyCode } this will be hidden by the property %extend { @@ -1401,6 +1438,15 @@ public: wxUint32 m_rawCode; wxUint32 m_rawFlags; + + %property(KeyCode, GetKeyCode, doc="See `GetKeyCode`"); + %property(Modifiers, GetModifiers, doc="See `GetModifiers`"); + %property(Position, GetPosition, doc="See `GetPosition`"); + %property(RawKeyCode, GetRawKeyCode, doc="See `GetRawKeyCode`"); + %property(RawKeyFlags, GetRawKeyFlags, doc="See `GetRawKeyFlags`"); + %property(UnicodeKey, GetUnicodeKey, SetUnicodeKey, doc="See `GetUnicodeKey` and `SetUnicodeKey`"); + %property(X, GetX, doc="See `GetX`"); + %property(Y, GetY, doc="See `GetY`"); }; //--------------------------------------------------------------------------- @@ -1446,9 +1492,11 @@ event.", ""); } } -public: wxSize m_size; wxRect m_rect; + + %property(Rect, GetRect, SetRect, doc="See `GetRect` and `SetRect`"); + %property(Size, GetSize, SetSize, doc="See `GetSize` and `SetSize`"); }; @@ -1478,6 +1526,10 @@ public: m_pos = property(GetPosition, SetPosition) m_rect = property(GetRect, SetRect) } + + %property(Position, GetPosition, SetPosition, doc="See `GetPosition` and `SetPosition`"); + %property(Rect, GetRect, SetRect, doc="See `GetRect` and `SetRect`"); + }; //--------------------------------------------------------------------------- @@ -1539,6 +1591,8 @@ public: "Returns the device context the event handler should draw upon. If ``None`` is returned then create a temporary `wx.ClientDC` and use that instead.", ""); + + %property(DC, GetDC, doc="See `GetDC`"); }; @@ -1571,15 +1625,22 @@ window which is going to receive focus for the wxEVT_KILL_FOCUS event. Warning: the window returned may be None!", ""); void SetWindow(wxWindow *win); + + %property(Window, GetWindow, SetWindow, doc="See `GetWindow` and `SetWindow`"); }; //--------------------------------------------------------------------------- %newgroup; DocStr(wxChildFocusEvent, -"wx.ChildFocusEvent notifies the parent that a child has received the -focus. Unlike `wx.FocusEvent` it is propagated up the window -heirarchy.", ""); +"A child focus event is sent to a (parent-)window when one of its child +windows gains focus, so that the window could restore the focus back +to its corresponding child if it loses it now and regains later. + +Notice that child window is the direct child of the window receiving +the event, and so may not be the actual widget recieving focus if it +is further down the containment heirarchy. Use `wx.Window.FindFocus` +to get the widget that is actually receiving focus.", ""); class wxChildFocusEvent : public wxCommandEvent @@ -1591,7 +1652,8 @@ public: DocDeclStr( wxWindow *, GetWindow() const, - "The window which has just received the focus.", ""); + "The window, or (grand)parent of the window which has just received the +focus.", ""); %property(Window, GetWindow, doc="See `GetWindow`"); }; @@ -1719,6 +1781,8 @@ be used with the OPEN and CLOSE events.", ""); "Returns the menu which is being opened or closed. This method should only be used with the OPEN and CLOSE events.", ""); + %property(Menu, GetMenu, doc="See `GetMenu`"); + %property(MenuId, GetMenuId, doc="See `GetMenuId`"); }; //--------------------------------------------------------------------------- @@ -1800,8 +1864,6 @@ code wishes to force the application to exit, and so this function must be called to check this.", ""); %property(LoggingOff, GetLoggingOff, SetLoggingOff, doc="See `GetLoggingOff` and `SetLoggingOff`"); - %property(Veto, GetVeto, doc="See `GetVeto`"); - }; @@ -1819,6 +1881,7 @@ public: void SetShow(bool show); bool GetShow() const; + %property(Show, GetShow, SetShow, doc="See `GetShow` and `SetShow`"); }; @@ -2112,6 +2175,10 @@ The mode may be one of the following values: all windows, or only to those which specify that they will process the events.", ""); + %property(Checked, GetChecked, Check, doc="See `GetChecked`"); + %property(Enabled, GetEnabled, Enable, doc="See `GetEnabled`"); + %property(Shown, GetShown, Show, doc="See `GetShown`"); + %property(Text, GetText, SetText, doc="See `GetText` and `SetText`"); }; //--------------------------------------------------------------------------- @@ -2161,6 +2228,7 @@ public: "Returns the window that gained the capture, or ``None`` if it was a non-wxWidgets window.", ""); + %property(CapturedWindow, GetCapturedWindow, doc="See `GetCapturedWindow`"); }; //--------------------------------------------------------------------------- @@ -2222,6 +2290,7 @@ public: void SetChangedWindow(wxWindow* win); wxWindow* GetChangedWindow(); + %property(ChangedWindow, GetChangedWindow, SetChangedWindow, doc="See `GetChangedWindow` and `SetChangedWindow`"); }; //--------------------------------------------------------------------------- @@ -2245,6 +2314,8 @@ public: "App should set this if it changes the palette.", ""); bool GetPaletteRealized() const; + + %property(PaletteRealized, GetPaletteRealized, SetPaletteRealized, doc="See `GetPaletteRealized` and `SetPaletteRealized`"); }; //--------------------------------------------------------------------------- @@ -2327,6 +2398,10 @@ This is required for proper navogation over radio buttons.", ""); WinChange, FromTab }; + + %property(CurrentFocus, GetCurrentFocus, SetCurrentFocus, doc="See `GetCurrentFocus` and `SetCurrentFocus`"); + %property(Direction, GetDirection, SetDirection, doc="See `GetDirection` and `SetDirection`"); + }; //--------------------------------------------------------------------------- @@ -2346,6 +2421,7 @@ public: wxWindow *, GetWindow() const, "Returns the window that this event refers to.", ""); + %property(Window, GetWindow, doc="See `GetWindow`"); }; @@ -2367,6 +2443,8 @@ public: DocDeclStr( wxWindow *, GetWindow() const, "Returns the window that this event refers to.", ""); + + %property(Window, GetWindow, doc="See `GetWindow`"); }; @@ -2604,5 +2682,20 @@ internally.", ""); } +//--------------------------------------------------------------------------- + +DocStr(wxEventBlocker, +"Helper class to temporarily disable event handling for a window.", ""); + +class wxEventBlocker : public wxEvtHandler +{ +public: + wxEventBlocker(wxWindow *win, wxEventType type = wxEVT_ANY); + virtual ~wxEventBlocker(); + + void Block(wxEventType type); +}; + + //--------------------------------------------------------------------------- //---------------------------------------------------------------------------