Пример #1
0
    def showQSSPN(self, model):#w# open graph building tabs
        table_node = QSSPNTable(); table_node.write(model, 'Node')
        tab_node = swing.JScrollPane(table_node)
        table_int = QSSPNTable(); table_int.write(model, 'Intact')
        tab_int = swing.JScrollPane(table_int)
        table_sub = QSSPNTable(); table_sub.write(model, 'Sub')
        tab_sub = swing.JScrollPane(table_sub)
        table_actS = QSSPNTable(); table_actS.write(model, 'ActS')
        tab_actS = swing.JScrollPane(table_actS)
        table_met = QSSPNTable(); table_met.write(model, 'Met')
        tab_met = swing.JScrollPane(table_met)
        table_actM = QSSPNTable(); table_actM.write(model, 'ActM')
        tab_actM = swing.JScrollPane(table_actM)
        table_enz = QSSPNTable(); table_enz.write(model, 'Enz')
        tab_enz = swing.JScrollPane(table_enz)
        table_actE = QSSPNTable(); table_actE.write(model, 'ActE')
        tab_actE = swing.JScrollPane(table_actE)
        table_list = QSSPNTable(); table_list.write(model, 'List')
        tab_list = swing.JScrollPane(table_list)
        splitPane_int = swing.JSplitPane(swing.JSplitPane.HORIZONTAL_SPLIT)
        splitPane_sub = swing.JSplitPane(swing.JSplitPane.VERTICAL_SPLIT)
        panel_int = swing.JPanel().add(tab_int)
        splitPane_int.setLeftComponent(panel_int)
        panel_sub = swing.JPanel().add(tab_sub)
        panel_actS = swing.JPanel().add(tab_actS)
        splitPane_sub.setTopComponent(panel_sub)
        splitPane_sub.setBottomComponent(panel_actS)
        splitPane_int.setRightComponent(splitPane_sub)
        splitPane_int.setDividerLocation(520)
        splitPane_sub.setDividerLocation(300)
#        splitPane_int.setResizeWeight(1)
#        splitPane_sub.setResizeWeight(0.5)

        splitPane_met = swing.JSplitPane(swing.JSplitPane.HORIZONTAL_SPLIT)
        panel_met = swing.JPanel().add(tab_met)
        splitPane_met.setLeftComponent(panel_met)
        panel_actM = swing.JPanel().add(tab_actM)
        splitPane_met.setRightComponent(panel_actM)
        splitPane_met.setDividerLocation(500)

        splitPane_enz = swing.JSplitPane(swing.JSplitPane.HORIZONTAL_SPLIT)
        splitPane_actList = swing.JSplitPane(swing.JSplitPane.VERTICAL_SPLIT)
        panel_enz = swing.JPanel().add(tab_enz)
        splitPane_enz.setLeftComponent(panel_enz)
        panel_actE = swing.JPanel().add(tab_actE)
        panel_list = swing.JPanel().add(tab_list)
        splitPane_actList.setTopComponent(panel_actE)
        splitPane_actList.setBottomComponent(panel_list)
        splitPane_enz.setRightComponent(splitPane_actList)
        splitPane_enz.setDividerLocation(500)
        splitPane_actList.setDividerLocation(250)

        self.addTab('PN nodes', tab_node)
        self.addTab('Interactions', splitPane_int)
        self.addTab('Metabolites', splitPane_met)
        self.addTab('Enzymes', splitPane_enz)
#        tabs.setToolTipTextAt(tabs.indexOfTab('PN nodes'), 'define reactions into graph-groups ')
#        tabs.setToolTipTextAt(tabs.indexOfTab('Interactions'), 'list of graph-groups')
#        tabs.setToolTipTextAt(tabs.indexOfTab('Metabolites'), 'reactions and related metabolites for a group')
#        tabs.setToolTipTextAt(tabs.indexOfTab('Enzymes'), 'map between name and tag')
#        TabCloser('QSSPN').put(tabs, self)
        table_actS.setRowSorter(None)
        table_actM.setRowSorter(None)
        table_actE.setRowSorter(None)
        table_node.setColWidths_gsa(self.getWidth())
        table_int.setColWidths_gsa(self.getWidth())
        table_sub.setColWidths_gsa(self.getWidth())
        table_actS.setColWidths_gsa(self.getWidth())
        table_met.setColWidths_gsa(self.getWidth())
        table_actM.setColWidths_gsa(self.getWidth())
        table_enz.setColWidths_gsa(self.getWidth())
        table_actE.setColWidths_gsa(self.getWidth())
        table_list.setColWidths_gsa(self.getWidth())
        #add listeners
        SeModel = table_int.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerInt(table_int, table_sub, table_actS, self.qsspn, self.curtable))
        SeModel = table_sub.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerSub(table_sub, table_actS, self.curtable))
        SeModel = table_actS.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerActS(table_actS, self.curtable))
        SeModel = table_met.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerMet(table_met, table_actM, self.curtable))
        SeModel = table_actM.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerActM(table_actM, self.curtable))
        SeModel = table_enz.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerEnz(table_enz, table_actE, table_list, self.curtable))
        SeModel = table_actE.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerActE(table_actE, self.curtable))
        SeModel = table_list.getSelectionModel()
        SeModel.addListSelectionListener(QSSPN.Table.SelectionListenerList(table_list, self.curtable))