Python wx.EVT_TREE_SEL_CHANGED Examples
The following are 12
code examples of wx.EVT_TREE_SEL_CHANGED().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
wx
, or try the search function
.
Example #1
Source File: AddActionDialog.py From EventGhost with GNU General Public License v2.0 | 6 votes |
def OnSelectionChanged(self, event): """ Process wx.EVT_TREE_SEL_CHANGED events. """ treeItem = event.GetItem() if not treeItem.IsOk(): return itemData = self.tree.GetPyData(treeItem) if isinstance(itemData, eg.ActionGroup): self.resultData = None self.buttonRow.okButton.Enable(False) else: self.resultData = itemData self.buttonRow.okButton.Enable(True) self.nameText.SetLabel(itemData.name) self.docText.SetBasePath(itemData.plugin.info.path) self.docText.SetPage(itemData.description)
Example #2
Source File: _snippet.py From admin4 with Apache License 2.0 | 5 votes |
def __init__(self, parentWin, server, editor): DragTreeCtrl.__init__(self, parentWin, "Snippets", style=wx.TR_HAS_BUTTONS | wx.TR_HIDE_ROOT | wx.TR_LINES_AT_ROOT) self.editor=editor self.server=server self.frame=parentWin self.snippets={} self.Bind(wx.EVT_RIGHT_DOWN, self.OnTreeRightClick) self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnTreeSelChanged) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnTreeActivate) rootSnippets=[] if self.frame.snippet_table: set=self.server.GetCursor().ExecuteSet("SELECT * FROM %s ORDER BY parent, sort" % self.frame.snippet_table) for row in set: snippet=Snippet(row['id'], row['parent'], row['name'], row['snippet'], row['sort']) self.snippets[snippet.id]=snippet if not snippet.parent: rootSnippets.append(snippet) for snippet in rootSnippets: if not snippet.parent: self.AppendSnippet(snippet, parentItem=self.GetRootItem()) self.checkChildren(snippet) for snippet in self.snippets.values(): if not snippet.treeitem: self.AppendSnippet(snippet, parentItem=self.GetRootItem()) else: item=self.AppendItem(self.GetRootItem(), xlt("Snippets not available:")) item=self.AppendItem(item, xlt("Server not instrumented.")) self.ExpandAll()
Example #3
Source File: tree.py From wxGlade with MIT License | 5 votes |
def __init__(self, parent, application): style = wx.TR_DEFAULT_STYLE|wx.TR_HAS_VARIABLE_ROW_HEIGHT style |= wx.TR_EDIT_LABELS if wx.Platform == '__WXGTK__': style |= wx.TR_NO_LINES|wx.TR_FULL_ROW_HIGHLIGHT elif wx.Platform == '__WXMAC__': style &= ~wx.TR_ROW_LINES wx.TreeCtrl.__init__(self, parent, -1, style=style) self.cur_widget = None # reference to the selected widget self.root = application image_list = wx.ImageList(21, 21) image_list.Add(wx.Bitmap(os.path.join(config.icons_path, 'application.xpm'), wx.BITMAP_TYPE_XPM)) for w in WidgetTree.images: WidgetTree.images[w] = image_list.Add(misc.get_xpm_bitmap(WidgetTree.images[w])) self.AssignImageList(image_list) application.item = self.AddRoot(_('Application'), 0) self._SetItemData(application.item, application) self.skip_select = 0 # avoid an infinite loop on win32, as SelectItem fires an EVT_TREE_SEL_CHANGED event self.drop_target = clipboard.DropTarget(self, toplevel=True) self.SetDropTarget(self.drop_target) self._drag_ongoing = False self.auto_expand = True # this control the automatic expansion of nodes: it is set to False during xml loading self.Bind(wx.EVT_TREE_SEL_CHANGED, self.on_change_selection) self.Bind(wx.EVT_RIGHT_DOWN, self.popup_menu) self.Bind(wx.EVT_LEFT_DCLICK, self.on_left_dclick) self.Bind(wx.EVT_LEFT_DOWN, self.on_left_click) # allow direct placement of widgets self.Bind(wx.EVT_MENU, self.on_menu) # for handling the selection of the first item self._popup_menu_widget = None # the widget for the popup menu self.Bind(wx.EVT_TREE_BEGIN_DRAG, self.begin_drag) self.Bind(wx.EVT_LEAVE_WINDOW, self.on_leave_window) self.Bind(wx.EVT_MOUSE_EVENTS, self.on_mouse_events) self.Bind(wx.EVT_TREE_BEGIN_LABEL_EDIT, self.begin_edit_label) self.Bind(wx.EVT_TREE_END_LABEL_EDIT, self.end_edit_label) #self.Bind(wx.EVT_KEY_DOWN, misc.on_key_down_event) self.Bind(wx.EVT_KEY_DOWN, self.on_key_down_event) #self.Bind(wx.EVT_CHAR_HOOK, self.on_char) # on wx 2.8 the event will not be delivered to the child self.Bind(wx.EVT_TREE_DELETE_ITEM, self.on_delete_item)
Example #4
Source File: TreeCtrl.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def __init__(self, parent, document, size=wx.DefaultSize): self.document = document self.root = None self.editLabelId = None self.insertionMark = None self.editControl = EditControlProxy(self) style = ( wx.TR_HAS_BUTTONS | wx.TR_EDIT_LABELS | wx.TR_ROW_LINES | wx.CLIP_CHILDREN ) wx.TreeCtrl.__init__(self, parent, size=size, style=style) self.SetImageList(eg.Icons.gImageList) self.hwnd = self.GetHandle() self.normalfont = self.GetFont() self.italicfont = self.GetFont() self.italicfont.SetStyle(wx.FONTSTYLE_ITALIC) self.Bind(wx.EVT_SET_FOCUS, self.OnGetFocusEvent) self.Bind(wx.EVT_KILL_FOCUS, self.OnKillFocusEvent) self.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.OnItemExpandingEvent) self.Bind(wx.EVT_TREE_ITEM_COLLAPSING, self.OnItemCollapsingEvent) self.Bind(wx.EVT_TREE_BEGIN_LABEL_EDIT, self.OnBeginLabelEditEvent) self.Bind(wx.EVT_TREE_END_LABEL_EDIT, self.OnEndLabelEditEvent) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnItemActivateEvent) self.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDoubleClickEvent) self.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.OnRightClickEvent) self.Bind(wx.EVT_TREE_ITEM_MENU, self.OnItemMenuEvent) self.Bind(wx.EVT_TREE_BEGIN_DRAG, self.OnBeginDragEvent) self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelectionChangedEvent) self.visibleNodes = {} self.expandedNodes = document.expandedNodes self.dropTarget = DropTarget(self) self.SetDropTarget(self.dropTarget) eg.Bind("NodeAdded", self.OnNodeAdded) eg.Bind("NodeDeleted", self.OnNodeDeleted) eg.Bind("NodeChanged", self.OnNodeChanged) eg.Bind("NodeSelected", self.OnNodeSelected) eg.Bind("DocumentNewRoot", self.OnNewRoot) if document.root: self.OnNewRoot(document.root)
Example #5
Source File: TreeCtrl.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def OnSelectionChangedEvent(self, event): """ Handles wx.EVT_TREE_SEL_CHANGED """ node = self.GetPyData(event.GetItem()) self.document.selection = node eg.Notify("SelectionChange", node) event.Skip() #------------------------------------------------------------------------- # eg.Notify Handlers #-------------------------------------------------------------------------
Example #6
Source File: AddPluginDialog.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def OnSelectionChanged(self, event): """ Handle the wx.EVT_TREE_SEL_CHANGED events. """ item = event.GetItem() self.resultData = info = self.treeCtrl.GetPyData(item) if info is None: name = self.treeCtrl.GetItemText(item) description = Text.noInfo self.authorLabel.SetLabel("") self.authorText.SetLabel("") self.versionLabel.SetLabel("") self.versionText.SetLabel("") self.okButton.Enable(False) event.Skip() else: name = info.name description = info.description self.descrBox.SetBasePath(info.path) self.authorLabel.SetLabel(Text.author) self.authorText.SetLabel(info.author.replace("&", "&&")) self.versionLabel.SetLabel(Text.version) self.versionText.SetLabel(info.version) self.okButton.Enable(True) self.nameText.SetLabel(name) url = info.url if info else None self.descrBox.SetPage(eg.Utils.AppUrl(description, url))
Example #7
Source File: ExportDialog.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def Configure(self): self.foundId = None style = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER eg.TaskletDialog.__init__(self, None, -1, title="Export", style=style) staticText = wx.StaticText(self, -1, text.mesg) filterClasses = (eg.FolderItem, ) #eg.MacroItem) def filterFunc(obj): return isinstance(obj, filterClasses) tree = eg.TreeItemBrowseCtrl(self, filterFunc) #, multiSelect=True) #tree.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelectionChanged) tree.UnselectAll() buttonRow = eg.ButtonRow(self, (wx.ID_OK, wx.ID_CANCEL), True) mainSizer = eg.VBoxSizer( (staticText, 0, wx.EXPAND | wx.ALL, 5), (tree, 1, wx.EXPAND), (buttonRow.sizer, 0, wx.EXPAND), ) self.SetSizerAndFit(mainSizer) self.SetAutoLayout(True) #mainSizer.Fit(self) #self.SetMinSize(self.GetSize()) self.SetSize((450, 400)) while self.Affirmed(): items = tree.GetSelections() GetPyData = tree.GetPyData self.SetResult([GetPyData(item) for item in items])
Example #8
Source File: SoundMixerTree.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def __init__(self, parent, panel, *args, **kwargs): self.deviceId = 0 self.panel = panel wx.TreeCtrl.__init__(self, parent, *args, **kwargs) self.FillTree() self.ExpandAll() self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelectionChanged)
Example #9
Source File: TreeItemBrowseDialog.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def Configure( self, title, text, searchItem, resultClasses, filterClasses=(eg.FolderItem, eg.MacroItem), parent=None, ): self.resultData = searchItem self.resultClasses = resultClasses self.foundId = None style = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER eg.TaskletDialog.__init__(self, parent, -1, title=title, style=style) staticText = wx.StaticText(self, -1, text) staticText.Wrap(430) def filterFunc(obj): return isinstance(obj, filterClasses) tree = eg.TreeItemBrowseCtrl(self, filterFunc, selectItem=searchItem) tree.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnSelectionChanged) self.treeCtrl = tree self.buttonRow = eg.ButtonRow(self, (wx.ID_CANCEL, wx.ID_OK), True) mainSizer = eg.VBoxSizer( (staticText, 0, wx.EXPAND | wx.ALL, 5), (tree, 1, wx.EXPAND | wx.LEFT | wx.RIGHT, 5), (self.buttonRow.sizer, 0, wx.EXPAND), ) self.SetSizerAndFit(mainSizer) self.SetSize((450, 400)) if not searchItem: self.buttonRow.okButton.Enable(False) while self.Affirmed(): self.SetResult(self.resultData)
Example #10
Source File: DownloadManager.py From BitTorrent with GNU General Public License v3.0 | 4 votes |
def __init__(self, parent, torrent, *a, **k): BTPanel.__init__(self, parent, *a, **k) self.torrent = torrent app = wx.the_app self.file_ops = [ EventProperties(self.FIRST_ID, ('fileops', 'first'), self.set_file_priority_first, _("First"), _("Download first")), EventProperties(self.NORMAL_ID, ('fileops', 'normal'), self.set_file_priority_normal, _("Normal"), _("Download normally")), ## # BUG: uncomment this once we implement NEVER ## EventProperties(self.NEVER_ID, ## ('fileops', 'never'), ## self.set_file_priority_never, ## _("Never"), _("Never download")), EventProperties(self.OPEN_ID, ('torrentops', 'launch'), self.open_items, _("Launch"), _("Launch file")), ] self.context_menu = BTMenu() self.event_table = {} for e in self.file_ops: self.event_table[e.id] = e self.Bind(wx.EVT_MENU, self.OnFileEvent, id=e.id) self.context_menu.Append(e.id, e.shorthelp) self.context_menu.InsertSeparator(len(self.file_ops)-1) self._build_tool_bar() self.file_list = FileListView(self, torrent) self.sizer.Add(self.file_list, flag=wx.GROW, proportion=1) self.SetSizerAndFit(self.sizer) self.check_file_selection() self.file_list.Bind(wx.EVT_TREE_SEL_CHANGED, self.check_file_selection) self.file_list.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.file_double_clicked) self.file_list.context_menu = self.context_menu
Example #11
Source File: Registry.py From EventGhost with GNU General Public License v2.0 | 4 votes |
def __init__( self, parent, id=-1, key = _winreg.HKEY_CURRENT_USER, subkey = "Software", valueName = None, pos = wx.DefaultPosition, size = wx.DefaultSize, style = wx.TR_HAS_BUTTONS, validator = wx.DefaultValidator, name="RegistryLazyTree", text = None ): self.text = text wx.TreeCtrl.__init__( self, parent, id, pos, size, style, validator, name ) self.imageList = imageList = wx.ImageList(16, 16) rootIcon = imageList.Add(eg.Icons.GetInternalBitmap("root")) self.folderIcon = imageList.Add(eg.Icons.GetInternalBitmap("folder")) self.valueIcon = imageList.Add(eg.Icons.GetInternalBitmap("action")) self.SetImageList(imageList) self.SetMinSize((-1, 200)) self.treeRoot = self.AddRoot( "Registry", image = rootIcon, data = wx.TreeItemData((True, None, None, None)) ) #Adding keys for item in regKeys: #a tupel of 4 values is assigned to every item #1) stores if the key has yet to be queried for subkey, when # selected #2) _winreg.hkey constant #3) name of the key #4) value name, None if just a key, empty string for default value tmp = self.AppendItem( self.treeRoot, item[1], image = self.folderIcon, data =wx.TreeItemData((False, item[0], "", None)) ) self.SetItemHasChildren(tmp, True) if item[0] == key: self.SelectItem(tmp) #select old value in tree self.OnTreeChange(wx.CommandEvent(), key, subkey, valueName) self.EnsureVisible(self.GetSelection()) self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnTreeChange) self.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.OnExpandNode)
Example #12
Source File: FileManagementPanel.py From OpenPLC_Editor with GNU General Public License v3.0 | 4 votes |
def _init_Editor(self, parent): self.Editor = wx.Panel(parent) main_sizer = wx.BoxSizer(wx.HORIZONTAL) left_sizer = wx.BoxSizer(wx.VERTICAL) main_sizer.AddSizer(left_sizer, 1, border=5, flag=wx.GROW | wx.ALL) managed_dir_label = wx.StaticText(self.Editor, label=_(self.TagName) + ":") left_sizer.AddWindow(managed_dir_label, border=5, flag=wx.GROW | wx.BOTTOM) FILTER = _("All files (*.*)|*.*|CSV files (*.csv)|*.csv") self.ManagedDir = FolderTree(self.Editor, self.Folder, FILTER) left_sizer.AddWindow(self.ManagedDir, 1, flag=wx.GROW) managed_treectrl = self.ManagedDir.GetTreeCtrl() self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnTreeItemChanged, managed_treectrl) if self.EnableDragNDrop: self.Bind(wx.EVT_TREE_BEGIN_DRAG, self.OnTreeBeginDrag, managed_treectrl) button_sizer = wx.BoxSizer(wx.VERTICAL) main_sizer.AddSizer(button_sizer, border=5, flag=wx.ALL | wx.ALIGN_CENTER_VERTICAL) for idx, (name, bitmap, help) in enumerate([ ("DeleteButton", "remove_element", _("Remove file from left folder")), ("LeftCopyButton", "LeftCopy", _("Copy file from right folder to left")), ("RightCopyButton", "RightCopy", _("Copy file from left folder to right")), ("EditButton", "edit", _("Edit file"))]): button = wx.lib.buttons.GenBitmapButton( self.Editor, bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER) button.SetToolTipString(help) setattr(self, name, button) if idx > 0: flag = wx.TOP else: flag = 0 self.Bind(wx.EVT_BUTTON, getattr(self, "On" + name), button) button_sizer.AddWindow(button, border=20, flag=flag) right_sizer = wx.BoxSizer(wx.VERTICAL) main_sizer.AddSizer(right_sizer, 1, border=5, flag=wx.GROW | wx.ALL) if wx.Platform == '__WXMSW__': system_dir_label = wx.StaticText(self.Editor, label=_("My Computer:")) else: system_dir_label = wx.StaticText(self.Editor, label=_("Home Directory:")) right_sizer.AddWindow(system_dir_label, border=5, flag=wx.GROW | wx.BOTTOM) self.SystemDir = FolderTree(self.Editor, self.HomeDirectory, FILTER, False) right_sizer.AddWindow(self.SystemDir, 1, flag=wx.GROW) system_treectrl = self.SystemDir.GetTreeCtrl() self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnTreeItemChanged, system_treectrl) self.Editor.SetSizer(main_sizer)