def registerExtenderCallbacks(self, callbacks): self.callbacks = callbacks self.helpers = callbacks.getHelpers() self.callbacks.setExtensionName("KkMultiProxy") self.PROXY_LIST = [] self.jPanel = JPanel() boxVertical = Box.createVerticalBox() boxHorizontal = Box.createHorizontalBox() boxHorizontal.add(JButton("File", actionPerformed=self.getFile)) self.FileText = JTextField("") boxHorizontal.add(self.FileText) boxVertical.add(boxHorizontal) TableHeader = ('IP', 'PORT') TableModel = DefaultTableModel(self.PROXY_LIST, TableHeader) self.Table = JTable(TableModel) boxVertical.add(self.Table) boxHorizontal = Box.createHorizontalBox() boxHorizontal.add(JButton("Add", actionPerformed=self.addIP)) boxHorizontal.add(JButton("Delete", actionPerformed=self.deleteIP)) boxHorizontal.add(JButton("Save", actionPerformed=self.saveIP)) boxVertical.add(boxHorizontal) self.jPanel.add(boxVertical) self.callbacks.addSuiteTab(self) self.callbacks.registerHttpListener(self) return
def changeSelection(self, row, col, toggle, extend): logEntry = self._extender._log.get(self.convertRowIndexToModel(row)) self._extender.iRequestTextEditor.setMessage(logEntry._requestResponse.getRequest(), True) self._extender.iResponseTextEditor.setMessage(logEntry._requestResponse.getResponse(), False) self._extender._currentlyDisplayedItem = logEntry._requestResponse JTable.changeSelection(self, row, col, toggle, extend)
def changeSelection(self, row, col, toggle, extend): # show the log entry for the selected row logEntry = self._extender._log.get( self._extender.logTable.convertRowIndexToModel(row)) self._extender._requestViewer.setMessage( logEntry._requestResponse.getRequest(), True) self._extender._responseViewer.setMessage( logEntry._requestResponse.getResponse(), False) self._extender._originalrequestViewer.setMessage( logEntry._originalrequestResponse.getRequest(), True) self._extender._originalresponseViewer.setMessage( logEntry._originalrequestResponse.getResponse(), False) if logEntry._unauthorizedRequestResponse != None: self._extender._unauthorizedrequestViewer.setMessage( logEntry._unauthorizedRequestResponse.getRequest(), True) self._extender._unauthorizedresponseViewer.setMessage( logEntry._unauthorizedRequestResponse.getResponse(), False) else: self._extender._unauthorizedrequestViewer.setMessage( "Request disabled", True) self._extender._unauthorizedresponseViewer.setMessage( "Response disabled", False) self._extender._currentlyDisplayedItem = logEntry._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def initTable(self, lociNames, pv, ci, locusFst): colNames = Vector() colNames.add('Locus') colNames.add('Het') colNames.add('Fst') colNames.add('P(simulated Fst < sample Fst)') colNames.add('FDR') data = Vector() self.data = data falses = self.calcFalsePositives(pv, ci, self.fdr) currentPos = 0 for i in range(len(lociNames)): line = Vector() locus = lociNames[i] line.add(locus) if not locusFst[i]: line.add("NA") line.add("NA") line.add("NA") line.add("NA") else: line.add(str(pv[currentPos][0])) line.add(str(pv[currentPos][1])) line.add(str(self.getP(pv[currentPos]))) line.add(str(falses[currentPos])) currentPos += 1 data.add(line) self.table = JTable(data, colNames) self.table.setDefaultRenderer( Class.forName("java.lang.Object"), ColorRenderer(data, ci, self.chart.neuColor, self.chart.balColor, self.chart.posColor))
def changeSelection(self, row, col, toggle, extend): # show the message entry for the selected row selectedMessage = self.getModel()._db.getMessageByRow(row) self._extender._tabs.removeAll() # NOTE: testing if .locked is ok here since its a manual operation if self.getModel()._db.lock.locked(): # Provide some feedback on a click self.redrawTable() return # Create original Request tab and set default tab to Request # Then Create test tabs and set the default tab to Response for easy analysis originalTab = self.createRequestTabs(selectedMessage._requestResponse) originalTab.setSelectedIndex(0) self._extender._tabs.addTab("Original",originalTab) for userIndex in selectedMessage._userRuns.keys(): if not self.getModel()._db.arrayOfUsers[userIndex].isDeleted(): tabname = str(self.getModel()._db.arrayOfUsers[userIndex]._name) self._extender._tabs.addTab(tabname,self.createRequestTabs(selectedMessage._userRuns[userIndex])) # TODO: do this on a tab change on extender._tabs: I think its needed for sending to repeater and comparer # WEIRD: I think this should make it so that only the original can be sent to places # However, it looks like it is working as expected... ??? self._extender._currentlyDisplayedItem = selectedMessage._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def __init__(self, top_document, main_loop_controller): #--- top_document is a parent document for all controllers self.top_document = top_document self.main_loop_controller = main_loop_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #---------------------------------------------- left_panel = JPanel(BorderLayout()) self.rf_power_table = JTable(RF_Power_Table_Model(self)) self.rf_power_table.setSelectionMode( ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.rf_power_table.setFillsViewportHeight(true) self.rf_power_table.setPreferredScrollableViewportSize( Dimension(800, 240)) scrl_rf_power_panel = JScrollPane(self.rf_power_table) scrl_rf_power_panel.setBorder( BorderFactory.createTitledBorder(etched_border, "RF Net Power")) self.init_buttons_panel = Init_RF_Power_Controller_Panel(self) self.start_stop_panel = Start_Stop_Panel(self) tmp0_panel = JPanel(BorderLayout()) tmp0_panel.add(self.init_buttons_panel, BorderLayout.NORTH) tmp0_panel.add(scrl_rf_power_panel, BorderLayout.CENTER) tmp0_panel.add(self.start_stop_panel, BorderLayout.SOUTH) tmp1_panel = JPanel(BorderLayout()) tmp1_panel.add(tmp0_panel, BorderLayout.NORTH) left_panel.add(tmp1_panel, BorderLayout.WEST) #-------------------------------------------------------- self.main_panel.add(left_panel, BorderLayout.WEST) #---- non GUI controllers self.loop_run_state = Loop_Run_State()
def makeUI(model): table = JTable(model) jsp = JScrollPane(table) regex_label = JLabel("Search: ") regex_field = JTextField(20) top = JPanel() top.add(regex_label) top.add(regex_field) top.setLayout(BoxLayout(top, BoxLayout.X_AXIS)) base_path_label = JLabel("Base path:") base_path_field = JTextField(50) bottom = JPanel() bottom.add(base_path_label) bottom.add(base_path_field) bottom.setLayout(BoxLayout(bottom, BoxLayout.X_AXIS)) all = JPanel() all.add(top) all.add(jsp) all.add(bottom) all.setLayout(BoxLayout(all, BoxLayout.Y_AXIS)) frame = JFrame("File paths") frame.getContentPane().add(all) frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE) frame.addWindowListener(Closing()) frame.pack() frame.setVisible(True) # Listeners regex_field.addKeyListener(EnterListener(table, model, frame)) table.addMouseListener(RowClickListener(base_path_field)) # return model, table, regex_field, frame
def changeSelection(self, row, col, toggle, extend): # show the message entry for the selected row selectedMessage = self.getModel()._db.getMessageByRow(row) self._extender._tabs.removeAll() # NOTE: testing if .locked is ok here since its a manual operation if self.getModel()._db.lock.locked(): # Provide some feedback on a click self.redrawTable() return # Create original Request tab and set default tab to Request # Then Create test tabs and set the default tab to Response for easy # analysis originalTab = self.createRequestTabs(selectedMessage._requestResponse) originalTab.setSelectedIndex(0) self._extender._tabs.addTab("Original", originalTab) for campaignIndex in selectedMessage._campaignRuns.keys(): if not self.getModel( )._db.arrayOfCampaigns[campaignIndex].isDeleted(): tabname = str( self.getModel()._db.arrayOfCampaigns[campaignIndex]._name) self._extender._tabs.addTab( tabname, self.createRequestTabs( selectedMessage._campaignRuns[campaignIndex])) self._extender._currentlyDisplayedItem = selectedMessage._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def initComponents(self): dataModel = DefaultTableModel(self.regTableData, self.regCols) self.regTable = JTable(dataModel) scrollPaneReg = JScrollPane() scrollPaneReg.getViewport().setView((self.regTable)) self.regTab.add(scrollPaneReg) # self.logTabbedPane.addTab('Registred',self.regTab) self.logTabbedPane.insertTab("Registred", None, self.regTab, None, 0) dataModel = DefaultTableModel(self.parkTableData, self.parkCols) self.parkTable = JTable(dataModel) scrollPanePark = JScrollPane() scrollPanePark.getViewport().setView((self.parkTable)) self.parkedTab.add(scrollPanePark) # self.logTabbedPane.addTab('Parked',self.parkedTab) self.logTabbedPane.insertTab("Parked", None, self.parkedTab, None, 1) dataModel = DefaultTableModel(self.bypassTableData, self.bypassCol) self.bypassTable = JTable(dataModel) scrollPaneBypass = JScrollPane() scrollPaneBypass.getViewport().setView((self.bypassTable)) self.bypassTab.add(scrollPaneBypass) # self.logTabbedPane.addTab('Bypassed',self.bypassTab) self.logTabbedPane.insertTab("Bypassed", None, self.bypassTab, None, 2) self.add(self.logTabbedPane, BorderLayout.CENTER) innerBorder = BorderFactory.createTitledBorder('View Logs ') outerBorder = BorderFactory.createEmptyBorder(5, 5, 5, 5) self.setBorder( BorderFactory.createCompoundBorder(outerBorder, innerBorder))
def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top panels = offsets analysis ---------------------------- top_panel = JPanel(BorderLayout()) self.bpms_offsets_from_ccl4_panel = BPMs_Offsets_from_CCL4_Panel(self.scl_long_tuneup_controller) self.bpms_offsets_from_hebt1_panel = BPMs_Offsets_from_HEBT1_Panel(self.scl_long_tuneup_controller) self.bpms_offsets_from_ext_file_panel = BPMs_Offsets_from_ExtFile_Panel(self.scl_long_tuneup_controller) top_panel0 = JPanel(BorderLayout()) top_panel0.add(self.bpms_offsets_from_ccl4_panel,BorderLayout.NORTH) top_panel0.add(self.bpms_offsets_from_hebt1_panel,BorderLayout.SOUTH) top_panel1 = JPanel(BorderLayout()) top_panel1.add(top_panel0,BorderLayout.NORTH) top_panel1.add(self.bpms_offsets_from_ext_file_panel,BorderLayout.SOUTH) top_panel.add(top_panel1,BorderLayout.NORTH) #--------center panel = table------------ center_panel = JPanel(BorderLayout()) self.bpm_offsets_table_model = PhaseOffsets_BPMs_Table_Model(self.scl_long_tuneup_controller) self.bpm_offsets_table = JTable(self.bpm_offsets_table_model) self.bpm_offsets_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.bpm_offsets_table.setFillsViewportHeight(true) scrl_panel = JScrollPane(self.bpm_offsets_table) scrl_panel.setBorder(etched_border) center_panel.add(scrl_panel,BorderLayout.CENTER) #-------- bottom panel = post analysis --------------- bottom_panel = JPanel(BorderLayout()) self.set_bpms_as_bad_panel = Set_BPMs_as_Bad_Panel(self.scl_long_tuneup_controller) bottom_panel.add(self.set_bpms_as_bad_panel,BorderLayout.SOUTH) #-------------------------------------------------- self.main_panel.add(top_panel,BorderLayout.NORTH) self.main_panel.add(center_panel,BorderLayout.CENTER) self.main_panel.add(bottom_panel,BorderLayout.SOUTH)
def createAnyTable(self, table_model, table_number, min_size): _table = JTable(table_model) _table.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS) _scrolltable = JScrollPane(_table) _scrolltable.setMinimumSize(min_size) # _table.setMinimumSize(min_size) return _scrolltable
def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top params panel----------------------- top_panel = JPanel(BorderLayout()) self.init_amp_phases_panel = Init_New_Amps_Phases_Panel(self.scl_long_tuneup_controller) self.new_amp_phases_to_epics_panel = NEW_Amp_and_Phases_to_EPICS_Panel(self.scl_long_tuneup_controller) top_panel.add(self.init_amp_phases_panel,BorderLayout.CENTER) top_panel.add(self.new_amp_phases_to_epics_panel,BorderLayout.SOUTH) #------cavities table panel -------- cavs_rescale_panel = JPanel(BorderLayout()) txt = "Cavities' Prameters. New Amp and Avg. Gap Phases can be changed manually." rescale_table_border = BorderFactory.createTitledBorder(etched_border,txt) cavs_rescale_panel.setBorder(rescale_table_border) self.cavs_rescale_table = JTable(Cavs_Rescale_Table_Model(self.scl_long_tuneup_controller)) self.cavs_rescale_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.cavs_rescale_table.setFillsViewportHeight(true) self.cavs_rescale_table.getSelectionModel().addListSelectionListener(Cavs_Table_Selection_Listener(self.scl_long_tuneup_controller)) scrl_panel0 = JScrollPane(self.cavs_rescale_table) cavs_rescale_panel.add(scrl_panel0,BorderLayout.CENTER) center_panel = JPanel(BorderLayout()) center_panel.add(cavs_rescale_panel,BorderLayout.CENTER) #-------- post-rescale actions panel bottom_panel = JPanel(BorderLayout()) #bottom_panel.add(self.post_rescale_panel,BorderLayout.WEST) #-------------------------------------------------- self.main_panel.add(top_panel,BorderLayout.NORTH) self.main_panel.add(center_panel,BorderLayout.CENTER) self.main_panel.add(bottom_panel,BorderLayout.SOUTH) #----- model for tracking self.scl_tracker_model = SCL_RfGaps_Fitter_Tracker_Model(self.scl_long_tuneup_controller)
def changeSelection(self, row, col, toggle, extend): ''' Displays the selected item in the content pane ''' JTable.changeSelection(self, row, col, toggle, extend) self.bottom_pane.show_log_entry(self.gui_log.get(row))
def changeSelection(self, row, col, toggle, extend): # shows "entries" matching # show the log entry for the selected row #print 'Selecting entry ' + str(row) + ' in changeSelection: ' JTable.changeSelection(self, row, col, toggle, extend) modelRow = self.convertRowIndexToModel(row) #print 'converted: ' + str() logEntry = self._extender._log.get(modelRow) #print str(self._extender._helpers.analyzeRequest(logEntry._requestResponse).getUrl()) self._extender.SELECTED_MODEL_ROW = modelRow self._extender.SELECTED_VIEW_ROW = row self._extender._currentlyDisplayedItem = logEntry._requestResponse self._extender._requestViewer.setMessage( logEntry._requestResponse.getRequest(), True) self._extender._responseViewer.setMessage( logEntry._requestResponse.getResponse(), False) #JTable.changeSelection(self, row, col, toggle, extend) return
def gui(self): xnode = self.xdoc.getDocumentElement() tnode = self.createTree(xnode) # create tree and display jt = JTree(tnode) jsp = JScrollPane(jt) tree_box = Box(BoxLayout.Y_AXIS) tree_box.add(jsp) tree_box.add(Box.createHorizontalStrut(10)) headerSorter = TableSorter(DefaultTableModel()) jtb = JTable(headerSorter) headerSorter.addMouseListenerToHeaderInTable(jtb) jtb.setAutoResizeMode(JTable.AUTO_RESIZE_OFF) jsp2 = JScrollPane(jtb) table_box = Box(BoxLayout.Y_AXIS) table_box.add(jsp2) table_box.add(Box.createHorizontalStrut(500)) mp = JPanel() mp.setLayout(BoxLayout(mp,BoxLayout.X_AXIS)) mp.add(tree_box) mp.add(table_box) # add listeners nsl = NodeSelectionListener(jtb,xnode) jt.addTreeSelectionListener(nsl) # return mp
def __init__(self,scl_long_tuneup_controller): self.scl_long_tuneup_controller = scl_long_tuneup_controller self.setLayout(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() titled_border = BorderFactory.createTitledBorder(etched_border,"BPM Table and Plots") self.setBorder(titled_border) #---------------------------------------- self.bpm_table = JTable(Energy_Meter_BPMs_Table_Model(self.scl_long_tuneup_controller)) self.bpm_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.bpm_table.setFillsViewportHeight(true) self.bpm_table.setPreferredScrollableViewportSize(Dimension(400,300)) scrl_panel = JScrollPane(self.bpm_table) scrl_panel.setBorder(etched_border) bpm_table_panel = JPanel(BorderLayout()) bpm_table_panel.add(scrl_panel,BorderLayout.WEST) #----------------------------------------- self.gp_bpm_phase_err = FunctionGraphsJPanel() self.gp_bpm_phase_err.setLegendButtonVisible(true) self.gp_bpm_phase_err.setChooseModeButtonVisible(true) self.gp_bpm_phase_err.setName("BPM Phase Errors") self.gp_bpm_phase_err.setAxisNames("position, [m]","BPM Phase Error, [deg]") self.gp_bpm_phase_err.setBorder(etched_border) bpm_graph_panel = JPanel(BorderLayout()) bpm_graph_panel.add(self.gp_bpm_phase_err) #------graph data self.bpm_phase_err_gd = BasicGraphData() self.bpm_phase_err_gd.setGraphPointSize(8) self.bpm_phase_err_gd.setDrawLinesOn(false) self.bpm_phase_err_gd.setGraphColor(Color.BLUE) self.gp_bpm_phase_err.addGraphData(self.bpm_phase_err_gd) #----------------------------------------- self.add(bpm_table_panel,BorderLayout.WEST) self.add(bpm_graph_panel,BorderLayout.CENTER)
def testJTableColumns(self): personList = [self.person] personList.append(Person(u'Mary', u'Mediocre', 1970)) personList.append(Person(u'Bob', u'Mediocre', 1972)) tableModel = ObjectTableModel(personList, (u'First name', String, 'firstName'), (u'Last name', String, 'lastName'), (u'Birth year', Integer, 'birthYear')) table = JTable(tableModel) self.group.bind(table, u'selectedColumns', self.dummy, u'value') table.setColumnSelectionInterval(1, 1) assert self.dummy.value == array('i', [1]) table.setColumnSelectionInterval(1, 2) assert self.dummy.value == array('i', [1, 2]) columnModel = DefaultTableColumnModel() columnModel.addColumn(TableColumn()) columnModel.addColumn(TableColumn()) table.setColumnModel(columnModel) table.setColumnSelectionInterval(0, 1) assert self.dummy.value == array('i', [0, 1])
class Tablas_Caracteres_Especiales(JFrame): def __init__(self): super(Tablas_Caracteres_Especiales, self).__init__() self.window() def window(self): self.setTitle("Tablas Caracteres") self.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) self.setLayout(None) self.setLocationRelativeTo(None) self.setVisible(True) def config(): self.barra = JScrollPane() self.Tab_Caracteres_Especiales = JTable() nombre = ["nombre", "apeM", "apeP"] datos = ["victor", "esau", "cholo"] self.Tab_Caracteres_Especiales = JTable(datos, nombre) self.Tab_Caracteres_Especiales.addRow(datos) # self.Tab_Caracteres_Especiales.setFont(Font("Tahoma", 0, 14)); # NOI18N self.barra.setViewportView(self.Tab_Caracteres_Especiales) #TODO: imcompleto se nesita una array y python maneja listas :( self.getContentPane().add(self.barra) self.barra.setBounds(0, 0, 929, 574) self.setBounds(0, 0, 939, 604)
def __init__(self,top_document,accl): #--- top_document is a parent document for all controllers self.top_document = top_document self.main_loop_controller = self.top_document.main_loop_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #--------------------------------------------- #---- Cavities' Controllers - only DTLs self.cav_acc_scan_controllers = [] self.cav_wrappers = self.main_loop_controller.cav_wrappers[4:10] self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[0],"FC160")) self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[1],"FC248")) self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[2],"FC334")) self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[3],"FC428")) self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[4],"FC524")) self.cav_acc_scan_controllers.append(DTL_Acc_Scan_Cavity_Controller(self,self.cav_wrappers[5],"FC104")) #----acceptance scans loop timer self.acc_scan_loop_timer = Acc_Scan_Loop_Timer(self) #---------------------------------------------- self.tabbedPane = JTabbedPane() self.tabbedPane.add("Cavity",JPanel(BorderLayout())) self.tabbedPane.add("Pattern",JPanel(BorderLayout())) #-------------------------------------------------------- self.cav_table = JTable(Cavities_Table_Model(self)) self.cav_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.cav_table.setFillsViewportHeight(true) self.cav_table.setPreferredScrollableViewportSize(Dimension(500,120)) self.cav_table.getSelectionModel().addListSelectionListener(Cavs_Table_Selection_Listener(self)) scrl_cav_panel = JScrollPane(self.cav_table) #------------------------------------------------------- scrl_cav_panel.setBorder(BorderFactory.createTitledBorder(etched_border,"Cavities' Parameters")) init_buttons_panel = JPanel(FlowLayout(FlowLayout.LEFT,5,2)) #---- initialization buttons init_selected_cavs_button = JButton("Init Selected Cavs") init_selected_cavs_button.addActionListener(Init_Selected_Cavs_Button_Listener(self)) fc_in_selected_cavs_button = JButton("FC In for Selected Cavs") fc_in_selected_cavs_button.addActionListener(FC_In_Selected_Cavs_Button_Listener(self)) fc_out_selected_cavs_button = JButton("FC Out for Selected Cavs") fc_out_selected_cavs_button.addActionListener(FC_Out_Selected_Cavs_Button_Listener(self)) init_buttons_panel.add(init_selected_cavs_button) init_buttons_panel.add(fc_in_selected_cavs_button) init_buttons_panel.add(fc_out_selected_cavs_button) #---- start stop buttons panel self.start_stop_panel = Start_Stop_Panel(self) #------------------------------------------------- tmp0_panel = JPanel(BorderLayout()) tmp0_panel.add(init_buttons_panel,BorderLayout.NORTH) tmp0_panel.add(scrl_cav_panel,BorderLayout.CENTER) tmp0_panel.add(self.start_stop_panel,BorderLayout.SOUTH) tmp1_panel = JPanel(BorderLayout()) tmp1_panel.add(tmp0_panel,BorderLayout.NORTH) #------------------------------------------------- left_panel = JPanel(BorderLayout()) left_panel.add(tmp1_panel,BorderLayout.WEST) #-------------------------------------------------- self.main_panel.add(left_panel,BorderLayout.WEST) self.main_panel.add(self.tabbedPane,BorderLayout.CENTER) #----------- loop state self.loop_run_state = Acc_Scans_Loop_Run_State()
def changeSelection(self, row, col, toggle, extend): scopeInfo = self._extender._scopes.get(row) self._extender._label_value_regex_now_2.setText(scopeInfo.value_regex.pattern) self._extender._form_value_regex.setText(scopeInfo.value_regex.pattern) self._extender._label_header_now_2.setText(scopeInfo.header_name) self._extender._form_header.setText(scopeInfo.header_name) JTable.changeSelection(self, row, col, toggle, extend)
def changeSelection(self, row, col, toggle, extend): logEntry = self._extender._log.get(row) self._extender._requestViewer.setMessage(logEntry.getRequest(), True) self._extender._responseViewer.setMessage(logEntry.getResponse(), False) self._extender._currentlyDisplayedItem = logEntry JTable.changeSelection(self, row, col, toggle, extend)
def __initTable(self): table = JTable(HitListModel()) scrollpane = JScrollPane(table) table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF) table.addMouseListener(HitListMouseListener()) self.add(scrollpane, self.__createTableConstraints()) scrollpane.addComponentListener(PanelSizeChangeListener(table)) return table
def changeSelection(self, row, col, toggle, extend): logEntry = self._extender._log.get(row) self._extender._requestViewer.setMessage(logEntry._requestResponse.getRequest(), True) self._extender._responseViewer.setMessage(logEntry._requestResponse.getResponse(), False) self._extender._currentlyDisplayedItem = logEntry._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def changeSelection(self, row, col, toggle, extend): # show the entry for the selected row entry = self._extender._issues.get(row) self._extender._texteditor.setText(entry.getDetail()) JTable.changeSelection(self, row, col, toggle, extend) return
def changeSelection(self, row, col, toggle, extend): # show the log entry for the selected row logEntry = self._extender._log.get(row) self._extender._requestViewer.setMessage(logEntry._requestResponse.getRequest(), True) self._extender._responseViewer.setMessage(logEntry._requestResponse.getResponse(), False) self._extender._currentlyDisplayedItem = logEntry._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def run(self): frame = JFrame('cbEdit1', size=(200, 100), locationRelativeTo=None, defaultCloseOperation=JFrame.EXIT_ON_CLOSE) table = JTable(tm()) table.setDefaultEditor(String, cbEditor()) frame.add(JScrollPane(table)) frame.setVisible(1)
def run(self): frame = JFrame('SpinEdit', size=(200, 106), locationRelativeTo=None, defaultCloseOperation=JFrame.EXIT_ON_CLOSE) table = JTable(tm(), rowHeight=20) table.setDefaultEditor(String, editor()) frame.add(JScrollPane(table)) frame.setVisible(1)
def __init__(self,transverse_twiss_analysis_Controller): self.transverse_twiss_analysis_Controller = transverse_twiss_analysis_Controller self.setLayout(BorderLayout()) #-----------dict table panel etched_border = BorderFactory.createEtchedBorder() border = BorderFactory.createTitledBorder(etched_border,"Quad and Cavities Amp.&Phases Sets") self.setBorder(border) self.quad_cav_dict_table_model = QuadCavDict_Table_Model(self.transverse_twiss_analysis_Controller.accStatesKeeper) self.dict_table = JTable(self.quad_cav_dict_table_model) self.dict_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.dict_table.setFillsViewportHeight(true) self.dict_table.setPreferredScrollableViewportSize(Dimension(120,100)) self.dict_table.getSelectionModel().addListSelectionListener(QuadCavDict_Table_Selection_Listener(self.transverse_twiss_analysis_Controller)) #--------buttons panel button_panel = JPanel(BorderLayout()) self.gaussButton = JRadioButton("Use Ext. Gauss Fit") self.custom_gaussButton = JRadioButton("Use Gauss Fit") self.custom_rmsButton = JRadioButton("Use RMS") button_group = ButtonGroup() button_group.add(self.gaussButton) button_group.add(self.custom_gaussButton) button_group.add(self.custom_rmsButton) button_group.clearSelection() self.gaussButton.setSelected(true) button_panel0 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel0.add(self.gaussButton) button_panel1 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel1.add(self.custom_gaussButton) button_panel2 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel2.add(self.custom_rmsButton) button_panel012 = JPanel(GridLayout(3,1)) button_panel012.add(button_panel0) button_panel012.add(button_panel1) button_panel012.add(button_panel2) #-------new buttons----- button_bottom_panel = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_bottom_panel0 = JPanel(GridLayout(3,1,2,2)) dump_quad_fields_button = JButton("Dump Quad Fields to ASCII") dump_quad_fields_button.addActionListener(Dump_Quad_Fields_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(dump_quad_fields_button) dump_cav_amps_phases_button = JButton("Dump. Cav Amps. Phases to ASCII") dump_cav_amps_phases_button.addActionListener(Dump_Cav_Amps_Phases_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(dump_cav_amps_phases_button) read_cav_amps_phases_button = JButton("Read Cav Amps. Phases from ASCII") read_cav_amps_phases_button.addActionListener(Read_Cav_Amps_Phases_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(read_cav_amps_phases_button) button_bottom_panel.add(button_bottom_panel0) #----- final knobs panel button_panel.add(button_panel012,BorderLayout.NORTH) button_panel.add(button_bottom_panel,BorderLayout.SOUTH) self.gaussButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,0)) self.custom_gaussButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,1)) self.custom_rmsButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,2)) #---------------------------------------------------------- self.add(JScrollPane(self.dict_table), BorderLayout.WEST) self.add(button_panel, BorderLayout.CENTER)
def __init__(self,linac_wizard_document): #--- linac_wizard_document the parent document for all controllers self.linac_wizard_document = linac_wizard_document self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------tables with Seq. names and button tables_panel = JPanel(BorderLayout()) tables_panel.setBorder(etched_border) self.first_table = JTable(WS_Records_Table_Model("First ")) self.last_table = JTable(WS_Records_Table_Model("Last ")) self.first_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.last_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.first_table.setFillsViewportHeight(true) self.last_table.setFillsViewportHeight(true) tables01_panel = JPanel(BorderLayout()) scrl_panel0 = JScrollPane(self.first_table) scrl_panel1 = JScrollPane(self.last_table) #tables01_panel.add(JScrollPane(self.first_table),BorderLayout.WEST) #tables01_panel.add(JScrollPane(self.last_table),BorderLayout.EAST) self.first_table.getCellRenderer(0,0).setHorizontalAlignment(JLabel.CENTER) self.last_table.getCellRenderer(0,0).setHorizontalAlignment(JLabel.CENTER) self.first_table.setPreferredScrollableViewportSize(Dimension(120,300)) self.last_table.setPreferredScrollableViewportSize(Dimension(120,300)) tables01_panel.add(scrl_panel0,BorderLayout.WEST) tables01_panel.add(scrl_panel1,BorderLayout.EAST) tables_button_panel = JPanel(BorderLayout()) tables_button_panel.add(tables01_panel,BorderLayout.WEST) seq_button_panel = JPanel(FlowLayout(FlowLayout.CENTER,5,5)) seq_set_button = JButton(" Set ComboSequence ") seq_button_panel.add(seq_set_button) tables_button_panel.add(seq_button_panel,BorderLayout.SOUTH) tables_panel.add(tables_button_panel,BorderLayout.NORTH) self.main_panel.add(tables_panel,BorderLayout.WEST) #--------central panel------- cav_amp_phase_button = JButton(" Read Cavities Amp.&Phases from Ext. File ") cav_info_from_scl_tuneup_button = JButton("Get SCL Cav. Amp.&Phases from SCL Long. TuneUp") new_accelerator_button = JButton(" Setup a New Accelerator File ") center_buttons_panel0 = JPanel(FlowLayout(FlowLayout.CENTER,5,5)) center_buttons_panel0.add(cav_amp_phase_button) center_buttons_panel1 = JPanel(FlowLayout(FlowLayout.CENTER,5,5)) center_buttons_panel1.add(cav_info_from_scl_tuneup_button) center_buttons_panel2 = JPanel(FlowLayout(FlowLayout.CENTER,5,5)) center_buttons_panel2.add(new_accelerator_button) center_buttons_panel = JPanel(GridLayout(3,1)) center_buttons_panel.add(center_buttons_panel0) center_buttons_panel.add(center_buttons_panel1) center_buttons_panel.add(center_buttons_panel2) center_panel = JPanel(BorderLayout()) center_panel.add(center_buttons_panel,BorderLayout.NORTH) self.main_panel.add(center_panel,BorderLayout.CENTER) #---------add actions listeners seq_set_button.addActionListener(Make_Sequence_Listener(self)) cav_amp_phase_button.addActionListener(Read_Cav_Amp_Phase_Dict_Listener(self)) cav_info_from_scl_tuneup_button.addActionListener(Get_SCL_Cav_Amp_Phase_Listener(self)) new_accelerator_button.addActionListener(SetUp_New_Accelerator_Listener(self))
def studentLogined(stObj): global panel global table global heading global frame frame = JFrame("Student Page ") frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) frame.setSize(500, 600) frame.setLocation(200, 200) frame.setLayout(None) panel = JPanel() panel.setSize(500, 580) panel.setLocation(0, 20) panel.setLayout(None) panel.setVisible(True) panel.setBackground(Color.WHITE) heading = JLabel() heading.setBounds(210, 10, 200, 30) table = JTable() table.setBounds(0, 50, 500, 470) sp = JScrollPane(table, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS) bar = JMenuBar() profile = JMenu("Profile") showProfile = JMenuItem("Show Profile", actionPerformed=clickShowStudentProfile) changePassword = JMenuItem("Change Password", actionPerformed=changeStudentPassword) profile.add(showProfile) profile.add(changePassword) bar.add(profile) attendence = JMenu("Attendence") showAllAttendence = JMenuItem("Show All Attendence", actionPerformed=clickAllAttendence) showAttendenceInMonth = JMenuItem("show attendence in month", actionPerformed=clickAttendenceInMonth) attendence.add(showAllAttendence) attendence.add(showAttendenceInMonth) bar.add(attendence) logout = JMenuItem("logout", actionPerformed=clickLogout) bar.add(logout) panel.add(table) frame.setJMenuBar(bar) frame.add(panel) frame.setVisible(True)
def __init__(self, parent): self._parent = parent self.setTitle("Select Parameters/Headers for new Session") print "IN DIALOG!Q!!" self.table = JTable() columns = ["Use", "Type", "Name", "Value"] data = [] headers = self._parent._extender.headers parameters = self._parent._extender.parameters for header in headers[1:]: name, val = header.split(": ") data.append([self.should_use(name), "Header", name, val]) for param in parameters: data.append([ self.should_use(param.getName()), Parameter.type_mapping[param.getType()], param.getName(), param.getValue() ]) class CheckBoxTableModel(DefaultTableModel): def getColumnClass(self, x): if x == 0: return Boolean else: return String data_model = CheckBoxTableModel(data, columns) self.table.setModel(data_model) self.table.getColumnModel().getColumn(0).setMaxWidth(30) self.table.getColumnModel().getColumn(1).setMaxWidth(50) gridBagLayout = GridBagLayout() gridBagLayout.columnWidths = [0, 0, 0] gridBagLayout.rowHeights = [0, 0, 0] gridBagLayout.columnWeights = [0.0, 0.0, 0.0] gridBagLayout.rowWeights = [0.0, 1.0, 0.0] self.setLayout(gridBagLayout) self.getContentPane().add( JLabel("Select Parameters/Headers for new session:"), _new_grid_bag(0, 0, 3)) self.getContentPane().add(JScrollPane(self.table), _new_grid_bag(0, 1, 3)) self.getContentPane().add(JButton("Save", actionPerformed=self.save), _new_grid_bag(1, 2)) self.pack() self.setVisible(True)
def __private_init__(self, text="Property Editor", columns=None, data=None, empty=None, add_actions=True, actions=None): if not actions: actions = [] if not columns: columns = [] if data == None: data = [] if not empty: empty = [] self._text = text self.this = JFrame(text) self._table = JTable() self._dtm = DefaultTableModel(0, 0) self._dtm.setColumnIdentifiers(columns) self._table.setModel(self._dtm) self._data = data for d in data: self._dtm.addRow(d) self._pane = JScrollPane(self._table) self.this.add(self._pane) self._empty = empty self.this.addWindowListener(self) self._dtm.addTableModelListener(lambda _: self._update_model()) self.this.setLocation(PropertyEditor.NEW_WINDOW_OFFSET, PropertyEditor.NEW_WINDOW_OFFSET) if add_actions: self._popup = JPopupMenu() self._pane.setComponentPopupMenu(self._popup) inherits_popup_menu(self._pane) self._actions = actions self._actions.append( ExecutorAction('Remove Selected Rows', action=lambda e: self._remove_row())) self._actions.append( ExecutorAction('Add New Row', action=lambda e: self._add_row())) for action in self._actions: self._popup.add(action.menuitem) self.this.setForeground(Color.black) self.this.setBackground(Color.lightGray) self.this.pack() self.this.setVisible(True) self.this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE) return self
def makeUI(model): # Components: table = JTable(model) jsp = JScrollPane(table) regex_label = JLabel("Search: ") regex_field = JTextField(20) base_path_label = JLabel("Base path:") base_path_field = JTextField(50) if base_path is not None: base_path_field.setText(base_path) # Panel for all components all = JPanel() all.setBorder(EmptyBorder(20, 20, 20, 20)) layout, c = GridBagLayout(), GC() all.setLayout(layout) # First row: label and regex text field add(all, regex_label, gridx=0, gridy=0) # with default constraints add(all, regex_field, gridx=1, gridy=0, fill=GC.HORIZONTAL, weightx=1.0) # Second row: the table add(all, jsp, gridx=0, gridy=1, fill=GC.BOTH, gridwidth=2, weightx=1.0, weighty=1.0) # full weights so it stretches when resizing # Third row: the base path add(all, base_path_label, gridx=0, gridy=2) add(all, base_path_field, gridx=1, gridy=2, fill=GC.HORIZONTAL, weightx=1.0) # Window frame frame = JFrame("File paths") frame.getContentPane().add(all) #frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE) frame.addWindowListener(Closing()) frame.pack() frame.setVisible(True) # Listeners regex_field.addKeyListener(EnterListener(table)) table.addMouseListener(RowClickListener(base_path_field)) al = ArrowListener(table, regex_field) table.addKeyListener(al) regex_field.addKeyListener(al) # Instead of a KeyListener, use the input vs action map table.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), "enter") table.getActionMap().put("enter", OpenImageFromTableCell()) # return model, table, regex_field, frame
def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top params panel----------------------- top_params_panel = JPanel(BorderLayout()) self.set_phase_shift_panel = SetPhaseShiftAndTimeStep_Panel(self.scl_long_tuneup_controller) self.start_stop_scan_panel = StartStopPhaseScan_Panel(self.scl_long_tuneup_controller) top_params_panel.add(self.set_phase_shift_panel,BorderLayout.NORTH) top_params_panel.add(self.start_stop_scan_panel,BorderLayout.SOUTH) #------cavities scan table panel -------- cavs_scan_panel = JPanel(BorderLayout()) self.cavs_table = JTable(Cavs_PhaseScan_Table_Model(self.scl_long_tuneup_controller)) self.cavs_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.cavs_table.setFillsViewportHeight(true) self.cavs_table.getSelectionModel().addListSelectionListener(Cavs_Table_Selection_Listener(self.scl_long_tuneup_controller)) self.bpms_table_model = PhaseScan_BPMs_Table_Model(self.scl_long_tuneup_controller) self.bpms_table = JTable(self.bpms_table_model) self.bpms_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.bpms_table.setFillsViewportHeight(true) self.bpms_table.getSelectionModel().addListSelectionListener(BPMs_Table_Selection_Listener(self.scl_long_tuneup_controller)) self.bpms_table.setPreferredScrollableViewportSize(Dimension(200,300)) scrl_panel0 = JScrollPane(self.cavs_table) scrl_panel0.setBorder(etched_border) scrl_panel1 = JScrollPane(self.bpms_table) self.bpm_table_border = BorderFactory.createTitledBorder(etched_border,"Cavity") scrl_panel1.setBorder(self.bpm_table_border) cavs_scan_panel.add(scrl_panel0,BorderLayout.CENTER) cavs_scan_panel.add(scrl_panel1,BorderLayout.EAST) self.bpm_table_panel = scrl_panel1 #---------- graph panels -------------------------- self.bpm_phaseDiff_graph_panel = BPM_PhaseDiff_Graph_Panel(self.scl_long_tuneup_controller) self.bpm_phase_and_amp_graph_panel = BPMs_Amp_Phase_Graphs_Panel(self.scl_long_tuneup_controller) grap_panel = JPanel(GridLayout(1,2)) grap_panel.add(self.bpm_phaseDiff_graph_panel) grap_panel.add(self.bpm_phase_and_amp_graph_panel) #--------center panel = graphs + tables------------- center_panel = JPanel(GridLayout(2,1)) center_panel.add(cavs_scan_panel) center_panel.add(grap_panel) #-------- post-scan filtering panel bottom_panel = JPanel(BorderLayout()) self.post_scan_panel = PostPhaseScanActions_Panel(self.scl_long_tuneup_controller) bottom_panel.add(self.post_scan_panel,BorderLayout.WEST) #-------------------------------------------------- self.main_panel.add(top_params_panel,BorderLayout.NORTH) self.main_panel.add(bottom_panel,BorderLayout.SOUTH) self.main_panel.add(center_panel,BorderLayout.CENTER) #------scan state self.scan_state_controller = ScanStateController()
class QuadCavDictSelection_Panel (JPanel): def __init__(self,transverse_twiss_analysis_Controller): self.transverse_twiss_analysis_Controller = transverse_twiss_analysis_Controller self.setLayout(BorderLayout()) #-----------dict table panel etched_border = BorderFactory.createEtchedBorder() border = BorderFactory.createTitledBorder(etched_border,"Quad and Cavities Amp.&Phases Sets") self.setBorder(border) self.quad_cav_dict_table_model = QuadCavDict_Table_Model(self.transverse_twiss_analysis_Controller.accStatesKeeper) self.dict_table = JTable(self.quad_cav_dict_table_model) self.dict_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.dict_table.setFillsViewportHeight(true) self.dict_table.setPreferredScrollableViewportSize(Dimension(120,100)) self.dict_table.getSelectionModel().addListSelectionListener(QuadCavDict_Table_Selection_Listener(self.transverse_twiss_analysis_Controller)) #--------buttons panel button_panel = JPanel(BorderLayout()) self.gaussButton = JRadioButton("Use Ext. Gauss Fit") self.custom_gaussButton = JRadioButton("Use Gauss Fit") self.custom_rmsButton = JRadioButton("Use RMS") button_group = ButtonGroup() button_group.add(self.gaussButton) button_group.add(self.custom_gaussButton) button_group.add(self.custom_rmsButton) button_group.clearSelection() self.gaussButton.setSelected(true) button_panel0 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel0.add(self.gaussButton) button_panel1 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel1.add(self.custom_gaussButton) button_panel2 = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_panel2.add(self.custom_rmsButton) button_panel012 = JPanel(GridLayout(3,1)) button_panel012.add(button_panel0) button_panel012.add(button_panel1) button_panel012.add(button_panel2) #-------new buttons----- button_bottom_panel = JPanel(FlowLayout(FlowLayout.LEFT,2,2)) button_bottom_panel0 = JPanel(GridLayout(3,1,2,2)) dump_quad_fields_button = JButton("Dump Quad Fields to ASCII") dump_quad_fields_button.addActionListener(Dump_Quad_Fields_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(dump_quad_fields_button) dump_cav_amps_phases_button = JButton("Dump. Cav Amps. Phases to ASCII") dump_cav_amps_phases_button.addActionListener(Dump_Cav_Amps_Phases_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(dump_cav_amps_phases_button) read_cav_amps_phases_button = JButton("Read Cav Amps. Phases from ASCII") read_cav_amps_phases_button.addActionListener(Read_Cav_Amps_Phases_Button_Listener(self.transverse_twiss_analysis_Controller)) button_bottom_panel0.add(read_cav_amps_phases_button) button_bottom_panel.add(button_bottom_panel0) #----- final knobs panel button_panel.add(button_panel012,BorderLayout.NORTH) button_panel.add(button_bottom_panel,BorderLayout.SOUTH) self.gaussButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,0)) self.custom_gaussButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,1)) self.custom_rmsButton.addActionListener(FitParam_Buttons_Listener(self.transverse_twiss_analysis_Controller,2)) #---------------------------------------------------------- self.add(JScrollPane(self.dict_table), BorderLayout.WEST) self.add(button_panel, BorderLayout.CENTER) def getMainPanel(self): return self
def changeSelection(self, row, col, toggle, extend): # show the log entry for the selected row logEntry = self._extender._log.get(row) self._extender._origRequestViewer.setMessage(logEntry._origRequestResponse.getRequest(), True) self._extender._origResponseViewer.setMessage(logEntry._origRequestResponse.getResponse(), False) if not logEntry._modRequestResponse is None: self._extender._modRequestViewer.setMessage(logEntry._modRequestResponse.getRequest(), True) self._extender._modResponseViewer.setMessage(logEntry._modRequestResponse.getResponse(), False) else: self._extender._modRequestViewer.setMessage(toBytes(""), True) self._extender._modResponseViewer.setMessage(toBytes(""), False) self._extender._currentlyDisplayedItem = logEntry._origRequestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def __init__(self,linac_wizard_document): #--- linac_wizard_document the parent document for all controllers self.linac_wizard_document = linac_wizard_document #-------------------------------------------------------------- self.main_panel = JPanel(BorderLayout()) #------------------------------------------------------------- #----etched border etched_border = BorderFactory.createEtchedBorder() #------------------------------------------------------------- self.initial_twiss_params_holder = Twiss_Params_Holder() self.initTwiss_table = JTable(Init_Twiss_Table_Model(self.initial_twiss_params_holder)) self.initTwiss_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.initTwiss_table.setFillsViewportHeight(true) self.initTwiss_table.setPreferredScrollableViewportSize(Dimension(240,160)) initTwiss_panel = JPanel(BorderLayout()) initTwiss_panel.add(JScrollPane(self.initTwiss_table), BorderLayout.CENTER) initTwiss_knobs_panel = JPanel(FlowLayout(FlowLayout.CENTER,5,5)) initTwiss_button = JButton("Init Twiss from Design") initTwiss_button.addActionListener(Init_Twiss_Button_Listener(self)) initTwiss_knobs_panel.add(initTwiss_button) initTwiss_panel.add(initTwiss_knobs_panel, BorderLayout.SOUTH) border = BorderFactory.createTitledBorder(etched_border,"Initial Twiss Parameters") initTwiss_panel.setBorder(border) #--------Init_and_Fit_Params_Controller panel ---------- self.init_and_fit_params_controller = Init_and_Fit_Params_Controller(self.linac_wizard_document,self) #Twiss fitter is defined in the transverse_twiss_fitter_lib.py self.twiss_fitter = null #----add panels to the main tmp_panel = JPanel(BorderLayout()) tmp_panel.add(initTwiss_panel, BorderLayout.WEST) tmp_panel.add(self.init_and_fit_params_controller.getMainPanel(),BorderLayout.EAST) self.main_panel.add(tmp_panel, BorderLayout.WEST)
def initTable(self, lociNames, pv, ci, locusFst): colNames = Vector() colNames.add('Locus') colNames.add('Het') colNames.add('Fst') colNames.add('P(simulated Fst < sample Fst)') colNames.add('FDR') data = Vector() self.data = data falses = self.calcFalsePositives(pv, ci, self.fdr) currentPos = 0 for i in range(len(lociNames)): line = Vector() locus = lociNames[i] line.add(locus) if not locusFst[i]: line.add("NA") line.add("NA") line.add("NA") line.add("NA") else: line.add(str(pv[currentPos][0])) line.add(str(pv[currentPos][1])) line.add(str(self.getP(pv[currentPos]))) line.add(str(falses[currentPos])) currentPos += 1 data.add(line) self.table = JTable(data, colNames) self.table.setDefaultRenderer(Class.forName("java.lang.Object"), ColorRenderer(data, ci, self.chart.neuColor, self.chart.balColor, self.chart.posColor))
def registerExtenderCallbacks(self,callbacks): self.callbacks = callbacks self.helpers = callbacks.getHelpers() self.callbacks.setExtensionName("KkMultiProxy") self.PROXY_LIST = [] self.jPanel = JPanel() boxVertical = Box.createVerticalBox() boxHorizontal = Box.createHorizontalBox() boxHorizontal.add(JButton("File",actionPerformed=self.getFile)) self.FileText = JTextField("") boxHorizontal.add(self.FileText) boxVertical.add(boxHorizontal) TableHeader = ('IP','PORT') TableModel = DefaultTableModel(self.PROXY_LIST,TableHeader) self.Table = JTable(TableModel) boxVertical.add(self.Table) boxHorizontal = Box.createHorizontalBox() boxHorizontal.add(JButton("Add",actionPerformed=self.addIP)) boxHorizontal.add(JButton("Delete",actionPerformed=self.deleteIP)) boxHorizontal.add(JButton("Save",actionPerformed=self.saveIP)) boxVertical.add(boxHorizontal) self.jPanel.add(boxVertical) self.callbacks.addSuiteTab(self) self.callbacks.registerHttpListener(self) return
def __init__(self,top_document,main_loop_controller): #--- top_document is a parent document for all controllers self.top_document = top_document self.main_loop_controller = main_loop_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #---------------------------------------------- left_panel = JPanel(BorderLayout()) self.rf_power_table = JTable(RF_Power_Table_Model(self)) self.rf_power_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.rf_power_table.setFillsViewportHeight(true) self.rf_power_table.setPreferredScrollableViewportSize(Dimension(800,240)) scrl_rf_power_panel = JScrollPane(self.rf_power_table) scrl_rf_power_panel.setBorder(BorderFactory.createTitledBorder(etched_border,"RF Net Power")) self.init_buttons_panel = Init_RF_Power_Controller_Panel(self) self.start_stop_panel = Start_Stop_Panel(self) tmp0_panel = JPanel(BorderLayout()) tmp0_panel.add(self.init_buttons_panel,BorderLayout.NORTH) tmp0_panel.add(scrl_rf_power_panel,BorderLayout.CENTER) tmp0_panel.add(self.start_stop_panel,BorderLayout.SOUTH) tmp1_panel = JPanel(BorderLayout()) tmp1_panel.add(tmp0_panel,BorderLayout.NORTH) left_panel.add(tmp1_panel,BorderLayout.WEST) #-------------------------------------------------------- self.main_panel.add(left_panel,BorderLayout.WEST) #---- non GUI controllers self.loop_run_state = Loop_Run_State()
def __init__(self, parent, title, modal, app): border = BorderFactory.createEmptyBorder(5, 7, 5, 7) self.getContentPane().setBorder(border) self.setLayout(BoxLayout(self.getContentPane(), BoxLayout.Y_AXIS)) #Intro falsePositivePng = File.separator.join([app.SCRIPTDIR, "images", "icons", "not_error36.png"]) introLbl = JMultilineLabel(app.strings.getString("manual_false_positives_info")) introLbl.setMaxWidth(600) #Table table = JTable() columns = [app.strings.getString("Tool"), app.strings.getString("Check"), app.strings.getString("Error_id"), app.strings.getString("OSM_id")] self.tableModel = MyTableModel([], columns) table.setModel(self.tableModel) scrollPane = JScrollPane(table) scrollPane.setAlignmentX(0.0) #OK button btnPanel = JPanel(FlowLayout(FlowLayout.CENTER)) okBtn = JButton("OK", ImageProvider.get("ok"), actionPerformed=self.on_okBtn_clicked) btnPanel.add(okBtn) btnPanel.setAlignmentX(0.0) #Layout headerPnl = JPanel() headerPnl.setLayout(BoxLayout(headerPnl, BoxLayout.X_AXIS)) headerPnl.add(JLabel(ImageIcon(falsePositivePng))) headerPnl.add(Box.createRigidArea(Dimension(10, 0))) headerPnl.add(introLbl) headerPnl.setAlignmentX(0.0) self.add(headerPnl) self.add(Box.createRigidArea(Dimension(0, 10))) self.add(scrollPane) self.add(Box.createRigidArea(Dimension(0, 10))) self.add(btnPanel) self.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE) self.pack()
def changeSelection(self, row, col, toggle, extend): # show the log entry for the selected row logEntry = self._extender._log.get(self._extender.logTable.convertRowIndexToModel(row)) self._extender._requestViewer.setMessage(logEntry._requestResponse.getRequest(), True) self._extender._responseViewer.setMessage(logEntry._requestResponse.getResponse(), False) self._extender._originalrequestViewer.setMessage(logEntry._originalrequestResponse.getRequest(), True) self._extender._originalresponseViewer.setMessage(logEntry._originalrequestResponse.getResponse(), False) if logEntry._unauthorizedRequestResponse != None: self._extender._unauthorizedrequestViewer.setMessage(logEntry._unauthorizedRequestResponse.getRequest(), True) self._extender._unauthorizedresponseViewer.setMessage(logEntry._unauthorizedRequestResponse.getResponse(), False) else: self._extender._unauthorizedrequestViewer.setMessage("Request disabled", True) self._extender._unauthorizedresponseViewer.setMessage("Response disabled", False) self._extender._currentlyDisplayedItem = logEntry._requestResponse JTable.changeSelection(self, row, col, toggle, extend) return
def prepareRenderer(self, renderer, row, column): c = JTable.prepareRenderer(self,renderer, row, column) impressionColor = {self._extender._enfocementStatuses[0]:Color.RED, self._extender._enfocementStatuses[1]:Color.YELLOW, self._extender._enfocementStatuses[2]:Color.GREEN} for impression in impressionColor: if self._extender.getValueAt(row,1) == impression: c.setBackground(impressionColor[impression]); return c
def __init__(self, chatui): ContactsList.__init__(self, chatui) self.clientsByName = {} self.mainframe = JFrame("Contacts List") self.headers = ["Contact", "Status", "Idle", "Account"] self.data = UneditableTableModel([], self.headers) self.table = JTable(self.data, columnSelectionAllowed = 0, #cannot select columns selectionMode = ListSelectionModel.SINGLE_SELECTION) self.buildpane() self.mainframe.pack() self.mainframe.show()
def prepareRenderer(self, renderer, row, column): c = JTable.prepareRenderer(self,renderer, row, column) selectedRow = self._extender.logTable.getSelectedRow() if row == selectedRow: return c if self._extender.getValueAt(row,4) == "Green": c.setBackground(Color.GREEN) elif self._extender.getValueAt(row,4) == "Red": c.setBackground(Color.RED) else: c.setBackground(None) return c
def __init__(self,transverse_twiss_analysis_Controller): self.transverse_twiss_analysis_Controller = transverse_twiss_analysis_Controller self.setLayout(GridLayout(1,2)) #----etched border etched_border = BorderFactory.createEtchedBorder() self.setBorder(etched_border) #--------- quad and cavities params tables self.quad_fields_table_model = Quad_Fileds_Table_Model(transverse_twiss_analysis_Controller) self.quad_fields_table = JTable(self.quad_fields_table_model) self.quad_fields_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.quad_fields_table.setFillsViewportHeight(true) quad_table_panel = JPanel(BorderLayout()) quad_table_panel.add(JScrollPane(self.quad_fields_table), BorderLayout.CENTER) self.cav_amp_phases_table_model = Cav_Amp_Phases_Table_Model(transverse_twiss_analysis_Controller) self.cav_amp_phases_table = JTable(self.cav_amp_phases_table_model) self.cav_amp_phases_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.cav_amp_phases_table.setFillsViewportHeight(true) cav_table_panel = JPanel(BorderLayout()) cav_table_panel.add(JScrollPane(self.cav_amp_phases_table), BorderLayout.CENTER) #--------------------------------------- self.add(quad_table_panel) self.add(cav_table_panel)
def __init__(self,mebt_main_orbit_diff_cntrl): self.mebt_main_orbit_diff_cntrl = mebt_main_orbit_diff_cntrl self.setLayout(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() quad_titled_border = BorderFactory.createTitledBorder(etched_border,"Quads") dc_titled_border = BorderFactory.createTitledBorder(etched_border,"Dipole Correctors") bpm_titled_border = BorderFactory.createTitledBorder(etched_border,"BPMs") #------------------------------------------- quad_panel = JPanel(BorderLayout()) dc_panel = JPanel(BorderLayout()) bpm_panel = JPanel(BorderLayout()) quad_panel.setBorder(quad_titled_border) dc_panel.setBorder(dc_titled_border) bpm_panel.setBorder(bpm_titled_border) self.quad_table = JTable(Magnet_Table_Model(self.mebt_main_orbit_diff_cntrl,self.mebt_main_orbit_diff_cntrl.quad_wrappers)) self.dc_table = JTable(Magnet_Table_Model(self.mebt_main_orbit_diff_cntrl,self.mebt_main_orbit_diff_cntrl.dc_wrappers)) self.quad_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.dc_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) self.bpm_table = JTable(BPM_Table_Model(self.mebt_main_orbit_diff_cntrl)) self.bpm_table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION) quad_panel.add(JScrollPane(self.quad_table),BorderLayout.CENTER) dc_panel.add(JScrollPane(self.dc_table),BorderLayout.CENTER) bpm_panel.add(JScrollPane(self.bpm_table),BorderLayout.CENTER) #------------------------------------------- self.dc_table.getSelectionModel().addListSelectionListener(DCs_Table_Selection_Listener(self.mebt_main_orbit_diff_cntrl)) #------------------------------------------- read_magnets_button = JButton("Update Magnet Fields from EPICS") read_magnets_button.addActionListener(Read_Magnets_Button_Listener(self.mebt_main_orbit_diff_cntrl)) button_panel = JPanel(FlowLayout(FlowLayout.LEFT,3,3)) button_panel.add(read_magnets_button) #------------------------------------------- tables_panel = JPanel(GridLayout(3,1,3,3)) tables_panel.add(quad_panel) tables_panel.add(dc_panel) tables_panel.add(bpm_panel) self.add(tables_panel,BorderLayout.CENTER) self.add(button_panel,BorderLayout.SOUTH)
def prepareRenderer(self, renderer, row, col): comp = JTable.prepareRenderer(self,renderer, row, col) value = self._extender.getValueAt(row,col) if (value == "Authorization bypass!" and ((col == 5) or (col == 6))): comp.setBackground(Color(255,135,31)) elif (value == "Authorization enforced??? (please configure enforcement detector)" and ((col == 5) or (col == 6))): comp.setBackground(Color(255,255,133)); elif (value == "Authorization enforced!" and ((col == 5) or (col == 6))): comp.setBackground(Color(192,250,20)); else: comp.setBackground(Color.white); return comp
def __init__(self): self.acctmanager = AccountManager() self.mainframe = JFrame("Account Manager") self.chatui = None self.headers = ["Account Name", "Status", "Autologin", "Gateway"] self.data = UneditableTableModel([], self.headers) self.table = JTable(self.data) self.table.columnSelectionAllowed = 0 # cannot select columns self.table.selectionMode = ListSelectionModel.SINGLE_SELECTION self.connectbutton = JButton("Connect", actionPerformed=self.connect) self.dconnbutton = JButton("Disconnect", actionPerformed=self.disconnect) self.deletebutton = JButton("Delete", actionPerformed=self.deleteAccount) self.buildpane() self.mainframe.pack() self.mainframe.show()
class SCL_Long_TuneUp_BPM_Offsets_Controller: def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top panels = offsets analysis ---------------------------- top_panel = JPanel(BorderLayout()) self.bpms_offsets_from_ccl4_panel = BPMs_Offsets_from_CCL4_Panel(self.scl_long_tuneup_controller) self.bpms_offsets_from_hebt1_panel = BPMs_Offsets_from_HEBT1_Panel(self.scl_long_tuneup_controller) self.bpms_offsets_from_ext_file_panel = BPMs_Offsets_from_ExtFile_Panel(self.scl_long_tuneup_controller) top_panel0 = JPanel(BorderLayout()) top_panel0.add(self.bpms_offsets_from_ccl4_panel,BorderLayout.NORTH) top_panel0.add(self.bpms_offsets_from_hebt1_panel,BorderLayout.SOUTH) top_panel1 = JPanel(BorderLayout()) top_panel1.add(top_panel0,BorderLayout.NORTH) top_panel1.add(self.bpms_offsets_from_ext_file_panel,BorderLayout.SOUTH) top_panel.add(top_panel1,BorderLayout.NORTH) #--------center panel = table------------ center_panel = JPanel(BorderLayout()) self.bpm_offsets_table_model = PhaseOffsets_BPMs_Table_Model(self.scl_long_tuneup_controller) self.bpm_offsets_table = JTable(self.bpm_offsets_table_model) self.bpm_offsets_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.bpm_offsets_table.setFillsViewportHeight(true) scrl_panel = JScrollPane(self.bpm_offsets_table) scrl_panel.setBorder(etched_border) center_panel.add(scrl_panel,BorderLayout.CENTER) #-------- bottom panel = post analysis --------------- bottom_panel = JPanel(BorderLayout()) self.set_bpms_as_bad_panel = Set_BPMs_as_Bad_Panel(self.scl_long_tuneup_controller) bottom_panel.add(self.set_bpms_as_bad_panel,BorderLayout.SOUTH) #-------------------------------------------------- self.main_panel.add(top_panel,BorderLayout.NORTH) self.main_panel.add(center_panel,BorderLayout.CENTER) self.main_panel.add(bottom_panel,BorderLayout.SOUTH) def getMainPanel(self): return self.main_panel def setFinalOffsets(self): ccl4_button = self.set_bpms_as_bad_panel.ccl4_button ccl4_final = ccl4_button.isSelected() bpm_wrappers = self.scl_long_tuneup_controller.bpm_wrappers for bpm_wrapper in bpm_wrappers: if(bpm_wrapper.isGood): if(ccl4_final): bpm_wrapper.final_phase_offset.phaseOffset_avg = bpm_wrapper.left_phase_offset.phaseOffset_avg bpm_wrapper.final_phase_offset.phaseOffset_err = bpm_wrapper.left_phase_offset.phaseOffset_err bpm_wrapper.final_phase_offset.isReady = bpm_wrapper.left_phase_offset.isReady else: bpm_wrapper.final_phase_offset.phaseOffset_avg = bpm_wrapper.right_phase_offset.phaseOffset_avg bpm_wrapper.final_phase_offset.phaseOffset_err = bpm_wrapper.right_phase_offset.phaseOffset_err bpm_wrapper.final_phase_offset.isReady = bpm_wrapper.right_phase_offset.isReady self.bpm_offsets_table.getModel().fireTableDataChanged()
def __init__(self, extender, controller, editable): self._extender = extender self._panel = JPanel() # main panel # type combobox for tables self._types = Parameter.type_mapping.values() + ["- Remove Row -"] self._actions = ["replace", "insert", "delete"] # define the GridBagLayout ( 4x4 ) gridBagLayout = GridBagLayout() gridBagLayout.columnWidths = [ 0, 0, 0, 0] gridBagLayout.rowHeights = [0, 0, 0, 0] gridBagLayout.columnWeights = [1.0, 0.0, 0.0, 0.0] gridBagLayout.rowWeights = [0.0, 1.0, 5.0, 0.0] self._panel.setLayout(gridBagLayout) # JComboBox for Session selection self._session_selector = JComboBox(extender.sm.sessions, itemStateChanged=self.changeSession) self._session_selector_model = self._session_selector.getModel() gbc_session_selector = _new_grid_bag(0, 0) self._panel.add(self._session_selector, gbc_session_selector) # "Delete Session" Button del_session = JButton("Delete Session", actionPerformed=self.deleteSession) gbc_del_session = _new_grid_bag(1, 0) self._panel.add(del_session, gbc_del_session) # "New Session" Button new_session = JButton("New Session", actionPerformed=self.new_session) gbc_new_session = _new_grid_bag(2, 0) self._panel.add(new_session, gbc_new_session) # Table containing modified parameters self.modification_table = JTable() self.update_table() gbc_modification_table = _new_grid_bag(0, 1, 3) self._panel.add(JScrollPane(self.modification_table), gbc_modification_table) self.modification_table.setPreferredScrollableViewportSize(self.modification_table.getPreferredSize()); self.modification_table.setFillsViewportHeight(True) # HTTP message editor self._editor = self._extender.callbacks.createTextEditor() gbc_messageEditor = _new_grid_bag(0, 2, 3) self._panel.add(self._editor.getComponent(), gbc_messageEditor)
def __init__(self, parent): self._parent = parent self.setTitle("Select Parameters/Headers for new Session") print "IN DIALOG!Q!!" self.table = JTable() columns = ["Use", "Type", "Name", "Value"] data = [] headers = self._parent._extender.headers parameters = self._parent._extender.parameters for header in headers[1:]: name, val = header.split(": ") data.append([self.should_use(name), "Header", name, val]) for param in parameters: data.append([self.should_use(param.getName()), Parameter.type_mapping[param.getType()], param.getName(), param.getValue()]) class CheckBoxTableModel(DefaultTableModel): def getColumnClass(self, x): if x == 0: return Boolean else: return String data_model = CheckBoxTableModel(data, columns) self.table.setModel(data_model) self.table.getColumnModel().getColumn(0).setMaxWidth(30) self.table.getColumnModel().getColumn(1).setMaxWidth(50) gridBagLayout = GridBagLayout() gridBagLayout.columnWidths = [ 0, 0, 0] gridBagLayout.rowHeights = [0, 0, 0] gridBagLayout.columnWeights = [0.0, 0.0, 0.0] gridBagLayout.rowWeights = [0.0, 1.0, 0.0] self.setLayout(gridBagLayout) self.getContentPane().add(JLabel("Select Parameters/Headers for new session:"), _new_grid_bag(0, 0, 3)) self.getContentPane().add(JScrollPane(self.table), _new_grid_bag(0, 1, 3)) self.getContentPane().add(JButton("Save", actionPerformed=self.save), _new_grid_bag(1, 2)) self.pack() self.setVisible(True)
class SCL_Long_TuneUp_Rescale_Controller: def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top params panel----------------------- top_panel = JPanel(BorderLayout()) self.bpms_phase_shift_panel = BPMs_Phase_Shift_Panel(self.scl_long_tuneup_controller) self.init_amp_phases_panel = Init_New_Amps_Phases_Panel(self.scl_long_tuneup_controller) self.new_amp_phases_to_epics_panel = NEW_Amp_and_Phases_to_EPICS_Panel(self.scl_long_tuneup_controller) top_panel.add(self.bpms_phase_shift_panel,BorderLayout.NORTH) top_panel.add(self.init_amp_phases_panel,BorderLayout.CENTER) top_panel.add(self.new_amp_phases_to_epics_panel,BorderLayout.SOUTH) #------cavities table panel -------- cavs_rescale_panel = JPanel(BorderLayout()) txt = "Cavities' Prameters. New Amp and Avg. Gap Phases can be changed manually." rescale_table_border = BorderFactory.createTitledBorder(etched_border,txt) cavs_rescale_panel.setBorder(rescale_table_border) self.cavs_rescale_table = JTable(Cavs_Rescale_Table_Model(self.scl_long_tuneup_controller)) self.cavs_rescale_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.cavs_rescale_table.setFillsViewportHeight(true) self.cavs_rescale_table.getSelectionModel().addListSelectionListener(Cavs_Table_Selection_Listener(self.scl_long_tuneup_controller)) scrl_panel0 = JScrollPane(self.cavs_rescale_table) cavs_rescale_panel.add(scrl_panel0,BorderLayout.CENTER) center_panel = JPanel(BorderLayout()) center_panel.add(cavs_rescale_panel,BorderLayout.CENTER) #-------- post-rescale actions panel bottom_panel = JPanel(BorderLayout()) #bottom_panel.add(self.post_rescale_panel,BorderLayout.WEST) #-------------------------------------------------- self.main_panel.add(top_panel,BorderLayout.NORTH) self.main_panel.add(center_panel,BorderLayout.CENTER) self.main_panel.add(bottom_panel,BorderLayout.SOUTH) #----- model for tracking self.scl_tracker_model = SCL_RfGaps_Fitter_Tracker_Model(self.scl_long_tuneup_controller) def getMainPanel(self): return self.main_panel def updateTables(self): self.cavs_rescale_table.getModel().fireTableDataChanged()
def __init__(self,scl_long_tuneup_controller): #--- scl_long_tuneup_controller the parent document for all SCL tune up controllers self.scl_long_tuneup_controller = scl_long_tuneup_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #------top params panel----------------------- top_params_panel = JPanel(BorderLayout()) self.start_stop_analysis_panel = StartStopPhaseAnalysis_Panel(self.scl_long_tuneup_controller) top_params_panel.add(self.start_stop_analysis_panel,BorderLayout.NORTH) #------cavities scan table panel -------- cavs_scan_panel = JPanel(BorderLayout()) self.cavs_table = JTable(Cavs_PhaseAnalysis_Table_Model(self.scl_long_tuneup_controller)) self.cavs_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.cavs_table.setFillsViewportHeight(true) self.cavs_table.getSelectionModel().addListSelectionListener(Cavs_Table_Selection_Listener(self.scl_long_tuneup_controller)) scrl_panel0 = JScrollPane(self.cavs_table) scrl_panel0.setBorder(etched_border) cavs_scan_panel.add(scrl_panel0,BorderLayout.CENTER) #---------- graph panels -------------------------- self.cav_energy_out_graph_panel = Cav_Energy_Out_Graph_Panel(self.scl_long_tuneup_controller) graph_panel = JPanel(GridLayout(1,1)) graph_panel.add(self.cav_energy_out_graph_panel) #--------center panel = graphs + tables------------- center_panel = JPanel(GridLayout(2,1)) center_panel.add(cavs_scan_panel) center_panel.add(graph_panel) #-------- post-scan filtering panel bottom_panel = JPanel(BorderLayout()) self.post_analysis_panel = PostPhaseAnalysisActions_Panel(self.scl_long_tuneup_controller) bottom_panel.add(self.post_analysis_panel,BorderLayout.WEST) #-------------------------------------------------- self.main_panel.add(top_params_panel,BorderLayout.NORTH) self.main_panel.add(bottom_panel,BorderLayout.SOUTH) self.main_panel.add(center_panel,BorderLayout.CENTER) #------scan state self.analysis_state_controller = AnalysisStateController() self.scl_one_cavity_tracker_model = SCL_One_Cavity_Tracker_Model(scl_long_tuneup_controller)
def __init__(self,view): JPanel.__init__(self) self.view=view self.background=Color.white self.layout=BorderLayout() self.popup=JPopupMenu() self.popup_items={} self.add(self.make_controls(),BorderLayout.SOUTH) data,title=self.extract_data() self.table=JTable(DefaultTableModel(data,title)) scroll=JScrollPane(self.table) self.add(scroll) scroll.addMouseListener(self) self.table.tableHeader.addMouseListener(self) self.table.addMouseListener(self) self.fileChooser=JFileChooser() self.fileChooser.setFileFilter(CSVFilter()) self.fileChooser.setSelectedFile(File('%s.csv'%self.view.network.name))
class RF_NET_Power_Controller: def __init__(self,top_document,main_loop_controller): #--- top_document is a parent document for all controllers self.top_document = top_document self.main_loop_controller = main_loop_controller self.main_panel = JPanel(BorderLayout()) #----etched border etched_border = BorderFactory.createEtchedBorder() #---------------------------------------------- left_panel = JPanel(BorderLayout()) self.rf_power_table = JTable(RF_Power_Table_Model(self)) self.rf_power_table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION) self.rf_power_table.setFillsViewportHeight(true) self.rf_power_table.setPreferredScrollableViewportSize(Dimension(800,240)) scrl_rf_power_panel = JScrollPane(self.rf_power_table) scrl_rf_power_panel.setBorder(BorderFactory.createTitledBorder(etched_border,"RF Net Power")) self.init_buttons_panel = Init_RF_Power_Controller_Panel(self) self.start_stop_panel = Start_Stop_Panel(self) tmp0_panel = JPanel(BorderLayout()) tmp0_panel.add(self.init_buttons_panel,BorderLayout.NORTH) tmp0_panel.add(scrl_rf_power_panel,BorderLayout.CENTER) tmp0_panel.add(self.start_stop_panel,BorderLayout.SOUTH) tmp1_panel = JPanel(BorderLayout()) tmp1_panel.add(tmp0_panel,BorderLayout.NORTH) left_panel.add(tmp1_panel,BorderLayout.WEST) #-------------------------------------------------------- self.main_panel.add(left_panel,BorderLayout.WEST) #---- non GUI controllers self.loop_run_state = Loop_Run_State() def getMainPanel(self): return self.main_panel def getMessageTextField(self): return self.top_document.getMessageTextField() def writeDataToXML(self,root_da): rf_power_cntrl_da = root_da.createChild("RF_NET_POWER") def readDataFromXML(self,root_da): rf_power_cntrl_da = root_da.childAdaptor("MAIN_CONTROLLER")