Added SubmitPanel, HelpPanel for PlanetLab and VINI
[sfa-gui.git] / SliverPanel.py
index bf91adb..a4b2602 100644 (file)
@@ -16,7 +16,8 @@ class AddPanel(CaptionPanel):
         hp = HorizontalPanel()
         self.nodes = ListBox()
         self.nodes.addItem("All nodes")
-        for sliver in self.top.rspec.get_sliver_list():
+        rspec = self.top.sfadata.getRSpec()
+        for sliver in rspec.get_sliver_list():
             self.nodes.addItem(sliver)
 
         self.attrs = ListBox()
@@ -44,11 +45,12 @@ class AddPanel(CaptionPanel):
         name = self.attrs.getItemText(self.attrs.getSelectedIndex())
         value = self.value.getText()
         nodeindex = self.nodes.getSelectedIndex()
+        rspec = self.top.sfadata.getRSpec()
         if nodeindex == 0:
-            self.top.rspec.add_default_sliver_attribute(name, value)
+            rspec.add_default_sliver_attribute(name, value)
         else:
             node = self.nodes.getItemText(nodeindex)
-            self.top.rspec.add_sliver_attribute(node, name, value)
+            rspec.add_sliver_attribute(node, name, value)
         self.top.refresh()
         
 
@@ -68,31 +70,30 @@ class AttributePanel(HorizontalPanel):
         self.add(HTML("%s: %s" % (self.name, self.value)))
 
     def onClick(self, sender):
+        rspec = self.top.sfadata.getRSpec()
         if self.node:
-            self.top.rspec.remove_sliver_attribute(self.node, self.name, 
-                                                   self.value)
+            rspec.remove_sliver_attribute(self.node, self.name, self.value)
         else:
-            self.top.rspec.remove_default_sliver_attribute(self.name, 
-                                                           self.value)
+            rspec.remove_default_sliver_attribute(self.name, self.value)
         self.top.refresh()
         
 
 class SliverPanel(VerticalPanel):
-    def __init__(self, sfadata, rspec):
+    def __init__(self, sfadata):
         VerticalPanel.__init__(self)
-        self.data = sfadata
-        self.rspec = rspec
+        self.sfadata = sfadata
         self.refresh()
 
     def refresh(self):
         self.clear()
         self.add(AddPanel(self))
 
-        allattrs = self.rspec.get_default_sliver_attributes()
+        rspec = self.sfadata.getRSpec()
+        allattrs = rspec.get_default_sliver_attributes()
         attrdict = {}
-        slivers = self.rspec.get_sliver_list()
+        slivers = rspec.get_sliver_list()
         for sliver in slivers:
-            attrs = self.rspec.get_sliver_attributes(sliver)
+            attrs = rspec.get_sliver_attributes(sliver)
             attrdict[sliver] = attrs
 
         if allattrs: