Changeset 437:750a9bfbc6dd for src/mlx/gui/delaycodes.py
- Timestamp:
- 02/23/13 08:46:11 (11 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/mlx/gui/delaycodes.py
r436 r437 185 185 #------------------------------------------------------------------------------ 186 186 187 class CheckButton(gtk.CheckButton): 188 """A check button that contains a reference to a row in the delay code 189 data table.""" 190 def __init__(self, delayCodeRow): 191 """Construct the check button.""" 192 super(CheckButton, self).__init__() 193 self.delayCodeRow = delayCodeRow 194 195 #------------------------------------------------------------------------------ 196 187 197 CAPTION = 1 188 198 189 199 DELAYCODE = 2 190 200 191 _data1 = ( ["Num", "Code", "Title", "Description"], 201 _data1 = ( lambda row: row[0].strip(), 202 ["Num", "Code", "Title", "Description"], 192 203 [ (CAPTION, "Others"), 193 204 (DELAYCODE, (" 6", "OA ", "NO GATES/STAND AVAILABLE", … … 203 214 "Error with passenger or baggage details")) ] ) 204 215 205 _data2 = ( ["MA", "IATA", "Description"], 216 _data2 = ( lambda row: row[0].strip(), 217 ["MA", "IATA", "Description"], 206 218 [ (CAPTION, "Passenger and baggage"), 207 (DELAYCODE, (" 012", "01 ",219 (DELAYCODE, (" 012", "01 ", 208 220 "Late shipping of parts and/or materials")), 209 221 (DELAYCODE, (" 111", "11", … … 223 235 super(DelayCodeTable, self).__init__() 224 236 237 self._delayCodeData = None 238 225 239 self._treeView = None 226 240 227 self._listStore = gtk.ListStore(str, str) 228 self._treeView = gtk.TreeView(self._listStore) 241 self._treeView = gtk.TreeView(gtk.ListStore(str, str)) 229 242 self._treeView.set_rules_hint(True) 230 243 … … 232 245 233 246 self._alignments = [] 247 self._checkButtons = [] 234 248 235 249 self._eventBox = gtk.EventBox() … … 244 258 245 259 self._previousWidth = 0 260 261 @property 262 def delayCodes(self): 263 """Get a list of the delay codes checked by the user.""" 264 codes = [] 265 266 if self._delayCodeData is not None: 267 codeExtractor = self._delayCodeData[0] 268 for checkButton in self._checkButtons: 269 if checkButton.get_active(): 270 codes.append(codeExtractor(checkButton.delayCodeRow)) 271 272 return codes 246 273 247 274 def allocate_column_sizes(self, allocation): … … 263 290 data = _data2 264 291 292 self._delayCodeData = data 293 265 294 columns = self._treeView.get_columns() 266 295 for column in columns: 267 296 self._treeView.remove_column(column) 268 297 269 ( headers, rows) = data298 (_extractor, headers, rows) = data 270 299 numColumns = len(headers) + 1 271 300 numRows = len(rows) … … 287 316 288 317 self._alignments = [] 318 self._checkButtons = [] 289 319 290 320 firstDelayCodeRow = True … … 301 331 self._table.set_row_spacing(i, 8) 302 332 elif type==DELAYCODE: 333 checkButton = CheckButton(elements) 334 self._checkButtons.append(checkButton) 303 335 alignment = Alignment(xalign = 0.5, yalign = 0.5, xscale = 1.0) 304 alignment.add( gtk.CheckButton())336 alignment.add(checkButton) 305 337 self._table.attach(alignment, 0, 1, i, i+1) 306 338 if firstDelayCodeRow:
Note:
See TracChangeset
for help on using the changeset viewer.