X-Git-Url: http://git.onelab.eu/?p=sface.git;a=blobdiff_plain;f=sface%2Fscreens%2Fmainscreen.py;h=96a9b06b4afc419337ab0363f18b7e3680acc99a;hp=5578fbc4f5e2734fe68df44b352e9f39a6c3a1bf;hb=deb56ec8ef1adb3c2a5b4180623452bb9dcc1b48;hpb=1a0bb6c8cf51c8abcffdc94da1ba4d9c9bb452e0 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):