From: Giovanni Gherdovich Date: Tue, 19 Oct 2010 14:37:01 +0000 (+0200) Subject: got rid of the misterious widget in the rspec window X-Git-Url: http://git.onelab.eu/?p=sface.git;a=commitdiff_plain;h=7ee933865d5f5c6b39bd24cf17edacb15d4e35c3 got rid of the misterious widget in the rspec window --- diff --git a/sface/rspecwindow.py b/sface/rspecwindow.py index f9bca14..d407114 100644 --- a/sface/rspecwindow.py +++ b/sface/rspecwindow.py @@ -42,16 +42,40 @@ class RSpecView(XmlView): 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): diff --git a/sface/xmlwidget.py b/sface/xmlwidget.py index a6c36b3..2aa7238 100644 --- a/sface/xmlwidget.py +++ b/sface/xmlwidget.py @@ -183,9 +183,15 @@ class DomItem: 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) @@ -193,52 +199,6 @@ class XmlView(QTreeView): 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):