1
2
3
4
5
6
7
8
9
10
11
12 import pygtk
13 pygtk.require('2.0')
14 import gtk
15 import logging
16 from iceprod.core.dataclasses import *
17 from GtkIPModule import *
18
19 logger = logging.getLogger('soaptray')
20
22
24 try:
25 model, iter = selection.get_selected()
26 name = model.get_value(iter, 0)
27 logger.debug("selected dependency: %s" % name)
28 except:
29 None
30
31
33 sel = self.tv.get_selection()
34 model, iter = sel.get_selected()
35 path = model.get_path(iter)
36 depend = model.get_value(iter, 0)
37 self.steering.RemoveDependency(depend)
38 model.remove(iter)
39
41 """
42 add steering dependency file
43 """
44 depend = IceTrayFile('new_dependency.tar')
45 depend.unpack = True
46 self.steering.AddDependency(depend)
47 row = [depend.GetName()]
48
49 i0 = self.liststore.append(row)
50 sel = self.tv.get_selection()
51 sel.select_iter(i0)
52
53
54
56 self.steering = steering
57 gtk.VBox.__init__(self)
58
59
60 self.liststore = gtk.ListStore(str)
61 self.sw = gtk.ScrolledWindow()
62
63
64 self.tv = gtk.TreeView(self.liststore)
65 self.pack_start(self.sw)
66
67 self.b0 = gtk.Button('Add Dependency')
68 self.b1 = gtk.Button('Delete Dependency')
69 self.b0.connect('clicked', self.add_dependency)
70 self.b1.connect('clicked', self.delete_dependency)
71
72 self.hbbox = gtk.HButtonBox()
73 self.hbbox.pack_start(self.b0, False, False, 1)
74 self.hbbox.pack_start(self.b1, False, False, 1)
75
76 self.pack_start(self.hbbox, False)
77 self.sw.add(self.tv)
78
79 self.tv.column = gtk.TreeViewColumn('FileName')
80 self.selection = self.tv.get_selection()
81 self.selection.connect('changed', self.on_selection_changed)
82
83 self.tv.cell = gtk.CellRendererText()
84 self.tv.cell.set_property( 'editable', True)
85 self.tv.cell.connect( 'edited', self.cell_edit,self.liststore,0)
86 self.tv.append_column(self.tv.column)
87
88 self.tv.column.pack_start(self.tv.cell, True)
89 self.tv.column.set_attributes(self.tv.cell, text=0)
90
91 self.showdependencies()
92 self.show_all()
93
97
108
109 - def cell_edit( self, cell, path, new_text,model,col ):
128