sliverstatus screen
[sface.git] / sface / rspecwindow.py
index f9bca14..19c535f 100644 (file)
@@ -8,6 +8,7 @@ from PyQt4.QtXml import *
 from sface.xmlwidget import *
 from sface.config import config
 from sface.screens.sfascreen import SfaScreen
+from sface.sfidata import SfiData
 
 
 class RSpecView(XmlView):
@@ -36,7 +37,7 @@ class RSpecView(XmlView):
             for r in range(rows):
                 child_index = index.child(r, 0)
                 search(child_index)
-            
+
         root_rows = model.rowCount()
         for r in range(root_rows):
             index = model.index(r, 0)
@@ -45,16 +46,35 @@ class RSpecView(XmlView):
 class RSpecWindow(XmlWindow):
     def __init__(self, parent=None):
         XmlWindow.__init__(self, parent, 'RSpec Window')
-        self.view = RSpecView(self)
+
+    def initView(self):
+        return RSpecView(self)
+
+    def showNode(self, hostname):
+        self.view.expandMatchingText(hostname)
+
+    def readContent(self):
+        rspec = SfiData().getSliceRSpec()
+        if not rspec:
+            return ""
+
+        return rspec.toxml()
+
+class ResourcesWindow(XmlWindow):
+    def __init__(self, parent=None):
+        XmlWindow.__init__(self, parent, 'Resources Window')
+
+    def initView(self):
+        return RSpecView(self)
 
     def showNode(self, hostname):
         self.view.expandMatchingText(hostname)
 
-    def updateView(self):
-        XmlWindow.updateView(self)
+    def readContent(self):
+        rspec = SfiData().getResourcesRSpec()
+        if not rspec:
+            return ""
+
+        return rspec.toxml()
 
-        rspec_file = config.getSliceRSpecFile()
-        if not os.path.exists(rspec_file):
-            return
 
-        self.document.setContent(open(rspec_file,'r').read())