index = model.index(r, 0)
search(index)
-class RSpecWindow(XmlWindow):
+class RSpecWindow(QDialog):
def __init__(self, parent=None):
- XmlWindow.__init__(self, parent, 'RSpec Window')
+ QDialog.__init__(self, parent)
+
+ self.title = 'RSpec Window'
+ self.setWindowTitle(self.title)
+
+ self.document = None
+ self.model = None
+
self.view = RSpecView(self)
+ layout = QVBoxLayout()
+ layout.addWidget(self.view)
+ self.setLayout(layout)
+
+ print 'CHILDREN', str(self.children())
+ self.updateView()
+
def showNode(self, hostname):
self.view.expandMatchingText(hostname)
def updateView(self):
- XmlWindow.updateView(self)
+
+ del self.document
+ del self.model
+ self.document = None
+ self.model = None
+
+ self.document = QDomDocument(self.title)
+ self.model = DomModel(self.document, self)
+
+ self.view.setModel(self.model)
+ self.view.expand(self.model.index(0, 0)) #expand first level only
rspec_file = config.getSliceRSpecFile()
if not os.path.exists(rspec_file):
return self.rowNumber
class XmlView(QTreeView):
- def __init__(self, parent):
+ def __init__(self, parent=None):
QTreeView.__init__(self, parent)
+ delegate = XmlDelegate(self)
+ delegate.insertNodeDelegate('element', ElemNodeDelegate())
+ delegate.insertNodeDelegate('text', TextNodeDelegate())
+ delegate.insertNodeDelegate('comment', CommentNodeDelegate())
+ self.setItemDelegate(delegate)
+
self.setAnimated(True)
self.setItemsExpandable(True)
self.setRootIsDecorated(True)
self.setAttribute(Qt.WA_MacShowFocusRect, 0)
self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
-class XmlWindow(QDialog):
- def __init__(self, parent=None, title='XML Window'):
- QDialog.__init__(self, parent)
- self.setWindowTitle(title)
-
- self.document = None
- self.model = None
- self.title = title
-
- self.view = XmlView(self)
- self.delegate = XmlDelegate(self)
- self.view.setItemDelegate(self.delegate)
- self.delegate.insertNodeDelegate('element', ElemNodeDelegate())
- self.delegate.insertNodeDelegate('text', TextNodeDelegate())
- self.delegate.insertNodeDelegate('comment', CommentNodeDelegate())
- layout = QVBoxLayout()
- layout.addWidget(self.view)
- self.setLayout(layout)
-
- self.updateView()
-
- def show(self):
- self.updateView()
- QDialog.show(self)
-
- def updateView(self):
- del self.document
- del self.model
- self.document = None
- self.model = None
-
- self.document = QDomDocument(self.title)
- self.model = DomModel(self.document, self)
-
- self.view.setModel(self.model)
- self.view.expand(self.model.index(0, 0)) #expand first level only
-
- #move the code below to rspec window
- rspec_file = config.getSliceRSpecFile()
- if not os.path.exists(rspec_file):
- return
-
- self.document.setContent(open(rspec_file,'r').read())
-
-
-
class XmlDelegate(QItemDelegate):
def __init__(self, parent=None):