X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sface%2Fscreens%2Fmainscreen.py;h=96a9b06b4afc419337ab0363f18b7e3680acc99a;hb=05f9b3d0d10b44a8df36883e4d88ec1ce9575900;hp=5578fbc4f5e2734fe68df44b352e9f39a6c3a1bf;hpb=5ec2151aa80be7897d8e48c4bb8f613c145d0177;p=sface.git
diff --git a/sface/screens/mainscreen.py b/sface/screens/mainscreen.py
index 5578fbc..96a9b06 100644
--- a/sface/screens/mainscreen.py
+++ b/sface/screens/mainscreen.py
@@ -54,7 +54,16 @@ class NodeView(QTreeView):
self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
self.setToolTip("Double click on a row to change its status. Right click on a host to add a tag.")
+ def keyPressEvent(self, event):
+ if (event.key() == Qt.Key_Space):
+ self.toggleSelection()
+ else:
+ QTreeView.keyPressEvent(self, event)
+
def mouseDoubleClickEvent(self, event):
+ self.toggleSelection()
+
+ def toggleSelection(self):
index = self.currentIndex()
model = index.model()
status_index = model.index(index.row(), MEMBERSHIP_STATUS_COLUMN, index.parent())
@@ -357,8 +366,16 @@ class SliceWidget(QWidget):
self.updateView()
def submitFinished(self):
- self.setStatus("Slice data submitted.")
- QTimer.singleShot(1000, self.refresh)
+ faultString = self.process.getFaultString()
+ if not faultString:
+ self.setStatus("Slice data submitted.")
+ else:
+ self.setStatus("Slice submit failed: %s" % (faultString))
+
+ # no need to do that anymore
+ # QTimer.singleShot(1000, self.refresh)
+ self.updateView()
+ self.parent().signalAll("rspecUpdated")
def refreshFinished(self):
self.setStatus("Slice data refreshed.", timeout=5000)
@@ -475,7 +492,7 @@ class SliceWidget(QWidget):
self.disconnect(self.process, SIGNAL('finished()'), self.submitFinished)
self.connect(self.process, SIGNAL('finished()'), self.refreshFinished)
- self.process.getRSpecFromSM()
+ self.process.retrieveRspec()
self.setStatus("Refreshing slice data. This will take some time...")
def updateView(self):