1 /////////////////////////////////////////////////////////////////////////////
 
   3 // Purpose:     SWIG interface for wxAcceleratorTable
 
   7 // Created:     03-July-1997
 
   9 // Copyright:   (c) 2003 by Total Control Software
 
  10 // Licence:     wxWindows license
 
  11 /////////////////////////////////////////////////////////////////////////////
 
  16 //---------------------------------------------------------------------------
 
  18 %typemap(in) (int n, const wxAcceleratorEntry* entries) {
 
  19     $2 = wxAcceleratorEntry_LIST_helper($input);
 
  20     if ($2) $1 = PyList_Size($input);
 
  24 %typemap(freearg) wxAcceleratorEntry* entries {
 
  30 //---------------------------------------------------------------------------
 
  41 DocStr(wxAcceleratorEntry,
 
  42 "A class used to define items in an `wx.AcceleratorTable`.  wxPython
 
  43 programs can choose to use wx.AcceleratorEntry objects, but using a
 
  44 list of 3-tuple of integers (flags, keyCode, cmdID) usually works just
 
  45 as well.  See `__init__` for details of the tuple values.
 
  47 :see: `wx.AcceleratorTable`", "");
 
  49 class wxAcceleratorEntry {
 
  52         wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmdID = 0/*, wxMenuItem *menuitem = NULL*/),
 
  53         "Construct a wx.AcceleratorEntry.",
 
  55     :param flags: A bitmask of wx.ACCEL_ALT, wx.ACCEL_SHIFT,
 
  56                 wx.ACCEL_CTRL, wx.ACCEL_CMD,  or wx.ACCEL_NORMAL
 
  57                 used to specify which modifier keys are held down.
 
  58     :param keyCode: The keycode to be detected
 
  59     :param cmdID: The menu or control command ID to use for the
 
  62     ~wxAcceleratorEntry();
 
  65         void , Set(int flags, int keyCode, int cmd/*, wxMenuItem *menuItem = NULL*/),
 
  66         "(Re)set the attributes of a wx.AcceleratorEntry.
 
  67 :see `__init__`", "");
 
  70 //     void SetMenuItem(wxMenuItem *item);
 
  71 //     wxMenuItem *GetMenuItem() const;
 
  75         static wxAcceleratorEntry *, Create(const wxString& str),
 
  76         "Create accelerator corresponding to the specified string, or None if
 
  77 it coulnd't be parsed.", "");
 
  81         "Get the AcceleratorEntry's flags.", "");
 
  85         "Get the AcceleratorEntry's keycode.", "");
 
  89         "Get the AcceleratorEntry's command ID.", "");
 
  97         wxString , ToString() const,
 
  98         "Returns a string representation for the this accelerator.  The string
 
  99 is formatted using the <flags>-<keycode> format where <flags> maybe a
 
 100 hyphen-separed list of \"shift|alt|ctrl\"
 
 105         bool , FromString(const wxString &str),
 
 106         "Returns true if the given string correctly initialized this object.", "");
 
 109     %property(Command, GetCommand, doc="See `GetCommand`");
 
 110     %property(Flags, GetFlags, doc="See `GetFlags`");
 
 111     %property(KeyCode, GetKeyCode, doc="See `GetKeyCode`");
 
 119 DocStr(wxAcceleratorTable,
 
 120 "An accelerator table allows the application to specify a table of
 
 121 keyboard shortcuts for menus or other commands. On Windows, menu or
 
 122 button commands are supported; on GTK, only menu commands are
 
 125 The object ``wx.NullAcceleratorTable`` is defined to be a table with
 
 126 no data, and is the initial accelerator table for a window.
 
 128 An accelerator takes precedence over normal processing and can be a
 
 129 convenient way to program some event handling. For example, you can
 
 130 use an accelerator table to make a hotkey generate an event no matter
 
 131 which window within a frame has the focus.
 
 135     aTable = wx.AcceleratorTable([(wx.ACCEL_ALT,  ord('X'), exitID),
 
 136                                   (wx.ACCEL_CTRL, ord('H'), helpID),
 
 137                                   (wx.ACCEL_CTRL, ord('F'), findID),
 
 138                                   (wx.ACCEL_NORMAL, wx.WXK_F3, findnextID)
 
 140     self.SetAcceleratorTable(aTable)
 
 143 :see: `wx.AcceleratorEntry`, `wx.Window.SetAcceleratorTable`
 
 146 class wxAcceleratorTable : public wxObject {
 
 148     DocAStr(wxAcceleratorTable,
 
 149             "__init__(entries) -> AcceleratorTable",
 
 150             "Construct an AcceleratorTable from a list of `wx.AcceleratorEntry`
 
 151 items or or of 3-tuples (flags, keyCode, cmdID)
 
 153 :see: `wx.AcceleratorEntry`", "");
 
 154     wxAcceleratorTable(int n, const wxAcceleratorEntry* entries);
 
 155     ~wxAcceleratorTable();
 
 158     %pythoncode { Ok = IsOk }
 
 164 const wxAcceleratorTable wxNullAcceleratorTable;
 
 168 wxAcceleratorEntry *wxGetAccelFromString(const wxString& label);
 
 170 //---------------------------------------------------------------------------