Macro ExpandTreeItem/fr


Macro ExpandTreeItem.png Macro ExpandTreeItem

Description
Cette macro déroule les item sélectionnés.
Auteur
wmayer, UR_
Liens
Recettes macros
Comment installer une macro
Comment ajouter une barre d'outils
Version
00.00
Date dernière modification
2018-07-11


Description

Déroule/enroule les items sélectionnés

si l'arbre sélectionné est déjà déroulé, cet arbre et tous les sous-arbres sont enroulés

s'il n'y a pas de sélection tous les items sont déroulés (s'il sont déjà déroulés, ils sont enroulés)

Collapsed00.gif

Utilisation

Copier la macro dans votre répertoire de macros, créez votre barre d'outils avec le bouton et lancez la macro

Script

L'icone pour votre barre d'outils .png Macro ExpandTreeItem.png et .SVG Macro ExpandTreeItem.svg

# -*- coding: utf-8 -*-
#
# Expands selected tree and all sub trees in the tree view.
# if selected tree is already expanded this tree and all sub trees are collapsed
# if there is no selection all trees are collapse True / False
#
__Title__    = "Macro ExpandTreeItem"
__Author__   = "wmayer, UR_"
__Version__  = "00.00"
__Date__     = "2018-07-11"

import PySide
from PySide import QtGui ,QtCore
from PySide.QtGui import *
from PySide.QtCore import *

def toggleAll(tree, item, collapse):
    if collapse == False:
        tree.expandItem(item)
    elif collapse == True:  
        tree.collapseItem(item)

    for i in range(item.childCount()):
        toggleAll(tree, item.child(i), collapse)

mw = Gui.getMainWindow()
trees = mw.findChildren(QtGui.QTreeWidget)

for tree in trees:
    items = tree.selectedItems()

    try:
        if items == []:
            #tree.selectAll()                          # select all object
            for obj in FreeCAD.ActiveDocument.Objects: # select obj.OutList
                if len(obj.OutList) != 0:
                    Gui.Selection.addSelection(obj)
                    items = tree.selectedItems()
    except Exception:
        None

    for item in items:
            if item.isExpanded() == True:
                toggleAll(tree, item, True)
        #            print ("collapsing")
            else:
                toggleAll(tree, item, False)
        #            print ("expanding") 

Liens

Objektbaum mit einem Klick komplett aufklappen?

Online version: "http://www.freecadweb.org/wiki/index.php?title=Macro_ExpandTreeItem/fr&oldid=289288"

Navigation menu