1
2
3
4
5
6
7
8
9
10
11
12 import pygtk
13 pygtk.require('2.0')
14 import gtk
15 from iceprod.core.dataclasses import *
16 from GtkSteering import GtkSteering
17 import logging
18
19 logger = logging.getLogger('GtkSteerBatchOpt')
20
22
24 sel = self.tv.get_selection()
25 model, iter = sel.get_selected()
26 path = model.get_path(iter)
27 otype = model.get_value(iter, 0)
28 oname = model.get_value(iter, 1)
29 self.steering.RemoveBatchOpt((otype,oname))
30 self.showsteerings()
31
49
50
52 GtkSteering.__init__(self,steering)
53
54 self.b0.set_label('Add Option')
55 self.b1.set_label('Delete Option')
56 self.tv.column[0].set_title('I3Queue Name')
57 self.tv.column[1].set_title('Option')
58 self.tv.cell[0].set_property( 'editable', True)
59
60 self.show_all()
61
65
73
74
75 - def cell_edit( self, cell, path, new_text,model,col ):
76 """
77 Canges the value of the batch option
78 """
79 logger.debug("Change '%s' to '%s'" % (model[path][col], new_text))
80 logger.debug("%s,%s" % (path,col) )
81
82 row = model[path]
83 otype = row[0]
84 oname = row[1]
85 batchopt = self.steering.GetBatchOpt((otype,oname))
86 if not batchopt:
87 logger.error("batch option %s,%s not found" % (otype,oname))
88 return
89 if (col == 0):
90 self.steering.RemoveBatchOpt((otype,oname))
91 batchopt.SetType(new_text)
92 self.steering.AddBatchOpt(batchopt)
93 elif (col == 1):
94 self.steering.RemoveBatchOpt((otype,oname))
95 batchopt.SetName(new_text)
96 self.steering.AddBatchOpt(batchopt)
97 elif (col == 2):
98 batchopt.SetValue(new_text)
99 else:
100 logger.error("unknown column %s" % col)
101 row[col] = u'%s' % new_text
102