]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/_controls.py
wxCheckListBox doesn't require wxUSE_OWNER_DRAWN when using WXUNIVERSAL
[wxWidgets.git] / wxPython / src / mac / _controls.py
index 1fa4f849d24db6eebad7b399a73ce99250fde11e..d7847bedba8b05d5ec602c5aac34d1bc56d87e68 100644 (file)
@@ -502,31 +502,6 @@ class Choice(_core.ControlWithItems):
         """
         return _controls_.Choice_Create(*args, **kwargs)
 
         """
         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):
-        """
-        SetStringSelection(self, String string) -> bool
-
-        Select the item with the specifed string
-        """
-        return _controls_.Choice_SetStringSelection(*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
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -1376,7 +1351,8 @@ class ListBox(_core.ControlWithItems):
         """
         Select(self, int n)
 
         """
         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)
 
         """
         return _controls_.ListBox_Select(*args, **kwargs)
 
@@ -1561,9 +1537,12 @@ TE_PASSWORD = _controls_.TE_PASSWORD
 TE_AUTO_URL = _controls_.TE_AUTO_URL
 TE_NOHIDESEL = _controls_.TE_NOHIDESEL
 TE_DONTWRAP = _controls_.TE_DONTWRAP
 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_WORDWRAP = _controls_.TE_WORDWRAP
+TE_BESTWRAP = _controls_.TE_BESTWRAP
+TE_LINEWRAP = _controls_.TE_LINEWRAP
 TE_RICH2 = _controls_.TE_RICH2
 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
 TEXT_ALIGNMENT_DEFAULT = _controls_.TEXT_ALIGNMENT_DEFAULT
 TEXT_ALIGNMENT_LEFT = _controls_.TEXT_ALIGNMENT_LEFT
 TEXT_ALIGNMENT_CENTRE = _controls_.TEXT_ALIGNMENT_CENTRE
@@ -2125,8 +2104,6 @@ class ScrollBar(_core.Control):
         """
         SetScrollbar(self, int position, int thumbSize, int range, int pageSize, 
             bool refresh=True)
         """
         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)
 
         """
         return _controls_.ScrollBar_SetScrollbar(*args, **kwargs)
 
@@ -2655,6 +2632,7 @@ def RadioButton_GetClassDefaultAttributes(*args, **kwargs):
 
 SL_HORIZONTAL = _controls_.SL_HORIZONTAL
 SL_VERTICAL = _controls_.SL_VERTICAL
 
 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
 SL_AUTOTICKS = _controls_.SL_AUTOTICKS
 SL_LABELS = _controls_.SL_LABELS
 SL_LEFT = _controls_.SL_LEFT
@@ -3072,7 +3050,12 @@ class BookCtrlBaseEvent(_core.NotifyEvent):
         self.thisown = 1
         del newobj.thisown
     def GetSelection(*args, **kwargs):
         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):
         return _controls_.BookCtrlBaseEvent_GetSelection(*args, **kwargs)
 
     def SetSelection(*args, **kwargs):
@@ -3241,7 +3224,7 @@ class NotebookPage(wx.Panel):
     """
     There is an old (and apparently unsolvable) bug when placing a
     window with a nonstandard background colour in a wx.Notebook on
     """
     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
     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
@@ -3375,6 +3358,10 @@ class Choicebook(BookCtrlBase):
         """IsVertical(self) -> bool"""
         return _controls_.Choicebook_IsVertical(*args, **kwargs)
 
         """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)
     def DeleteAllPages(*args, **kwargs):
         """DeleteAllPages(self) -> bool"""
         return _controls_.Choicebook_DeleteAllPages(*args, **kwargs)
@@ -3509,8 +3496,8 @@ class NotebookSizerPtr(NotebookSizer):
         self.__class__ = NotebookSizer
 _controls_.NotebookSizer_swigregister(NotebookSizerPtr)
 
         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.") 
+NotebookSizer.__init__ = wx._deprecated(NotebookSizer.__init__, "NotebookSizer is no longer needed.") 
+BookCtrlSizer.__init__ = wx._deprecated(BookCtrlSizer.__init__, "BookCtrlSizer is no longer needed.") 
 #---------------------------------------------------------------------------
 
 TOOL_STYLE_BUTTON = _controls_.TOOL_STYLE_BUTTON
 #---------------------------------------------------------------------------
 
 TOOL_STYLE_BUTTON = _controls_.TOOL_STYLE_BUTTON
@@ -4751,7 +4738,7 @@ class ListCtrl(_core.Control):
         HitTest(Point point) -> (item, where)
 
         Determines which item (if any) is at the specified point, giving
         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)
 
         """
         return _controls_.ListCtrl_HitTest(*args, **kwargs)
 
@@ -4771,10 +4758,11 @@ class ListCtrl(_core.Control):
         """InsertImageStringItem(self, long index, String label, int imageIndex) -> long"""
         return _controls_.ListCtrl_InsertImageStringItem(*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, 
     def InsertColumn(*args, **kwargs):
         """
         InsertColumn(self, long col, String heading, int format=LIST_FORMAT_LEFT, 
@@ -4833,7 +4821,7 @@ class ListCtrl(_core.Control):
 
     def IsSelected(self, idx):
         '''return True if the item is selected'''
 
     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)
 
     def SetColumnImage(self, col, image):
         item = self.GetColumn(col)
@@ -5156,7 +5144,7 @@ EVT_TREE_ITEM_MIDDLE_CLICK = wx.PyEventBinder(wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLI
 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_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"""
 
 class TreeEvent(_core.NotifyEvent):
     """Proxy of C++ TreeEvent class"""
@@ -5224,6 +5212,10 @@ class TreeEvent(_core.NotifyEvent):
         """SetToolTip(self, String toolTip)"""
         return _controls_.TreeEvent_SetToolTip(*args, **kwargs)
 
         """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):
 
 class TreeEventPtr(TreeEvent):
     def __init__(self, this):
@@ -5812,6 +5804,10 @@ class PyControl(_core.Control):
         """SetBestSize(self, Size size)"""
         return _controls_.PyControl_SetBestSize(*args, **kwargs)
 
         """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)
     def base_DoMoveWindow(*args, **kwargs):
         """base_DoMoveWindow(self, int x, int y, int width, int height)"""
         return _controls_.PyControl_base_DoMoveWindow(*args, **kwargs)
@@ -5888,10 +5884,6 @@ class PyControl(_core.Control):
         """base_ShouldInheritColours(self) -> bool"""
         return _controls_.PyControl_base_ShouldInheritColours(*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_GetDefaultAttributes(*args, **kwargs):
         """base_GetDefaultAttributes(self) -> VisualAttributes"""
         return _controls_.PyControl_base_GetDefaultAttributes(*args, **kwargs)
@@ -6355,4 +6347,124 @@ def DragListItem(*args, **kwargs):
     val.thisown = 1
     return val
 
     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
+