List of usage examples for javax.swing JTable getModel
public TableModel getModel()
From source file:frames.MainGUI.java
public void LoadRentToJtable(JTable t, File file) { try {/*www . jav a2 s .c o m*/ CSVParser parser = CSVParser.parse(file, Charset.forName("UTF-8"), CSVFormat.DEFAULT); //t.setModel(tm); DefaultTableModel model = new DefaultTableModel(); //model.setRowCount(0); for (CSVRecord c : parser) { if (c.getRecordNumber() == 1) { model.addColumn("??"); model.addColumn(""); model.addColumn("?"); model.addColumn("?"); model.addColumn(""); model.addColumn(""); t.setModel(model); model = (DefaultTableModel) t.getModel(); continue; } model.addRow(new Object[] { c.get(0), c.get(1), c.get(2), c.get(3), c.get(4), c.get(5) }); } } catch (Exception e) { System.out.println(e); } }
From source file:gtu._work.mvn.MavenRepositoryUI.java
private void tableMouseClicked(JTable table, int pomFileColPos, MouseEvent evt) { //?/* w w w. j ava 2 s .c o m*/ if (table.getSelectedRowCount() > 1) { int realRowPos = -1; PomFile pomFile = null; List<PomFile> list = new ArrayList<PomFile>(); for (int rowPos : table.getSelectedRows()) { realRowPos = table.getRowSorter().convertRowIndexToModel(rowPos); pomFile = (PomFile) table.getModel().getValueAt(realRowPos, pomFileColPos); list.add(pomFile); } defaultPopupMenu(list, table, evt); return; } //? Object selectValue = JTableUtil.newInstance(table).getSelectedValue(); int rowIndex = JTableUtil.newInstance(table).getSelectedRow(); PomFile pomFile = (PomFile) table.getModel().getValueAt(rowIndex, pomFileColPos); ClipboardUtil.getInstance().setContents(selectValue); if (JMouseEventUtil.buttonRightClick(1, evt)) { this.defaultPopupMenu(Arrays.asList(pomFile), table, evt); } if (JMouseEventUtil.buttonLeftClick(2, evt)) { this.showPomInfo(pomFile); } }
From source file:com.sec.ose.osi.ui.frm.main.manage.ManagedProjectTableModel.java
public void setColumnType(JTable table) { table.setShowVerticalLines(false);//from w w w .j a va 2 s . c o m table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); table.setColumnSelectionAllowed(false); table.setRowSelectionAllowed(false); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); table.setRowHeight(30); JTableHeader header = table.getTableHeader(); header.setPreferredSize(new java.awt.Dimension(table.getTableHeader().getWidth(), 30)); header.setFont(new Font("Arial", Font.BOLD, 12)); header.setReorderingAllowed(false); TableColumnModel cm = table.getColumnModel(); TableColumn col = null; analyzeHeader = new CheckBoxHeader(new CheckboxHeaderItemListener(table, COL_ANALYZE_TARGET), "Analyze Target"); col = cm.getColumn(COL_ANALYZE_TARGET); col.setHeaderRenderer(analyzeHeader); JCheckBox chkbox = new JCheckBox(); chkbox.setBackground(Color.white); chkbox.setHorizontalAlignment(JLabel.CENTER); col.setCellRenderer(new DefaultTableCellRenderer() { private static final long serialVersionUID = 1L; public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { ManagedProjectTableModel model = (ManagedProjectTableModel) table.getModel(); String sPrjName = (String) table.getValueAt(row, ManagedProjectTableModel.COL_PROJECT_NAME); OSIProjectInfo item = model.getProjectInfo(sPrjName); JCheckBox chkbox = new JCheckBox(); chkbox.setSelected(((Boolean) value).booleanValue()); if (item != null) { chkbox.setEnabled(item.isLocationValid()); } chkbox.setHorizontalAlignment(JLabel.CENTER); chkbox.setBackground(Color.white); return (Component) chkbox; } }); col.setCellEditor(new DefaultCellEditor(chkbox)); col = cm.getColumn(COL_ANALYZE_STATUS); col.setCellRenderer(new StatusIconCellRenderer()); col = cm.getColumn(COL_SOURCE_LOCATION); col.setCellRenderer(new FileBrowseCellRenderer()); col.setCellEditor(new FileBrowseCellEditor()); }
From source file:edu.ku.brc.specify.tasks.ReportsBaseTask.java
/** * Prints a JTable's model as a Grid Report. * //from w ww .ja v a2 s . c o m * @param cmdAction the command holding the actual JTable object */ protected void printGrid(final CommandAction cmdAction) { String pageTitle = cmdAction.getProperty("gridtitle").toString(); final PageSetupDlg pageSetup = new PageSetupDlg(); pageSetup.createUI(); pageSetup.setPageTitle(pageTitle); pageSetup.setVisible(true); if (pageSetup.isCancelled()) { return; } SwingWorker<Integer, Integer> backupWorker = new SwingWorker<Integer, Integer>() { protected Exception excpt = null; /* (non-Javadoc) * @see javax.swing.SwingWorker#doInBackground() */ @Override protected Integer doInBackground() throws Exception { JTable table = (JTable) cmdAction.getProperty("jtable"); if (table != null) { try { LabelsPane labelsPane = new LabelsPane(name, ReportsBaseTask.this, null); DynamicReport dr = buildReport(table.getModel(), pageSetup); JRDataSource ds = new JRTableModelDataSource(table.getModel()); JasperPrint jp = DynamicJasperHelper.generateJasperPrint(dr, new ClassicLayoutManager(), ds); labelsPane.reportFinished(jp); SubPaneMgr.getInstance().addPane(labelsPane); } catch (Exception ex) { excpt = ex; ex.printStackTrace(); } } return null; } @Override protected void done() { super.done(); UIRegistry.getStatusBar().setProgressDone(PRINT_GRID); UIRegistry.clearSimpleGlassPaneMsg(); if (excpt != null) { UIRegistry.getStatusBar().setErrorMessage(getResourceString("REP_ERR_GRDRPT"), excpt); } } }; final JStatusBar statusBar = UIRegistry.getStatusBar(); statusBar.setIndeterminate(PRINT_GRID, true); UIRegistry.writeSimpleGlassPaneMsg( getLocalizedMessage("REP_GRID_RPT", cmdAction.getProperty("gridtitle").toString()), 24); backupWorker.execute(); }
From source file:com.stam.batchmove.BatchMoveUtils.java
public static void showFilesFrame(Object[][] data, String[] columnNames, final JFrame callerFrame) { final FilesFrame filesFrame = new FilesFrame(); DefaultTableModel model = new DefaultTableModel(data, columnNames) { private static final long serialVersionUID = 1L; @Override/*from w w w.j a v a 2 s .c o m*/ public Class<?> getColumnClass(int column) { return getValueAt(0, column).getClass(); } @Override public boolean isCellEditable(int row, int column) { return column == 0; } }; DefaultTableCellRenderer renderer = new DefaultTableCellRenderer(); renderer.setHorizontalAlignment(JLabel.CENTER); final JTable table = new JTable(model); for (int i = 1; i < table.getColumnCount(); i++) { table.setDefaultRenderer(table.getColumnClass(i), renderer); } // table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); table.setRowHeight(30); table.getTableHeader().setFont(new Font("Serif", Font.BOLD, 14)); table.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 14)); table.setRowSelectionAllowed(false); table.getColumnModel().getColumn(0).setMaxWidth(35); table.getColumnModel().getColumn(1).setPreferredWidth(350); table.getColumnModel().getColumn(2).setPreferredWidth(90); table.getColumnModel().getColumn(2).setMaxWidth(140); table.getColumnModel().getColumn(3).setMaxWidth(90); JPanel tblPanel = new JPanel(); JPanel btnPanel = new JPanel(); tblPanel.setLayout(new BorderLayout()); if (table.getRowCount() > 15) { JScrollPane scrollPane = new JScrollPane(table); tblPanel.add(scrollPane, BorderLayout.CENTER); } else { tblPanel.add(table.getTableHeader(), BorderLayout.NORTH); tblPanel.add(table, BorderLayout.CENTER); } btnPanel.setLayout(new FlowLayout(FlowLayout.LEFT)); filesFrame.setMinimumSize(new Dimension(800, 600)); filesFrame.setLayout(new BorderLayout()); filesFrame.add(tblPanel, BorderLayout.NORTH); filesFrame.add(btnPanel, BorderLayout.SOUTH); final JLabel resultsLabel = new JLabel(); JButton cancelBtn = new JButton("Cancel"); cancelBtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { filesFrame.setVisible(false); callerFrame.setVisible(true); } }); JButton moveBtn = new JButton("Copy"); moveBtn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { JFileChooser fileChooser = new JFileChooser(); fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); fileChooser.setDialogTitle("Choose target directory"); int selVal = fileChooser.showOpenDialog(null); if (selVal == JFileChooser.APPROVE_OPTION) { File selection = fileChooser.getSelectedFile(); String targetPath = selection.getAbsolutePath(); DefaultTableModel dtm = (DefaultTableModel) table.getModel(); int nRow = dtm.getRowCount(); int copied = 0; for (int i = 0; i < nRow; i++) { Boolean selected = (Boolean) dtm.getValueAt(i, 0); String filePath = dtm.getValueAt(i, 1).toString(); if (selected) { try { FileUtils.copyFileToDirectory(new File(filePath), new File(targetPath)); dtm.setValueAt("Copied", i, 3); copied++; } catch (Exception ex) { Logger.getLogger(SelectionFrame.class.getName()).log(Level.SEVERE, null, ex); dtm.setValueAt("Failed", i, 3); } } } resultsLabel.setText(copied + " files copied. Finished!"); } } }); btnPanel.add(cancelBtn); btnPanel.add(moveBtn); btnPanel.add(resultsLabel); filesFrame.revalidate(); filesFrame.setVisible(true); callerFrame.setVisible(false); }
From source file:com.itemanalysis.jmetrik.gui.Jmetrik.java
public Jmetrik() { super("jMetrik"); setPreferredSize(new Dimension(1024, 650)); setDefaultCloseOperation(EXIT_ON_CLOSE); //properly close database if user closes window this.addWindowListener(new WindowAdapter() { @Override/*from www. j av a 2s.co m*/ public void windowClosing(WindowEvent we) { if (workspace != null) { workspace.closeDatabase(); } System.exit(0); } }); //add statusbar statusBar = new StatusBar(1024, 30); statusBar.setBorder(new EmptyBorder(2, 2, 2, 2)); getContentPane().add(statusBar, BorderLayout.SOUTH); //start logging startLog(); //left-right splitpane JSplitPane splitPane1 = new JSplitPane(); splitPane1.setDividerLocation(200); //setup workspace list workspaceList = new JList(); workspaceList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); workspaceList.setModel(new SortedListModel<DataTableName>()); workspaceList.addKeyListener(new DeleteKeyListener()); // workspaceList.getInsets().set(5, 5, 5, 5); //add icon to list cell renderer String urlString = "/images/spreadsheet.png"; URL url = this.getClass().getResource(urlString); final ImageIcon tableIcon = new ImageIcon(url, "Table"); workspaceList.setCellRenderer(new DefaultListCellRenderer() { @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { JLabel label = (JLabel) super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); label.setIcon(tableIcon); return label; } }); JScrollPane scrollPane1 = new JScrollPane(workspaceList); scrollPane1.setPreferredSize(new Dimension(200, 698)); splitPane1.setLeftComponent(scrollPane1); //tabbed pane for top pane tabbedPane = new JTabbedPane(); tabbedPane.setTabPlacement(JTabbedPane.BOTTOM); //setup data table dataTable = new DataTable(); dataTable.setRowHeight(18); //change size of table header and center text JTableHeader header = dataTable.getTableHeader(); header.setDefaultRenderer(new TableHeaderCellRenderer()); JScrollPane dataScrollPane = new JScrollPane(dataTable); tabbedPane.addTab("Data", dataScrollPane); //setup variable table variableTable = new DataTable(); variableTable.setRowHeight(18); variableTable.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { super.mouseClicked(e); if (e.getClickCount() == 2) { JTable target = (JTable) e.getSource(); int row = target.getSelectedRow(); int col = target.getSelectedColumn(); if (col == 0) { if (target.getModel() instanceof VariableModel) { VariableModel vModel = (VariableModel) target.getModel(); String s = (String) vModel.getValueAt(row, col); DatabaseName db = workspace.getDatabaseName(); DataTableName table = workspace.getCurrentDataTable(); RenameVariableDialog renameVariableDialog = new RenameVariableDialog(Jmetrik.this, db, table, s); renameVariableDialog.setVisible(true); if (renameVariableDialog.canRun()) { RenameVariableCommand command = renameVariableDialog.getCommand(); workspace.runProcess(command); } } //end instanceof } //end if col==0 } //end if click count==2 }//end mouse clicked }); //change size of table header and center text JTableHeader variableHeader = variableTable.getTableHeader(); variableHeader.setDefaultRenderer(new TableHeaderCellRenderer()); variableHeader.setPreferredSize(new Dimension(30, 21)); JScrollPane variableScrollPane = new JScrollPane(variableTable); tabbedPane.addTab("Variables", variableScrollPane); splitPane1.setRightComponent(tabbedPane); getContentPane().add(splitPane1, BorderLayout.CENTER); //add status bar listener - needed to display status message that are generated within this class this.addPropertyChangeListener(statusBar.getStatusListener()); //add listener for displaying error messages - needed to display errors and exceptions this.addPropertyChangeListener(new ErrorOccurredPropertyChangeListener()); //instantiate file utilities fileUtils = new JmetrikFileUtils(); fileUtils.addPropertyChangeListener(statusBar.getStatusListener()); //set import and export path to user's documents folder JFileChooser chooser = new JFileChooser(); FileSystemView fw = chooser.getFileSystemView(); importExportPath = fw.getDefaultDirectory().toString().replaceAll("\\\\", "/"); //create and start a workspace startWorkspace(); //create menu bar and tool bar this.setJMenuBar(createMenuBar()); JToolBar toolBar = createToolBar(); toolBar.setFloatable(false); toolBar.setRollover(true); getContentPane().add(toolBar, BorderLayout.PAGE_START); pack(); }
From source file:edu.ku.brc.specify.tasks.QueryTask.java
/** * Processes all Commands of type QUERY.//from w ww. j ava2 s . co m * @param cmdAction the command to be processed */ @SuppressWarnings("unchecked") protected void processQueryCommands(final CommandAction cmdAction) { if (cmdAction.isAction(DELETE_CMD_ACT) && cmdAction.getData() instanceof RecordSetIFace) { RecordSet recordSet = (RecordSet) cmdAction.getData(); if (deleteQuery(recordSet)) { deleteQueryFromUI(null, recordSet); } return; } if (cmdAction.isAction(REFRESH_QUERIES)) { navBox.clear(); loadQueries(); navBox.invalidate(); navBox.doLayout(); navBox.repaint(); NavBoxMgr.getInstance().invalidate(); NavBoxMgr.getInstance().doLayout(); NavBoxMgr.getInstance().repaint(); UIRegistry.forceTopFrameRepaint(); return; } if (cmdAction.isAction(QUERY_RESULTS_REPORT)) { SearchResultReportServiceInfo selectedRep = null; JTable dataTbl = (JTable) cmdAction.getProperties().get("jtable"); if (dataTbl != null) { ResultSetTableModel rsm = (ResultSetTableModel) dataTbl.getModel(); if (rsm != null) { QueryForIdResultsIFace results = rsm.getResults(); QueryBldrPane qb = results instanceof QBQueryForIdResultsHQL ? ((QBQueryForIdResultsHQL) results).getQueryBuilder() : null; int tableId = ((RecordSet) cmdAction.getData()).getDbTableId(); List<SearchResultReportServiceInfo> reps = new Vector<SearchResultReportServiceInfo>( ((ReportsBaseTask) ContextMgr.getTaskByClass(ReportsTask.class)).getReports(tableId, qb)); if (reps.size() == 0) { log.error("no reports for query. Should't have gotten here."); } else if (rsm.isLoadingCells()) { UIRegistry.writeTimedSimpleGlassPaneMsg( UIRegistry.getResourceString("QB_NO_REPORTS_WHILE_LOADING_RESULTS"), 5000, null, null, true); } else { ChooseFromListDlg<SearchResultReportServiceInfo> dlg = new ChooseFromListDlg<SearchResultReportServiceInfo>( (Frame) UIRegistry.getTopWindow(), UIRegistry.getResourceString("REP_CHOOSE_SP_REPORT"), reps); dlg.setVisible(true); if (dlg.isCancelled()) { return; } selectedRep = dlg.getSelectedObject(); dlg.dispose(); } if (selectedRep == null || selectedRep.getFileName() == null) { return; } Object src; if (selectedRep.isLiveData()) { // XXX - probably a smoother way to handle these generic issues. // (type safety warning) List<? extends ERTICaptionInfo> captions = rsm.getResults().getVisibleCaptionInfo(); src = new QBLiveDataSource(rsm, (List<ERTICaptionInfoQB>) captions, selectedRep.getRepeats()); } else { int[] selectedRows = rsm.getParentERTP().getSelectedRows(); if (selectedRows != null && selectedRows.length == 0) { selectedRows = null; } if (selectedRows == null) { src = (RecordSet) cmdAction.getData(); } else { src = rsm.getRecordSet(selectedRows, false); } } final CommandAction cmd = new CommandAction(ReportsBaseTask.REPORTS, ReportsBaseTask.PRINT_REPORT, src); cmd.setProperty("title", rsm.getResults().getTitle()); cmd.setProperty("file", selectedRep.getFileName()); if (selectedRep.isRequiresNewConnection()) { RecordSet repRS = new RecordSet(); repRS.initialize(); repRS.set(selectedRep.getReportName(), SpReport.getClassTableId(), RecordSet.GLOBAL); repRS.addItem(selectedRep.getSpReportId()); cmd.setProperty("spreport", repRS); } CommandDispatcher.dispatch(cmd); } } } }
From source file:edu.ku.brc.af.ui.forms.TableViewObj.java
/** * Adjust all the column width for the data in the column, this may be handles with JDK 1.6 (6.) * @param tableArg the table that should have it's columns adjusted *//*from w ww . jav a2 s . com*/ private void initColumnSizes(final JTable tableArg) { ColTableModel tblModel = (ColTableModel) tableArg.getModel(); TableColumn column = null; Component comp = null; int headerWidth = 0; int cellWidth = 0; TableCellRenderer headerRenderer = tableArg.getTableHeader().getDefaultRenderer(); for (int i = 0; i < tblModel.getColumnCount(); i++) { column = tableArg.getColumnModel().getColumn(i); comp = headerRenderer.getTableCellRendererComponent(null, column.getHeaderValue(), false, false, 0, 0); headerWidth = comp.getPreferredSize().width; comp = tableArg.getDefaultRenderer(tblModel.getColumnClass(i)).getTableCellRendererComponent(tableArg, tblModel.getValueAt(0, i), false, false, 0, i); cellWidth = comp.getPreferredSize().width; /* if (DEBUG) { System.out.println("Initializing width of column " + i + ". " + "headerWidth = " + headerWidth + "; cellWidth = " + cellWidth); }*/ //XXX: Before Swing 1.1 Beta 2, use setMinWidth instead. column.setPreferredWidth(Math.max(headerWidth, cellWidth)); } }
From source file:edu.harvard.mcz.imagecapture.ui.ButtonEditor.java
@Override public void actionPerformed(ActionEvent e) { // Action might not be event_button_pressed on all systems. log.debug("Button event actionCommand: " + e.getActionCommand()); if (e.getActionCommand().equals(EVENT_PRESSED)) { // Event is a click on the cell // Identify the row that was clicked on. JTable table = (JTable) ((JButton) e.getSource()).getParent(); log.debug(e.getSource());/* w ww.j a v a 2s . c o m*/ log.debug(table); int row = table.getEditingRow(); // Stop editing - note, we need to have gotten e.getSource.getParent and getEditingRow first. fireEditingStopped(); //Make the renderer reappear. Singleton.getSingletonInstance().getMainFrame() .setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); switch (formToOpen) { case OPEN_SPECIMEN_DETAILS: // Load the selected specimen record from its ID (the data value behind the button). //SpecimenLifeCycle sls = new SpecimenLifeCycle(); //Specimen specimen = sls.findById((Long)targetId); //if (specimen!=null) { if (targetId != null) { // a specimen with this ID exists, bring up the details editor. try { //SpecimenControler sc = new SpecimenControler(specimen); if (((Specimen) targetId).getSpecimenId() != null) { if (((Specimen) targetId).isStateDone()) { // Specimens in state_done are no longer editable JOptionPane.showMessageDialog(Singleton.getSingletonInstance().getMainFrame(), "This Specimen record has been migrated and can no longer be edited here [" + ((Specimen) targetId).getLoadFlags() + "].\nSee: http://mczbase.mcz.harvard.edu/guid/MCZ:Ent:" + ((Specimen) targetId).getCatNum(), "Migrated Specimen", JOptionPane.WARNING_MESSAGE); } else { // Specimen is still editable if (table != null) { // Pass the specimen object for the row, the table model, and the row number on to the specimen controler. try { SpecimenControler sc = new SpecimenControler((Specimen) targetId, (SpecimenListTableModel) table.getModel(), table, row); if (table.getParent().getParent().getParent().getParent() .getClass() == SpecimenBrowser.class) { sc.addListener((DataChangeListener) table.getParent()); } else { Component x = table; boolean done = false; while (!done) { log.debug(x.getParent()); x = x.getParent(); if (x.getClass() == SpecimenBrowser.class) { sc.addListener((DataChangeListener) x); done = true; } } } sc.displayInEditor(); } catch (java.lang.ClassCastException eNotSp) { // Request isn't coming from a SpecimenListTableModel // View just the specimen record. SpecimenControler sc = new SpecimenControler((Specimen) targetId); sc.displayInEditor(); } } else { log.debug(e.getSource()); //SpecimenControler sc = new SpecimenControler((Specimen)targetId); //sc.displayInEditor(); } } } else { log.debug("User clicked on table row containing a new Specimen()"); JOptionPane.showMessageDialog(Singleton.getSingletonInstance().getMainFrame(), "No Specimen for this image", "Load Specimen Failed", JOptionPane.WARNING_MESSAGE); } } catch (NoSuchRecordException e1) { log.error("Tested for specimen!=null, but SpecimenControler threw null specimen exception"); log.error(e1); } } else { log.debug("No matches found to specimen id=" + targetId); // TODO: Create new specimen record and bring up dialog JOptionPane.showMessageDialog(Singleton.getSingletonInstance().getMainFrame(), "No specimen record."); } break; case OPEN_TEMPLATE: // Load the selected specimen record from its ID (the data value behind the button). try { // a template with this targetID exists, display it. ((PositionTemplateEditor) parentComponent).setTemplate((String) targetId); } catch (NoSuchTemplateException e1) { log.error("No such template on button press on a template in list."); log.error(e1); log.trace(e1); } break; case OPEN_USER: //TODO: tie to user log.debug("Open user"); ((UserListBrowser) parentComponent).getEditUserPanel().setUser((Users) targetId); break; case OPEN_SPECIMEN_VERBATIM: log.debug("Open Verbatim Transcription"); SpecimenLifeCycle sls = new SpecimenLifeCycle(); List<Specimen> toTranscribe = sls.findForVerbatim(((GenusSpeciesCount) targetId).getGenus(), ((GenusSpeciesCount) targetId).getSpecificEpithet(), WorkFlowStatus.STAGE_1); log.debug(toTranscribe.size()); SpecimenListTableModel stm = new SpecimenListTableModel(toTranscribe); JTable stable = new JTable(); stable.setModel(stm); SpecimenControler verbCont; try { verbCont = new SpecimenControler(toTranscribe.get(0), stm, stable, 0); VerbatimCaptureDialog dialog = new VerbatimCaptureDialog(toTranscribe.get(0), verbCont); dialog.setVisible(true); } catch (NoSuchRecordException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } break; case OPEN_VERBATIM_CLASSIFY: log.debug("Open Verbatim Classify dialog"); try { VerbatimClassifyDialog dialog = new VerbatimClassifyDialog( (VerbatimCount) table.getModel().getValueAt(row, 0)); dialog.setVisible(true); } catch (ClassCastException e1) { log.error(e1.getMessage(), e1); } break; case ACTION_CANCEL_JOB: log.debug("Action Cancel requested on job " + targetId); Singleton.getSingletonInstance().getJobList().getJobAt((Integer) targetId).cancel(); break; case OPEN_SPECIMENPARTATTRIBUTES: SpecimenPartAttributeDialog attrDialog = new SpecimenPartAttributeDialog((SpecimenPart) targetId); attrDialog.setVisible(true); break; } Singleton.getSingletonInstance().getMainFrame() .setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); System.gc(); } }
From source file:edu.ku.brc.ui.UIHelper.java
/** * Calculates and sets the each column to it preferred size. NOTE: This * method also sets the table height to 10 rows. * // www . j a va2 s . co m * @param table the table to fix up * @param numRowsHeight the number of rows to make the table height (or null not to set it) */ public static void calcColumnWidths(final JTable table, final Integer numRowsHeight, final Integer maxWidth) { if (table != null) { JTableHeader header = table.getTableHeader(); TableCellRenderer defaultHeaderRenderer = null; if (header != null) { defaultHeaderRenderer = header.getDefaultRenderer(); } TableColumnModel columns = table.getColumnModel(); TableModel data = table.getModel(); int margin = columns.getColumnMargin(); // only JDK1.3 int rowCount = data.getRowCount(); int totalWidth = 0; for (int i = columns.getColumnCount() - 1; i >= 0; --i) { TableColumn column = columns.getColumn(i); int columnIndex = column.getModelIndex(); int width = -1; TableCellRenderer h = column.getHeaderRenderer(); if (h == null) h = defaultHeaderRenderer; if (h != null) // Not explicitly impossible { Component c = h.getTableCellRendererComponent(table, column.getHeaderValue(), false, false, -1, i); width = c.getPreferredSize().width; } for (int row = rowCount - 1; row >= 0; --row) { TableCellRenderer r = table.getCellRenderer(row, i); Component c = r.getTableCellRendererComponent(table, data.getValueAt(row, columnIndex), false, false, row, i); width = Math.max(width, c.getPreferredSize().width + 10); // adding an arbitray 10 pixels to make it look nicer if (maxWidth != null) { width = Math.min(width, maxWidth); } } if (width >= 0) { column.setPreferredWidth(width + margin); // <1.3: without margin } else { // ??? } totalWidth += column.getPreferredWidth(); } // If you like; This does not make sense for two many columns! Dimension size = table.getPreferredScrollableViewportSize(); //if (totalWidth > size.width) { if (numRowsHeight != null) { size.height = Math.min(size.height, table.getRowHeight() * numRowsHeight); } size.width = totalWidth; table.setPreferredScrollableViewportSize(size); } } }