X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/09f3d4e679f5742c54fb062ede846b77606a9c5b..32b70aec1ff90877ae0ce2ce82967f698218fbdc:/wxPython/src/msw/controls2.py diff --git a/wxPython/src/msw/controls2.py b/wxPython/src/msw/controls2.py index 3841de93c2..7f39893d1b 100644 --- a/wxPython/src/msw/controls2.py +++ b/wxPython/src/msw/controls2.py @@ -7,6 +7,8 @@ from windows import * from gdi import * +from fonts import * + from clip_dnd import * from events import * @@ -53,6 +55,18 @@ def EVT_LIST_INSERT_ITEM(win, id, func): def EVT_LIST_COL_CLICK(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_COL_CLICK, func) +def EVT_LIST_COL_RIGHT_CLICK(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_COL_RIGHT_CLICK, func) + +def EVT_LIST_COL_BEGIN_DRAG(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_COL_BEGIN_DRAG, func) + +def EVT_LIST_COL_DRAGGING(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_COL_DRAGGING, func) + +def EVT_LIST_COL_END_DRAG(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_COL_END_DRAG, func) + def EVT_LIST_ITEM_RIGHT_CLICK(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, func) @@ -65,6 +79,9 @@ def EVT_LIST_ITEM_ACTIVATED(win, id, func): def EVT_LIST_CACHE_HINT(win, id, func): win.Connect(id, -1, wxEVT_COMMAND_LIST_CACHE_HINT, func) +def EVT_LIST_ITEM_FOCUSED(win, id, func): + win.Connect(id, -1, wxEVT_COMMAND_LIST_ITEM_FOCUSED, func) + # wxTreeCtrl events def EVT_TREE_BEGIN_DRAG(win, id, func): @@ -145,15 +162,15 @@ class wxListItemAttrPtr : return val def GetTextColour(self, *_args, **_kwargs): val = apply(controls2c.wxListItemAttr_GetTextColour,(self,) + _args, _kwargs) - if val: val = wxColourPtr(val) + if val: val = wxColourPtr(val) ; val.thisown = 1 return val def GetBackgroundColour(self, *_args, **_kwargs): val = apply(controls2c.wxListItemAttr_GetBackgroundColour,(self,) + _args, _kwargs) - if val: val = wxColourPtr(val) + if val: val = wxColourPtr(val) ; val.thisown = 1 return val def GetFont(self, *_args, **_kwargs): val = apply(controls2c.wxListItemAttr_GetFont,(self,) + _args, _kwargs) - if val: val = wxFontPtr(val) + if val: val = wxFontPtr(val) ; val.thisown = 1 return val def __repr__(self): return "" % (self.this,) @@ -337,18 +354,9 @@ class wxListEventPtr(wxNotifyEventPtr): def GetIndex(self, *_args, **_kwargs): val = apply(controls2c.wxListEvent_GetIndex,(self,) + _args, _kwargs) return val - def GetOldIndex(self, *_args, **_kwargs): - val = apply(controls2c.wxListEvent_GetOldIndex,(self,) + _args, _kwargs) - return val - def GetOldItem(self, *_args, **_kwargs): - val = apply(controls2c.wxListEvent_GetOldItem,(self,) + _args, _kwargs) - return val def GetColumn(self, *_args, **_kwargs): val = apply(controls2c.wxListEvent_GetColumn,(self,) + _args, _kwargs) return val - def Cancelled(self, *_args, **_kwargs): - val = apply(controls2c.wxListEvent_Cancelled,(self,) + _args, _kwargs) - return val def GetPoint(self, *_args, **_kwargs): val = apply(controls2c.wxListEvent_GetPoint,(self,) + _args, _kwargs) if val: val = wxPointPtr(val) ; val.thisown = 1 @@ -371,22 +379,25 @@ class wxListEventPtr(wxNotifyEventPtr): def GetItem(self, *_args, **_kwargs): val = apply(controls2c.wxListEvent_GetItem,(self,) + _args, _kwargs) return val + def GetCacheFrom(self, *_args, **_kwargs): + val = apply(controls2c.wxListEvent_GetCacheFrom,(self,) + _args, _kwargs) + return val + def GetCacheTo(self, *_args, **_kwargs): + val = apply(controls2c.wxListEvent_GetCacheTo,(self,) + _args, _kwargs) + return val def __setattr__(self,name,value): if name == "m_code" : controls2c.wxListEvent_m_code_set(self,value) return - if name == "m_itemIndex" : - controls2c.wxListEvent_m_itemIndex_set(self,value) - return if name == "m_oldItemIndex" : controls2c.wxListEvent_m_oldItemIndex_set(self,value) return + if name == "m_itemIndex" : + controls2c.wxListEvent_m_itemIndex_set(self,value) + return if name == "m_col" : controls2c.wxListEvent_m_col_set(self,value) return - if name == "m_cancelled" : - controls2c.wxListEvent_m_cancelled_set(self,value) - return if name == "m_pointDrag" : controls2c.wxListEvent_m_pointDrag_set(self,value.this) return @@ -397,14 +408,12 @@ class wxListEventPtr(wxNotifyEventPtr): def __getattr__(self,name): if name == "m_code" : return controls2c.wxListEvent_m_code_get(self) - if name == "m_itemIndex" : - return controls2c.wxListEvent_m_itemIndex_get(self) if name == "m_oldItemIndex" : return controls2c.wxListEvent_m_oldItemIndex_get(self) + if name == "m_itemIndex" : + return controls2c.wxListEvent_m_itemIndex_get(self) if name == "m_col" : return controls2c.wxListEvent_m_col_get(self) - if name == "m_cancelled" : - return controls2c.wxListEvent_m_cancelled_get(self) if name == "m_pointDrag" : return wxPointPtr(controls2c.wxListEvent_m_pointDrag_get(self)) if name == "m_item" : @@ -413,8 +422,9 @@ class wxListEventPtr(wxNotifyEventPtr): def __repr__(self): return "" % (self.this,) class wxListEvent(wxListEventPtr): - def __init__(self,this): - self.this = this + def __init__(self,*_args,**_kwargs): + self.this = apply(controls2c.new_wxListEvent,_args,_kwargs) + self.thisown = 1 @@ -426,8 +436,8 @@ class wxListCtrlPtr(wxControlPtr): def Create(self, *_args, **_kwargs): val = apply(controls2c.wxListCtrl_Create,(self,) + _args, _kwargs) return val - def _setSelf(self, *_args, **_kwargs): - val = apply(controls2c.wxListCtrl__setSelf,(self,) + _args, _kwargs) + def _setCallbackInfo(self, *_args, **_kwargs): + val = apply(controls2c.wxListCtrl__setCallbackInfo,(self,) + _args, _kwargs) return val def SetForegroundColour(self, *_args, **_kwargs): val = apply(controls2c.wxListCtrl_SetForegroundColour,(self,) + _args, _kwargs) @@ -613,22 +623,119 @@ class wxListCtrlPtr(wxControlPtr): def __repr__(self): return "" % (self.this,) + def GetItem(self, *_args, **_kwargs): + val = apply(controls2c.wxListCtrl_GetColumn,(self,) + _args, _kwargs) + if val is not None: val.thisown = 1 + return val + + def GetItem(self, *_args, **_kwargs): val = apply(controls2c.wxListCtrl_GetItem,(self,) + _args, _kwargs) val.thisown = 1 return val + + # Some helpers... + + def Select(self, idx, on=1): + '''[de]select an item''' + if on: state = wxLIST_STATE_SELECTED + else: state = 0 + self.SetItemState(idx, state, wxLIST_STATE_SELECTED) + + def Focus(self, idx): + '''Focus and show the given item''' + self.SetItemState(idx, wxLIST_STATE_FOCUSED, wxLIST_STATE_FOCUSED) + self.EnsureVisible(idx) + + def GetFocusedItem(self): + '''get the currently focused item or -1 if none''' + return self.GetNextItem(-1, wxLIST_NEXT_ALL, wxLIST_STATE_FOCUSED) + + def IsSelected(self, idx): + '''return TRUE if the item is selected''' + return self.GetItemState(idx, wxLIST_STATE_SELECTED) != 0 + + def SetColumnImage(self, col, image): + item = wxListItem() + item.SetMask(wxLIST_MASK_IMAGE) + item.SetImage(image) + self.SetColumn(col, item) + + def ClearColumnImage(self, col): + self.SetColumnImage(col, -1) + + def Append(self, entry): + '''Append an item to the list control. The entry parameter should be a + sequence with an item for each column''' + if len(entry): + pos = self.GetItemCount() + self.InsertStringItem(pos, str(entry[0])) + for i in range(1, len(entry)): + self.SetStringItem(pos, i, str(entry[i])) + return pos + class wxListCtrl(wxListCtrlPtr): def __init__(self,*_args,**_kwargs): self.this = apply(controls2c.new_wxListCtrl,_args,_kwargs) self.thisown = 1 - self._setSelf(self, wxListCtrl) + self._setCallbackInfo(self, wxListCtrl) + self._setOORInfo(self) def wxPreListCtrl(*_args,**_kwargs): val = wxListCtrlPtr(apply(controls2c.new_wxPreListCtrl,_args,_kwargs)) val.thisown = 1 + val._setOORInfo(val) + return val + + +class wxListViewPtr(wxListCtrlPtr): + def __init__(self,this): + self.this = this + self.thisown = 0 + def Create(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_Create,(self,) + _args, _kwargs) + return val + def Select(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_Select,(self,) + _args, _kwargs) + return val + def Focus(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_Focus,(self,) + _args, _kwargs) + return val + def GetFocusedItem(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_GetFocusedItem,(self,) + _args, _kwargs) + return val + def GetNextSelected(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_GetNextSelected,(self,) + _args, _kwargs) + return val + def GetFirstSelected(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_GetFirstSelected,(self,) + _args, _kwargs) + return val + def IsSelected(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_IsSelected,(self,) + _args, _kwargs) + return val + def SetColumnImage(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_SetColumnImage,(self,) + _args, _kwargs) + return val + def ClearColumnImage(self, *_args, **_kwargs): + val = apply(controls2c.wxListView_ClearColumnImage,(self,) + _args, _kwargs) + return val + def __repr__(self): + return "" % (self.this,) +class wxListView(wxListViewPtr): + def __init__(self,*_args,**_kwargs): + self.this = apply(controls2c.new_wxListView,_args,_kwargs) + self.thisown = 1 + self._setOORInfo(self) + + + +def wxPreListView(*_args,**_kwargs): + val = wxListViewPtr(apply(controls2c.new_wxPreListView,_args,_kwargs)) + val.thisown = 1 + val._setOORInfo(val) return val @@ -656,15 +763,15 @@ class wxTreeItemAttrPtr : return val def GetTextColour(self, *_args, **_kwargs): val = apply(controls2c.wxTreeItemAttr_GetTextColour,(self,) + _args, _kwargs) - if val: val = wxColourPtr(val) + if val: val = wxColourPtr(val) ; val.thisown = 1 return val def GetBackgroundColour(self, *_args, **_kwargs): val = apply(controls2c.wxTreeItemAttr_GetBackgroundColour,(self,) + _args, _kwargs) - if val: val = wxColourPtr(val) + if val: val = wxColourPtr(val) ; val.thisown = 1 return val def GetFont(self, *_args, **_kwargs): val = apply(controls2c.wxTreeItemAttr_GetFont,(self,) + _args, _kwargs) - if val: val = wxFontPtr(val) + if val: val = wxFontPtr(val) ; val.thisown = 1 return val def __repr__(self): return "" % (self.this,) @@ -691,6 +798,7 @@ class wxTreeItemIdPtr : return val def __repr__(self): return "" % (self.this,) + Ok = IsOk class wxTreeItemId(wxTreeItemIdPtr): def __init__(self,*_args,**_kwargs): self.this = apply(controls2c.new_wxTreeItemId,_args,_kwargs) @@ -742,6 +850,10 @@ class wxTreeEventPtr(wxNotifyEventPtr): val = apply(controls2c.wxTreeEvent_GetPoint,(self,) + _args, _kwargs) if val: val = wxPointPtr(val) ; val.thisown = 1 return val + def GetKeyEvent(self, *_args, **_kwargs): + val = apply(controls2c.wxTreeEvent_GetKeyEvent,(self,) + _args, _kwargs) + if val: val = wxKeyEventPtr(val) + return val def GetCode(self, *_args, **_kwargs): val = apply(controls2c.wxTreeEvent_GetCode,(self,) + _args, _kwargs) return val @@ -765,8 +877,8 @@ class wxTreeCtrlPtr(wxControlPtr): def Create(self, *_args, **_kwargs): val = apply(controls2c.wxTreeCtrl_Create,(self,) + _args, _kwargs) return val - def _setSelf(self, *_args, **_kwargs): - val = apply(controls2c.wxTreeCtrl__setSelf,(self,) + _args, _kwargs) + def _setCallbackInfo(self, *_args, **_kwargs): + val = apply(controls2c.wxTreeCtrl__setCallbackInfo,(self,) + _args, _kwargs) return val def GetCount(self, *_args, **_kwargs): val = apply(controls2c.wxTreeCtrl_GetCount,(self,) + _args, _kwargs) @@ -1013,13 +1125,160 @@ class wxTreeCtrl(wxTreeCtrlPtr): def __init__(self,*_args,**_kwargs): self.this = apply(controls2c.new_wxTreeCtrl,_args,_kwargs) self.thisown = 1 - self._setSelf(self, wxTreeCtrl) + self._setCallbackInfo(self, wxTreeCtrl) + self._setOORInfo(self) def wxPreTreeCtrl(*_args,**_kwargs): val = wxTreeCtrlPtr(apply(controls2c.new_wxPreTreeCtrl,_args,_kwargs)) val.thisown = 1 + val._setOORInfo(val) + return val + + +class wxDirItemDataPtr(wxObjectPtr): + def __init__(self,this): + self.this = this + self.thisown = 0 + def SetNewDirName(self, *_args, **_kwargs): + val = apply(controls2c.wxDirItemData_SetNewDirName,(self,) + _args, _kwargs) + return val + def __setattr__(self,name,value): + if name == "m_path" : + controls2c.wxDirItemData_m_path_set(self,value) + return + if name == "m_name" : + controls2c.wxDirItemData_m_name_set(self,value) + return + if name == "m_isHidden" : + controls2c.wxDirItemData_m_isHidden_set(self,value) + return + if name == "m_isExpanded" : + controls2c.wxDirItemData_m_isExpanded_set(self,value) + return + if name == "m_isDir" : + controls2c.wxDirItemData_m_isDir_set(self,value) + return + self.__dict__[name] = value + def __getattr__(self,name): + if name == "m_path" : + return controls2c.wxDirItemData_m_path_get(self) + if name == "m_name" : + return controls2c.wxDirItemData_m_name_get(self) + if name == "m_isHidden" : + return controls2c.wxDirItemData_m_isHidden_get(self) + if name == "m_isExpanded" : + return controls2c.wxDirItemData_m_isExpanded_get(self) + if name == "m_isDir" : + return controls2c.wxDirItemData_m_isDir_get(self) + raise AttributeError,name + def __repr__(self): + return "" % (self.this,) +class wxDirItemData(wxDirItemDataPtr): + def __init__(self,*_args,**_kwargs): + self.this = apply(controls2c.new_wxDirItemData,_args,_kwargs) + self.thisown = 1 + + + + +class wxGenericDirCtrlPtr(wxControlPtr): + def __init__(self,this): + self.this = this + self.thisown = 0 + def Create(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_Create,(self,) + _args, _kwargs) + return val + def ExpandPath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_ExpandPath,(self,) + _args, _kwargs) + return val + def GetDefaultPath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetDefaultPath,(self,) + _args, _kwargs) + return val + def SetDefaultPath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_SetDefaultPath,(self,) + _args, _kwargs) + return val + def GetPath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetPath,(self,) + _args, _kwargs) + return val + def GetFilePath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetFilePath,(self,) + _args, _kwargs) + return val + def SetPath(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_SetPath,(self,) + _args, _kwargs) + return val + def ShowHidden(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_ShowHidden,(self,) + _args, _kwargs) + return val + def GetShowHidden(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetShowHidden,(self,) + _args, _kwargs) + return val + def GetFilter(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetFilter,(self,) + _args, _kwargs) + return val + def SetFilter(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_SetFilter,(self,) + _args, _kwargs) + return val + def GetFilterIndex(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetFilterIndex,(self,) + _args, _kwargs) + return val + def SetFilterIndex(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_SetFilterIndex,(self,) + _args, _kwargs) + return val + def GetRootId(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetRootId,(self,) + _args, _kwargs) + if val: val = wxTreeItemIdPtr(val) ; val.thisown = 1 + return val + def GetTreeCtrl(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetTreeCtrl,(self,) + _args, _kwargs) + if val: val = wxTreeCtrlPtr(val) + return val + def GetFilterListCtrl(self, *_args, **_kwargs): + val = apply(controls2c.wxGenericDirCtrl_GetFilterListCtrl,(self,) + _args, _kwargs) + if val: val = wxDirFilterListCtrlPtr(val) + return val + def __repr__(self): + return "" % (self.this,) +class wxGenericDirCtrl(wxGenericDirCtrlPtr): + def __init__(self,*_args,**_kwargs): + self.this = apply(controls2c.new_wxGenericDirCtrl,_args,_kwargs) + self.thisown = 1 + self._setOORInfo(self) + + + +def wxPreGenericDirCtrl(*_args,**_kwargs): + val = wxGenericDirCtrlPtr(apply(controls2c.new_wxPreGenericDirCtrl,_args,_kwargs)) + val.thisown = 1 + val._setOORInfo(val) + return val + + +class wxDirFilterListCtrlPtr(wxChoicePtr): + def __init__(self,this): + self.this = this + self.thisown = 0 + def Create(self, *_args, **_kwargs): + val = apply(controls2c.wxDirFilterListCtrl_Create,(self,) + _args, _kwargs) + return val + def FillFilterList(self, *_args, **_kwargs): + val = apply(controls2c.wxDirFilterListCtrl_FillFilterList,(self,) + _args, _kwargs) + return val + def __repr__(self): + return "" % (self.this,) +class wxDirFilterListCtrl(wxDirFilterListCtrlPtr): + def __init__(self,*_args,**_kwargs): + self.this = apply(controls2c.new_wxDirFilterListCtrl,_args,_kwargs) + self.thisown = 1 + self._setOORInfo(self) + + + +def wxPreDirFilterListCtrl(*_args,**_kwargs): + val = wxDirFilterListCtrlPtr(apply(controls2c.new_wxPreDirFilterListCtrl,_args,_kwargs)) + val.thisown = 1 + val._setOORInfo(val) return val @@ -1048,6 +1307,11 @@ wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK = controls2c.wxEVT_COMMAND_LIST_ITEM_RIGHT_C wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK = controls2c.wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK wxEVT_COMMAND_LIST_ITEM_ACTIVATED = controls2c.wxEVT_COMMAND_LIST_ITEM_ACTIVATED wxEVT_COMMAND_LIST_CACHE_HINT = controls2c.wxEVT_COMMAND_LIST_CACHE_HINT +wxEVT_COMMAND_LIST_COL_RIGHT_CLICK = controls2c.wxEVT_COMMAND_LIST_COL_RIGHT_CLICK +wxEVT_COMMAND_LIST_COL_BEGIN_DRAG = controls2c.wxEVT_COMMAND_LIST_COL_BEGIN_DRAG +wxEVT_COMMAND_LIST_COL_DRAGGING = controls2c.wxEVT_COMMAND_LIST_COL_DRAGGING +wxEVT_COMMAND_LIST_COL_END_DRAG = controls2c.wxEVT_COMMAND_LIST_COL_END_DRAG +wxEVT_COMMAND_LIST_ITEM_FOCUSED = controls2c.wxEVT_COMMAND_LIST_ITEM_FOCUSED wxLC_VRULES = controls2c.wxLC_VRULES wxLC_HRULES = controls2c.wxLC_HRULES wxLC_ICON = controls2c.wxLC_ICON @@ -1067,6 +1331,7 @@ wxLC_SORT_DESCENDING = controls2c.wxLC_SORT_DESCENDING wxLC_MASK_TYPE = controls2c.wxLC_MASK_TYPE wxLC_MASK_ALIGN = controls2c.wxLC_MASK_ALIGN wxLC_MASK_SORT = controls2c.wxLC_MASK_SORT +wxLC_USER_TEXT = controls2c.wxLC_USER_TEXT wxLIST_MASK_STATE = controls2c.wxLIST_MASK_STATE wxLIST_MASK_TEXT = controls2c.wxLIST_MASK_TEXT wxLIST_MASK_IMAGE = controls2c.wxLIST_MASK_IMAGE @@ -1116,9 +1381,11 @@ wxTR_HAS_BUTTONS = controls2c.wxTR_HAS_BUTTONS wxTR_TWIST_BUTTONS = controls2c.wxTR_TWIST_BUTTONS wxTR_NO_LINES = controls2c.wxTR_NO_LINES wxTR_MAC_BUTTONS = controls2c.wxTR_MAC_BUTTONS +wxTR_AQUA_BUTTONS = controls2c.wxTR_AQUA_BUTTONS wxTR_SINGLE = controls2c.wxTR_SINGLE wxTR_MULTIPLE = controls2c.wxTR_MULTIPLE wxTR_EXTENDED = controls2c.wxTR_EXTENDED +wxTR_FULL_ROW_HIGHLIGHT = controls2c.wxTR_FULL_ROW_HIGHLIGHT wxTR_EDIT_LABELS = controls2c.wxTR_EDIT_LABELS wxTR_LINES_AT_ROOT = controls2c.wxTR_LINES_AT_ROOT wxTR_HIDE_ROOT = controls2c.wxTR_HIDE_ROOT @@ -1162,3 +1429,10 @@ wxEVT_COMMAND_TREE_ITEM_ACTIVATED = controls2c.wxEVT_COMMAND_TREE_ITEM_ACTIVATED wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK = controls2c.wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK = controls2c.wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK wxEVT_COMMAND_TREE_END_DRAG = controls2c.wxEVT_COMMAND_TREE_END_DRAG +wxDIRCTRL_DIR_ONLY = controls2c.wxDIRCTRL_DIR_ONLY +wxDIRCTRL_SELECT_FIRST = controls2c.wxDIRCTRL_SELECT_FIRST +wxDIRCTRL_SHOW_FILTERS = controls2c.wxDIRCTRL_SHOW_FILTERS +wxDIRCTRL_3D_INTERNAL = controls2c.wxDIRCTRL_3D_INTERNAL +wxDIRCTRL_EDIT_LABELS = controls2c.wxDIRCTRL_EDIT_LABELS +wxID_TREECTRL = controls2c.wxID_TREECTRL +wxID_FILTERLISTCTRL = controls2c.wxID_FILTERLISTCTRL