Lines Matching full:tree

20 The display can be toggled between showing the full tree and showing just a
203 # the tree is non-empty in the rest of the code.
212 # Build the initial tree
302 # Create the pane with the Kconfig tree and description text
308 # Only the pane with the Kconfig tree and description grows vertically
316 # Note: Binding this for the jump-to tree as well would cause issues due to
420 # Creates the controls above the Kconfig tree in the main window
506 tree_frame, tree = _create_kconfig_tree(panedwindow)
517 sel = tree.selection()
529 tree.bind("<<TreeviewSelect>>", tree_select)
530 tree.bind("<1>", _tree_click)
531 tree.bind("<Double-1>", _tree_double_click)
532 tree.bind("<Return>", _tree_enter)
533 tree.bind("<KP_Enter>", _tree_enter)
534 tree.bind("<space>", _tree_toggle)
535 tree.bind("n", _tree_set_val(0))
536 tree.bind("m", _tree_set_val(1))
537 tree.bind("y", _tree_set_val(2))
539 return panedwindow, tree
547 tree = ttk.Treeview(frame, selectmode="browse", height=20,
549 tree.heading("#0", text="Option", anchor="w")
550 tree.heading("name", text="Name", anchor="w")
552 tree.tag_configure("n-bool", image=_n_bool_img)
553 tree.tag_configure("y-bool", image=_y_bool_img)
554 tree.tag_configure("m-tri", image=_m_tri_img)
555 tree.tag_configure("n-tri", image=_n_tri_img)
556 tree.tag_configure("m-tri", image=_m_tri_img)
557 tree.tag_configure("y-tri", image=_y_tri_img)
558 tree.tag_configure("m-my", image=_m_my_img)
559 tree.tag_configure("y-my", image=_y_my_img)
560 tree.tag_configure("n-locked", image=_n_locked_img)
561 tree.tag_configure("m-locked", image=_m_locked_img)
562 tree.tag_configure("y-locked", image=_y_locked_img)
563 tree.tag_configure("not-selected", image=_not_selected_img)
564 tree.tag_configure("selected", image=_selected_img)
565 tree.tag_configure("edit", image=_edit_img)
566 tree.tag_configure("invisible", foreground="red")
568 tree.grid(column=0, row=0, sticky="nsew")
570 _add_vscrollbar(frame, tree)
577 insert = tree.insert
585 return frame, tree
655 # Updates the Kconfig tree in the main window by first detaching all nodes
656 # and then updating and reattaching them. The tree structure might have
666 # Detach all tree items before re-stringing them. This is relatively fast,
680 # Updates the tree starting from menu.list, in full-tree mode. To speed
704 # for full-tree mode. A tricky detail is that invisible items need to be
735 # Updates the tree in single-menu mode. See _build_full_tree() as well.
778 # Adds 'node' to the tree, at the end of its menu. We rely on going through
901 tree = event.widget
902 if tree.identify_element(event.x, event.y) == "image":
903 item = tree.identify_row(event.y)
906 _select(tree, item)
907 _change_node(_id_to_node[item], tree.winfo_toplevel())
914 # Do an extra check to avoid weirdness when double-clicking in the tree
921 # Returns True if 'event' took place in the tree heading
923 tree = event.widget
924 return hasattr(tree, "identify_region") and \
925 tree.identify_region(event.x, event.y) in ("heading", "separator")
932 tree = event.widget
933 sel = tree.focus()
937 if tree.get_children(sel):
939 elif _single_menu_mode_menu(node, tree):
942 _change_node(node, tree.winfo_toplevel())
951 tree = event.widget
952 sel = tree.focus()
957 _change_node(node, tree.winfo_toplevel())
958 elif _single_menu_mode_menu(node, tree):
960 elif tree.get_children(sel):
991 def _single_menu_mode_menu(node, tree): argument
995 return _single_menu and tree is _tree and node.is_menuconfig and \
1025 # Can only get here in full-tree mode
1047 # Lazily populates the Kconfig tree when menus are opened in full-tree mode
1073 # starting from the top of the tree. Used to preserve scrolling.
1160 # Update the tree and try to preserve the scroll. Do a cheaper variant
1463 _tree["show"] = "tree headings"
1469 _tree["show"] = "tree"
1504 # below is restricted to the height of the old tree, instead of the
1505 # height of the new tree. Since the tree with show-all on is guaranteed
1525 # tree, meaning guiconfig was automatically started in
1540 # Updates the UI for the current tree mode (full-tree or single-menu)
1545 # _jump_to() -> _enter_menu() already updates the tree, but
1547 # We always need to update the tree here, e.g. to add/remove "--->".
1592 def _select(tree, item): argument
1593 # Selects, focuses, and see()s 'item' in 'tree'
1595 tree.selection_set(item)
1596 tree.focus(item)
1597 tree.see(item)
1603 # screen when updating the tree.
1611 # tree is probably really small, so use the first item in the entire tree.
1752 # need to somehow only update the tree items that are shown in the Treeview
1764 if event and (tree.identify_element(event.x, event.y) == "image" or
1768 sel = tree.selection()
1785 jumpto_button["state"] = "normal" if tree.selection() else "disabled"
1812 panedwindow, tree = _create_kconfig_tree_and_desc(dialog)
1815 # Clear tree
1816 tree.set_children("")
1818 _jump_to_tree = tree
1825 # Only the pane with the Kconfig tree and description grows vertically
1836 tree.bind("<Double-1>", jump_to_selected)
1837 tree.bind("<Return>", jump_to_selected)
1838 tree.bind("<KP_Enter>", jump_to_selected)
1840 tree.bind("<<TreeviewSelect>>", tree_select, add=True)
1874 # Clear tree
1992 # Menus are lazily populated as they're opened in full-tree mode, but