def __init__(self, *args, **kwargs):
"""
__init__(Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize,
- List choices=[], long style=0, Validator validator=DefaultValidator,
+ List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
String name=ChoiceNameStr) -> Choice
Create and show a Choice control
def Create(*args, **kwargs):
"""
Create(Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize,
- List choices=[], long style=0, Validator validator=DefaultValidator,
+ List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
String name=ChoiceNameStr) -> bool
Actually create the GUI Choice control for 2-phase creation
"""
return _controls_.Choice_Create(*args, **kwargs)
- def SetSelection(*args, **kwargs):
- """
- SetSelection(self, int n)
-
- Select the n'th item (zero based) in the list.
- """
- return _controls_.Choice_SetSelection(*args, **kwargs)
-
- def SetStringSelection(*args, **kwargs):
+ def GetCurrentSelection(*args, **kwargs):
"""
- SetStringSelection(self, String string) -> bool
+ GetCurrentSelection(self) -> int
- Select the item with the specifed string
+ Unlike `GetSelection` which only returns the accepted selection value,
+ i.e. the selection in the control once the user closes the dropdown
+ list, this function returns the current selection. That is, while the
+ dropdown list is shown, it returns the currently selected item in
+ it. When it is not shown, its result is the same as for the other
+ function.
"""
- return _controls_.Choice_SetStringSelection(*args, **kwargs)
+ return _controls_.Choice_GetCurrentSelection(*args, **kwargs)
- def SetString(*args, **kwargs):
- """
- SetString(self, int n, String string)
-
- Set the label for the n'th item (zero based) in the list.
- """
- return _controls_.Choice_SetString(*args, **kwargs)
-
- Select = SetSelection
def GetClassDefaultAttributes(*args, **kwargs):
"""
GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
"""
__init__(Window parent, int id, String value=EmptyString,
Point pos=DefaultPosition, Size size=DefaultSize,
- List choices=[], long style=0, Validator validator=DefaultValidator,
+ List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
String name=ComboBoxNameStr) -> ComboBox
Constructor, creates and shows a ComboBox control.
"""
Create(Window parent, int id, String value=EmptyString,
Point pos=DefaultPosition, Size size=DefaultSize,
- List choices=[], long style=0, Validator validator=DefaultValidator,
+ List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
String name=ChoiceNameStr) -> bool
Actually create the GUI wxComboBox control for 2-phase creation
"""
return _controls_.ComboBox_GetMark(*args, **kwargs)
+ def GetCurrentSelection(*args, **kwargs):
+ """
+ GetCurrentSelection(self) -> int
+
+ Unlike `GetSelection` which only returns the accepted selection value,
+ i.e. the selection in the control once the user closes the dropdown
+ list, this function returns the current selection. That is, while the
+ dropdown list is shown, it returns the currently selected item in
+ it. When it is not shown, its result is the same as for the other
+ function.
+ """
+ return _controls_.ComboBox_GetCurrentSelection(*args, **kwargs)
+
def SetStringSelection(*args, **kwargs):
"""
SetStringSelection(self, String string) -> bool
"""
return _controls_.StaticText_Create(*args, **kwargs)
+ def Wrap(*args, **kwargs):
+ """
+ Wrap(self, int width)
+
+ This functions wraps the control's label so that each of its lines
+ becomes at most ``width`` pixels wide if possible (the lines are
+ broken at words boundaries so it might not be the case if words are
+ too long). If ``width`` is negative, no wrapping is done.
+ """
+ return _controls_.StaticText_Wrap(*args, **kwargs)
+
def GetClassDefaultAttributes(*args, **kwargs):
"""
GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
"""
Select(self, int n)
- Sets the item at index 'n' to be the selected item.
+ This is the same as `SetSelection` and exists only because it is
+ slightly more natural for controls which support multiple selection.
"""
return _controls_.ListBox_Select(*args, **kwargs)
TE_AUTO_URL = _controls_.TE_AUTO_URL
TE_NOHIDESEL = _controls_.TE_NOHIDESEL
TE_DONTWRAP = _controls_.TE_DONTWRAP
-TE_LINEWRAP = _controls_.TE_LINEWRAP
+TE_CHARWRAP = _controls_.TE_CHARWRAP
TE_WORDWRAP = _controls_.TE_WORDWRAP
+TE_BESTWRAP = _controls_.TE_BESTWRAP
+TE_LINEWRAP = _controls_.TE_LINEWRAP
TE_RICH2 = _controls_.TE_RICH2
+TE_CAPITALIZE = _controls_.TE_CAPITALIZE
TEXT_ALIGNMENT_DEFAULT = _controls_.TEXT_ALIGNMENT_DEFAULT
TEXT_ALIGNMENT_LEFT = _controls_.TEXT_ALIGNMENT_LEFT
TEXT_ALIGNMENT_CENTRE = _controls_.TEXT_ALIGNMENT_CENTRE
"""
SetScrollbar(self, int position, int thumbSize, int range, int pageSize,
bool refresh=True)
-
- Sets the scrollbar properties of a built-in scrollbar.
"""
return _controls_.ScrollBar_SetScrollbar(*args, **kwargs)
SL_HORIZONTAL = _controls_.SL_HORIZONTAL
SL_VERTICAL = _controls_.SL_VERTICAL
+SL_TICKS = _controls_.SL_TICKS
SL_AUTOTICKS = _controls_.SL_AUTOTICKS
SL_LABELS = _controls_.SL_LABELS
SL_LEFT = _controls_.SL_LEFT
self.thisown = 1
del newobj.thisown
def GetSelection(*args, **kwargs):
- """GetSelection(self) -> int"""
+ """
+ GetSelection(self) -> int
+
+ Returns item index for a listbox or choice selection event (not valid
+ for a deselection).
+ """
return _controls_.BookCtrlBaseEvent_GetSelection(*args, **kwargs)
def SetSelection(*args, **kwargs):
"""
There is an old (and apparently unsolvable) bug when placing a
window with a nonstandard background colour in a wx.Notebook on
- wxGTK, as the notbooks's background colour would always be used
+ wxGTK1, as the notbooks's background colour would always be used
when the window is refreshed. The solution is to place a panel in
the notbook and the coloured window on the panel, sized to cover
the panel. This simple class does that for you, just put an
"""IsVertical(self) -> bool"""
return _controls_.Choicebook_IsVertical(*args, **kwargs)
+ def GetChoiceCtrl(*args, **kwargs):
+ """GetChoiceCtrl(self) -> Choice"""
+ return _controls_.Choicebook_GetChoiceCtrl(*args, **kwargs)
+
def DeleteAllPages(*args, **kwargs):
"""DeleteAllPages(self) -> bool"""
return _controls_.Choicebook_DeleteAllPages(*args, **kwargs)
#---------------------------------------------------------------------------
-class BookCtrlSizer(_core.Sizer):
- """Proxy of C++ BookCtrlSizer class"""
- def __repr__(self):
- return "<%s.%s; proxy of C++ wxBookCtrlSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
- def __init__(self, *args, **kwargs):
- """__init__(self, BookCtrlBase nb) -> BookCtrlSizer"""
- newobj = _controls_.new_BookCtrlSizer(*args, **kwargs)
- self.this = newobj.this
- self.thisown = 1
- del newobj.thisown
- self._setOORInfo(self)
-
- def RecalcSizes(*args, **kwargs):
- """
- RecalcSizes(self)
-
- Using the sizes calculated by `CalcMin` reposition and resize all the
- items managed by this sizer. You should not need to call this directly as
- it is called by `Layout`.
- """
- return _controls_.BookCtrlSizer_RecalcSizes(*args, **kwargs)
-
- def CalcMin(*args, **kwargs):
- """
- CalcMin(self) -> Size
-
- This method is where the sizer will do the actual calculation of its
- children's minimal sizes. You should not need to call this directly as
- it is called by `Layout`.
- """
- return _controls_.BookCtrlSizer_CalcMin(*args, **kwargs)
-
- def GetControl(*args, **kwargs):
- """GetControl(self) -> BookCtrlBase"""
- return _controls_.BookCtrlSizer_GetControl(*args, **kwargs)
-
-
-class BookCtrlSizerPtr(BookCtrlSizer):
- def __init__(self, this):
- self.this = this
- if not hasattr(self,"thisown"): self.thisown = 0
- self.__class__ = BookCtrlSizer
-_controls_.BookCtrlSizer_swigregister(BookCtrlSizerPtr)
-
-class NotebookSizer(_core.Sizer):
- """Proxy of C++ NotebookSizer class"""
- def __repr__(self):
- return "<%s.%s; proxy of C++ wxNotebookSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
- def __init__(self, *args, **kwargs):
- """__init__(self, Notebook nb) -> NotebookSizer"""
- newobj = _controls_.new_NotebookSizer(*args, **kwargs)
- self.this = newobj.this
- self.thisown = 1
- del newobj.thisown
- self._setOORInfo(self)
-
- def RecalcSizes(*args, **kwargs):
- """
- RecalcSizes(self)
-
- Using the sizes calculated by `CalcMin` reposition and resize all the
- items managed by this sizer. You should not need to call this directly as
- it is called by `Layout`.
- """
- return _controls_.NotebookSizer_RecalcSizes(*args, **kwargs)
-
- def CalcMin(*args, **kwargs):
- """
- CalcMin(self) -> Size
-
- This method is where the sizer will do the actual calculation of its
- children's minimal sizes. You should not need to call this directly as
- it is called by `Layout`.
- """
- return _controls_.NotebookSizer_CalcMin(*args, **kwargs)
-
- def GetNotebook(*args, **kwargs):
- """GetNotebook(self) -> Notebook"""
- return _controls_.NotebookSizer_GetNotebook(*args, **kwargs)
-
-
-class NotebookSizerPtr(NotebookSizer):
- def __init__(self, this):
- self.this = this
- if not hasattr(self,"thisown"): self.thisown = 0
- self.__class__ = NotebookSizer
-_controls_.NotebookSizer_swigregister(NotebookSizerPtr)
-
-NotebookSizer = wx._deprecated(NotebookSizer, "NotebookSizer is no longer needed.")
-BookCtrlSizer = wx._deprecated(BookCtrlSizer, "BookCtrlSizer is no longer needed.")
#---------------------------------------------------------------------------
TOOL_STYLE_BUTTON = _controls_.TOOL_STYLE_BUTTON
wxEVT_COMMAND_LIST_COL_DRAGGING = _controls_.wxEVT_COMMAND_LIST_COL_DRAGGING
wxEVT_COMMAND_LIST_COL_END_DRAG = _controls_.wxEVT_COMMAND_LIST_COL_END_DRAG
wxEVT_COMMAND_LIST_ITEM_FOCUSED = _controls_.wxEVT_COMMAND_LIST_ITEM_FOCUSED
-wxEVT_COMMAND_LIST_GET_INFO = _controls_.wxEVT_COMMAND_LIST_GET_INFO
-wxEVT_COMMAND_LIST_SET_INFO = _controls_.wxEVT_COMMAND_LIST_SET_INFO
EVT_LIST_BEGIN_DRAG = wx.PyEventBinder(wxEVT_COMMAND_LIST_BEGIN_DRAG , 1)
EVT_LIST_BEGIN_RDRAG = wx.PyEventBinder(wxEVT_COMMAND_LIST_BEGIN_RDRAG , 1)
EVT_LIST_BEGIN_LABEL_EDIT = wx.PyEventBinder(wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT , 1)
EVT_LIST_END_LABEL_EDIT = wx.PyEventBinder(wxEVT_COMMAND_LIST_END_LABEL_EDIT , 1)
EVT_LIST_DELETE_ITEM = wx.PyEventBinder(wxEVT_COMMAND_LIST_DELETE_ITEM , 1)
EVT_LIST_DELETE_ALL_ITEMS = wx.PyEventBinder(wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS , 1)
-EVT_LIST_GET_INFO = wx.PyEventBinder(wxEVT_COMMAND_LIST_GET_INFO , 1)
-EVT_LIST_SET_INFO = wx.PyEventBinder(wxEVT_COMMAND_LIST_SET_INFO , 1)
+
+
+
+
EVT_LIST_ITEM_SELECTED = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_SELECTED , 1)
EVT_LIST_ITEM_DESELECTED = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_DESELECTED , 1)
EVT_LIST_KEY_DOWN = wx.PyEventBinder(wxEVT_COMMAND_LIST_KEY_DOWN , 1)
EVT_LIST_COL_END_DRAG = wx.PyEventBinder(wxEVT_COMMAND_LIST_COL_END_DRAG , 1)
EVT_LIST_ITEM_FOCUSED = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_FOCUSED , 1)
-EVT_LIST_GET_INFO = wx._deprecated(EVT_LIST_GET_INFO)
-EVT_LIST_SET_INFO = wx._deprecated(EVT_LIST_SET_INFO)
+
+
+
#---------------------------------------------------------------------------
HitTest(Point point) -> (item, where)
Determines which item (if any) is at the specified point, giving
- in the second return value (see wxLIST_HITTEST_... flags.)
+ in the second return value (see wx.LIST_HITTEST flags.)
"""
return _controls_.ListCtrl_HitTest(*args, **kwargs)
"""InsertImageStringItem(self, long index, String label, int imageIndex) -> long"""
return _controls_.ListCtrl_InsertImageStringItem(*args, **kwargs)
- def InsertColumnInfo(*args, **kwargs):
- """InsertColumnInfo(self, long col, ListItem info) -> long"""
- return _controls_.ListCtrl_InsertColumnInfo(*args, **kwargs)
+ def InsertColumnItem(*args, **kwargs):
+ """InsertColumnItem(self, long col, ListItem info) -> long"""
+ return _controls_.ListCtrl_InsertColumnItem(*args, **kwargs)
+ InsertColumnInfo = InsertColumnItem
def InsertColumn(*args, **kwargs):
"""
InsertColumn(self, long col, String heading, int format=LIST_FORMAT_LEFT,
"""GetItemBackgroundColour(self, long item) -> Colour"""
return _controls_.ListCtrl_GetItemBackgroundColour(*args, **kwargs)
+ def SetItemFont(*args, **kwargs):
+ """SetItemFont(self, long item, Font f)"""
+ return _controls_.ListCtrl_SetItemFont(*args, **kwargs)
+
+ def GetItemFont(*args, **kwargs):
+ """GetItemFont(self, long item) -> Font"""
+ return _controls_.ListCtrl_GetItemFont(*args, **kwargs)
+
#
# Some helpers...
def Select(self, idx, on=1):
def IsSelected(self, idx):
'''return True if the item is selected'''
- return self.GetItemState(idx, wx.LIST_STATE_SELECTED) != 0
+ return (self.GetItemState(idx, wx.LIST_STATE_SELECTED) & wx.LIST_STATE_SELECTED) != 0
def SetColumnImage(self, col, image):
item = self.GetColumn(col)
EVT_TREE_END_DRAG = wx.PyEventBinder(wxEVT_COMMAND_TREE_END_DRAG , 1)
EVT_TREE_STATE_IMAGE_CLICK = wx.PyEventBinder(wxEVT_COMMAND_TREE_STATE_IMAGE_CLICK, 1)
EVT_TREE_ITEM_GETTOOLTIP = wx.PyEventBinder(wxEVT_COMMAND_TREE_ITEM_GETTOOLTIP, 1)
-EVT_COMMAND_TREE_ITEM_MENU = wx.PyEventBinder(wxEVT_COMMAND_TREE_ITEM_MENU, 1)
+EVT_TREE_ITEM_MENU = wx.PyEventBinder(wxEVT_COMMAND_TREE_ITEM_MENU, 1)
class TreeEvent(_core.NotifyEvent):
"""Proxy of C++ TreeEvent class"""
"""SetToolTip(self, String toolTip)"""
return _controls_.TreeEvent_SetToolTip(*args, **kwargs)
+ def GetToolTip(*args, **kwargs):
+ """GetToolTip(self) -> String"""
+ return _controls_.TreeEvent_GetToolTip(*args, **kwargs)
+
class TreeEventPtr(TreeEvent):
def __init__(self, this):
"""SetBestSize(self, Size size)"""
return _controls_.PyControl_SetBestSize(*args, **kwargs)
+ def DoEraseBackground(*args, **kwargs):
+ """DoEraseBackground(self, DC dc) -> bool"""
+ return _controls_.PyControl_DoEraseBackground(*args, **kwargs)
+
def base_DoMoveWindow(*args, **kwargs):
"""base_DoMoveWindow(self, int x, int y, int width, int height)"""
return _controls_.PyControl_base_DoMoveWindow(*args, **kwargs)
"""base_ShouldInheritColours(self) -> bool"""
return _controls_.PyControl_base_ShouldInheritColours(*args, **kwargs)
- def base_ApplyParentThemeBackground(*args, **kwargs):
- """base_ApplyParentThemeBackground(self, Colour c)"""
- return _controls_.PyControl_base_ApplyParentThemeBackground(*args, **kwargs)
-
def base_GetDefaultAttributes(*args, **kwargs):
"""base_GetDefaultAttributes(self) -> VisualAttributes"""
return _controls_.PyControl_base_GetDefaultAttributes(*args, **kwargs)
+ def base_OnInternalIdle(*args, **kwargs):
+ """base_OnInternalIdle(self)"""
+ return _controls_.PyControl_base_OnInternalIdle(*args, **kwargs)
+
class PyControlPtr(PyControl):
def __init__(self, this):
val.thisown = 1
return val
+#---------------------------------------------------------------------------
+
+DP_DEFAULT = _controls_.DP_DEFAULT
+DP_SPIN = _controls_.DP_SPIN
+DP_DROPDOWN = _controls_.DP_DROPDOWN
+DP_SHOWCENTURY = _controls_.DP_SHOWCENTURY
+DP_ALLOWNONE = _controls_.DP_ALLOWNONE
+class DatePickerCtrl(_core.Control):
+ """
+ This control allows the user to select a date. Unlike
+ `wx.calendar.CalendarCtrl`, which is a relatively big control,
+ `wx.DatePickerCtrl` is implemented as a small window showing the
+ currently selected date. The control can be edited using the keyboard,
+ and can also display a popup window for more user-friendly date
+ selection, depending on the styles used and the platform.
+ """
+ def __repr__(self):
+ return "<%s.%s; proxy of C++ wxDatePickerCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+ def __init__(self, *args, **kwargs):
+ """
+ __init__(self, Window parent, int id=-1, DateTime dt=wxDefaultDateTime,
+ Point pos=DefaultPosition, Size size=DefaultSize,
+ long style=wxDP_DEFAULT|wxDP_SHOWCENTURY,
+ Validator validator=DefaultValidator,
+ String name=DatePickerCtrlNameStr) -> DatePickerCtrl
+
+ Create a new DatePickerCtrl.
+ """
+ newobj = _controls_.new_DatePickerCtrl(*args, **kwargs)
+ self.this = newobj.this
+ self.thisown = 1
+ del newobj.thisown
+ self._setOORInfo(self)
+
+ def Create(*args, **kwargs):
+ """
+ Create(self, Window parent, int id=-1, DateTime dt=wxDefaultDateTime,
+ Point pos=DefaultPosition, Size size=DefaultSize,
+ long style=wxDP_DEFAULT|wxDP_SHOWCENTURY,
+ Validator validator=DefaultValidator,
+ String name=DatePickerCtrlNameStr) -> bool
+
+ Create the GUI parts of the DatePickerCtrl, for use in 2-phase
+ creation.
+ """
+ return _controls_.DatePickerCtrl_Create(*args, **kwargs)
+
+ def SetValue(*args, **kwargs):
+ """
+ SetValue(self, DateTime dt)
+
+ Changes the current value of the control. The date should be valid and
+ included in the currently selected range, if any.
+
+ Calling this method does not result in a date change event.
+ """
+ return _controls_.DatePickerCtrl_SetValue(*args, **kwargs)
+
+ def GetValue(*args, **kwargs):
+ """
+ GetValue(self) -> DateTime
+
+ Returns the currently selected date. If there is no selection or the
+ selection is outside of the current range, an invalid `wx.DateTime`
+ object is returned.
+ """
+ return _controls_.DatePickerCtrl_GetValue(*args, **kwargs)
+
+ def SetRange(*args, **kwargs):
+ """
+ SetRange(self, DateTime dt1, DateTime dt2)
+
+ Sets the valid range for the date selection. If dt1 is valid, it
+ becomes the earliest date (inclusive) accepted by the control. If dt2
+ is valid, it becomes the latest possible date.
+
+ If the current value of the control is outside of the newly set range
+ bounds, the behaviour is undefined.
+ """
+ return _controls_.DatePickerCtrl_SetRange(*args, **kwargs)
+
+ def GetLowerLimit(*args, **kwargs):
+ """
+ GetLowerLimit(self) -> DateTime
+
+ Get the lower limit of the valid range for the date selection, if any.
+ If there is no range or there is no lower limit, then the
+ `wx.DateTime` value returned will be invalid.
+ """
+ return _controls_.DatePickerCtrl_GetLowerLimit(*args, **kwargs)
+
+ def GetUpperLimit(*args, **kwargs):
+ """
+ GetUpperLimit(self) -> DateTime
+
+ Get the upper limit of the valid range for the date selection, if any.
+ If there is no range or there is no upper limit, then the
+ `wx.DateTime` value returned will be invalid.
+ """
+ return _controls_.DatePickerCtrl_GetUpperLimit(*args, **kwargs)
+
+
+class DatePickerCtrlPtr(DatePickerCtrl):
+ def __init__(self, this):
+ self.this = this
+ if not hasattr(self,"thisown"): self.thisown = 0
+ self.__class__ = DatePickerCtrl
+_controls_.DatePickerCtrl_swigregister(DatePickerCtrlPtr)
+DatePickerCtrlNameStr = cvar.DatePickerCtrlNameStr
+
+def PreDatePickerCtrl(*args, **kwargs):
+ """
+ PreDatePickerCtrl() -> DatePickerCtrl
+
+ Precreate a DatePickerCtrl for use in 2-phase creation.
+ """
+ val = _controls_.new_PreDatePickerCtrl(*args, **kwargs)
+ val.thisown = 1
+ return val
+