def __init__(self, parent=None): """ QVersionTab(parent: QWidget) -> QVersionTab Make it a main window with dockable area and a QVersionTreeView in the middle """ QDockContainer.__init__(self, parent) self.setWindowTitle('Version Tree') self.versionView = QVersionTreeView() self.setCentralWidget(self.versionView) self.toolWindow().setFeatures(QtGui.QDockWidget.NoDockWidgetFeatures) self.toolWindow().hide() self.versionProp = QVersionProp(self) self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.versionProp.toolWindow()) self.controller = None self.connect(self.toolWindow(), QtCore.SIGNAL('topLevelChanged(bool)'), self.updateWindowTitle) self.connect(self.versionView.scene(), QtCore.SIGNAL('twoVersionsSelected(int,int)'), self.twoVersionsSelected) self.connect(self.versionView, QtCore.SIGNAL('resetQuery()'), self.resetQuery)
def get_vt_graph(vt_list, tree_info, pdf=False): """get_vt_graph(vt_list: list of locator, tree_info:str) Load all vistrails in vt_list and dump their tree to tree_info. """ result = [] if is_running_gui(): from gui.vistrail_controller import VistrailController as \ GUIVistrailController for locator in vt_list: try: (v, abstractions, thumbnails, mashups) = load_vistrail(locator) controller = GUIVistrailController() if tree_info is not None: from gui.version_view import QVersionTreeView version_view = QVersionTreeView() from gui.pipeline_view import QPipelineView pipeline_view = QPipelineView() controller.current_pipeline_view = pipeline_view.scene() controller.set_vistrail(v, locator, abstractions, thumbnails, mashups) version_view.scene().setupScene(controller) if pdf: base_fname = "graph_%s.pdf" % locator.short_name filename = os.path.join(tree_info, base_fname) version_view.scene().saveToPDF(filename) else: base_fname = "graph_%s.png" % locator.short_name filename = os.path.join(tree_info, base_fname) version_view.scene().saveToPNG(filename) del version_view result.append((True, "")) except Exception, e: result.append((False, str(e)))