1+ # -*- coding: utf-8 -*-
2+
3+ # Form implementation generated from reading ui file 'D:\projects\sextante\workspaces\qgis-plugin\sextante\src\sextante\gui\MultipleSelectionDialog.ui'
4+ #
5+ # Created: Wed Jan 11 17:48:49 2012
6+ # by: PyQt4 UI code generator 4.9
7+ #
8+ # WARNING! All changes made in this file will be lost!
9+
10+ from PyQt4 import QtCore , QtGui
11+
12+ try :
13+ _fromUtf8 = QtCore .QString .fromUtf8
14+ except AttributeError :
15+ _fromUtf8 = lambda s : s
16+
17+
18+ class MultipleInputDialog (QtGui .QDialog ):
19+ def __init__ (self , options , selectedoptions ):
20+ self .options = options
21+ self .selectedoptions = selectedoptions
22+ QtGui .QDialog .__init__ (self )
23+ self .setModal (True )
24+ self .ui = Ui_MultipleInputDialog ()
25+ self .ui .setupUi (self )
26+
27+ class Ui_MultipleInputDialog (object ):
28+ def setupUi (self , dialog ):
29+ self .dialog = dialog
30+ dialog .setObjectName (_fromUtf8 ("Dialog" ))
31+ dialog .resize (381 , 320 )
32+ dialog .setWindowTitle ("Multiple selection" )
33+ self .buttonBox = QtGui .QDialogButtonBox (dialog )
34+ self .buttonBox .setGeometry (QtCore .QRect (290 , 10 , 81 , 61 ))
35+ self .buttonBox .setOrientation (QtCore .Qt .Vertical )
36+ self .buttonBox .setStandardButtons (QtGui .QDialogButtonBox .Cancel | QtGui .QDialogButtonBox .Ok )
37+ self .buttonBox .setObjectName (_fromUtf8 ("buttonBox" ))
38+ self .table = QtGui .QTableWidget (dialog )
39+ self .table .setGeometry (QtCore .QRect (10 , 10 , 271 , 301 ))
40+ self .table .setObjectName (_fromUtf8 ("table" ))
41+ self .table .setColumnCount (1 )
42+ self .table .verticalHeader ().setVisible (True )
43+ self .table .horizontalHeader ().setVisible (True )
44+ self .selectAllButton = QtGui .QPushButton (dialog )
45+ self .selectAllButton .setGeometry (QtCore .QRect (290 , 290 , 81 , 23 ))
46+ self .selectAllButton .setObjectName (_fromUtf8 ("selectAllButton" ))
47+ self .selectAllButton .setText ("(de)Select all" )
48+ self .setTableContent ()
49+ QtCore .QObject .connect (self .buttonBox , QtCore .SIGNAL (_fromUtf8 ("accepted()" )), self .accept )
50+ QtCore .QObject .connect (self .buttonBox , QtCore .SIGNAL (_fromUtf8 ("rejected()" )), self .reject )
51+ QtCore .QObject .connect (self .selectAllButton , QtCore .SIGNAL (_fromUtf8 ("clicked()" )), self .selectAll )
52+ QtCore .QMetaObject .connectSlotsByName (dialog )
53+
54+ def setTableContent (self ):
55+ for i in range (len (self .dialog .options )):
56+ item = QtGui .QCheckBox ()
57+ item .setText (self .dialog .options [i ])
58+ self .table .setCellWidget (i ,0 , item )
59+
60+
61+ def accept (self ):
62+ self .dialog .selectedoptions = []
63+ for i in range (len (self .dialog .options )):
64+ widget = self .table .cellWidget (i , 0 )
65+ if widget .isChecked ():
66+ self .dialog .selectedoptions .append (i )
67+
68+
69+ def reject (self ):
70+ self .dialog .selectedoptions = None
71+ self .dialog .close ()
72+
73+ def selectAll (self ):
74+ checked = False
75+ for i in range (len (self .dialog .options )):
76+ widget = self .table .cellWidget (i , 0 )
77+ if not widget .isChecked ():
78+ checked = True
79+ break
80+ for i in range (len (self .dialog .options )):
81+ widget = self .table .cellWidget (i , 0 )
82+ widget .setChecked (checked )
0 commit comments