add event for notifying mainscreen of server-side slice changes
[sface.git] / sface / screens / mainscreen.py
index d0ef8c1..c9911ee 100644 (file)
@@ -726,8 +726,8 @@ class MainScreen(SfaScreen):
     def __init__(self, parent):
         SfaScreen.__init__(self, parent)
 
-        slice = SliceWidget(self)
-        self.init(slice, "Nodes", "OneLab SFA crawler")
+        self.sliceWidget = SliceWidget(self)
+        self.init(self.sliceWidget, "Nodes", "OneLab SFA crawler")
 
     def rspecUpdated(self):
         self.mainwin.rspecWindow.updateView()
@@ -739,3 +739,9 @@ class MainScreen(SfaScreen):
 
     def nodeSelectionChanged(self, hostname):
         self.mainwin.nodeSelectionChanged(hostname)
+
+    def remoteSliceChanged(self):
+        # we're being notified the slice was changed remotely. Download a new
+        # rspec.
+        QTimer.singleShot(2500, self.sliceWidget.refresh)
+