]> git.ipfire.org Git - thirdparty/newt.git/commitdiff
checkboxtree
authormsw <msw>
Fri, 9 Jul 1999 00:44:58 +0000 (00:44 +0000)
committermsw <msw>
Fri, 9 Jul 1999 00:44:58 +0000 (00:44 +0000)
snack.py

index 2b1ca86d9135cc6223954fa7c09de9c263f3f2dd..43a73483a9a0e0f4c4e8a50856528c628e9d8352 100644 (file)
--- a/snack.py
+++ b/snack.py
@@ -373,6 +373,27 @@ class GridForm(Grid):
        self.screen.popWindow()
        return result
 
+class CheckboxTree(Widget):
+    def append(self, text, item, selected):
+       key = self.w.checkboxtreeAppend(text, selected)
+       self.key2item[key] = item
+       self.item2key[item] = key
+
+    def __init__(self, height, scroll = 0):
+       self.w = _snack.checkboxtree(height, scroll)
+       self.key2item = {}
+       self.item2key = {}
+
+    def getSelection(self):
+        selection = []
+        i = 0
+        list = self.w.checkboxtreeGetSelection()
+        for key in list:
+            selection.append(self.key2item[key])
+            i = i + 1
+       return selection
+
+
 def ListboxChoiceWindow(screen, title, text, items, 
                        buttons = ('Ok', 'Cancel'), 
                        width = 40, scroll = 0, height = -1):