类javax.swing.event.RowSorterEvent源码实例Demo

下面列出了怎么用javax.swing.event.RowSorterEvent的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: wandora   文件: SimpleTable.java
private void maybeRepaintOnSorterChanged(RowSorterEvent e) {
    if (beforeSort == null) return;
    if ((e == null) || (e.getType() != RowSorterEvent.Type.SORTED)) return;
    UpdateHandler afterSort = new UpdateHandler(beforeSort);
    if (afterSort.allHidden(beforeSort)) {
        return;
    } else if (afterSort.complex(beforeSort)) {
        repaint();
        return;
    }
    int firstRow = afterSort.getFirstCombined(beforeSort);
    int lastRow = afterSort.getLastCombined(beforeSort);
    Rectangle first = getCellRect(firstRow, 0, false);
    first.width = getWidth();
    Rectangle last = getCellRect(lastRow, 0, false);
    repaint(first.union(last));
}
 
源代码2 项目: mzmine3   文件: PeakListTable.java
/**
 * When user sorts the table, we have to cancel current combobox for identity selection.
 * Unfortunately, this doesn't happen automatically.
 */
@Override
public void sorterChanged(RowSorterEvent e) {
  if (currentEditor != null) {
    currentEditor.stopCellEditing();
  }
  super.sorterChanged(e);
}
 
源代码3 项目: netbeans   文件: KeymapPanel.java
@Override
public void sorterChanged(RowSorterEvent e) {
    String aid = selectedActionId;
    int colIndex = getSelectedColumn();
    super.sorterChanged(e);
    restoreSelection(aid, colIndex);
}
 
源代码4 项目: mzmine2   文件: PeakListTable.java
/**
 * When user sorts the table, we have to cancel current combobox for identity selection.
 * Unfortunately, this doesn't happen automatically.
 */
public void sorterChanged(RowSorterEvent e) {
  if (currentEditor != null) {
    currentEditor.stopCellEditing();
  }
  super.sorterChanged(e);
}
 
源代码5 项目: jdal   文件: PageableTable.java
/** 
 * Handle sort changes in model sorter. 
 * Query PageableDataSource for new page with the sort changes
 * @see javax.swing.event.RowSorterListener#sorterChanged(javax.swing.event.RowSorterEvent)
 */
public void sorterChanged(RowSorterEvent e) {
	if (sorter.getSortKeys().size() > 0 && 
			tableModel.isPropertyColumn(sorter.getSortKeys().get(0).getColumn())) {
		// set first page
		configurePage();
		page.firstPage();
	}
}
 
源代码6 项目: netbeans   文件: JXTableRowHeader.java
@Override
public void sorterChanged(RowSorterEvent rse) {
    tableDataChanged();
}
 
源代码7 项目: LoggerPlusPlus   文件: LogTable.java
LogTable(LogTableController controller)
{
    super(controller.getLogTableModel(), controller.getLogTableColumnModel());
    this.controller = controller;
    this.preferences = controller.getPreferences();

    this.setTableHeader(controller.getTableHeader()); // This was used to create tool tips
    this.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); // to have horizontal scroll bar
    this.setRowHeight(20); // As we are not using Burp customised UI, we have to define the row height to make it more pretty
    this.setDefaultRenderer(Boolean.class, new BooleanRenderer()); //Fix grey checkbox background
    ((JComponent) this.getDefaultRenderer(Boolean.class)).setOpaque(true); // to remove the white background of the checkboxes!

    this.sorter = new TableRowSorter<>(this.getModel());
    this.sorter.setMaxSortKeys(1);
    this.sorter.setSortsOnUpdates(true);
    this.setRowSorter(this.sorter);

    this.sorter.addRowSorterListener(rowSorterEvent -> {
        if(rowSorterEvent.getType() != RowSorterEvent.Type.SORT_ORDER_CHANGED) return;
        List<? extends RowSorter.SortKey> sortKeys = LogTable.this.sorter.getSortKeys();
        if(sortKeys == null || sortKeys.size() == 0){
            this.preferences.setSetting(Globals.PREF_SORT_ORDER, null);
            this.preferences.setSetting(Globals.PREF_SORT_COLUMN, null);
        }else {
            RowSorter.SortKey sortKey = sortKeys.get(0);
            this.preferences.setSetting(Globals.PREF_SORT_ORDER, sortKey.getSortOrder());
            this.preferences.setSetting(Globals.PREF_SORT_COLUMN, sortKey.getColumn());
        }
    });

    Integer sortColumn = this.preferences.getSetting(Globals.PREF_SORT_COLUMN);
    SortOrder sortOrder = this.preferences.getSetting(Globals.PREF_SORT_ORDER);
    if(sortColumn >= 0 && sortOrder != SortOrder.UNSORTED){
        try {
            this.sorter.setSortKeys(Collections.singletonList(new RowSorter.SortKey(sortColumn, sortOrder)));
        }catch (IllegalArgumentException exception){
            //If we can't set the sort key because its invalid, just ignore it.
        }
    }

    this.getSelectionModel().addListSelectionListener(e -> {
        if(e.getValueIsAdjusting()) return;
        RequestViewerController requestViewerController = LogTable.this.controller.getLogViewController().getRequestViewerController();
        int selectedRow = getSelectedRow();
        if(selectedRow == -1){
            requestViewerController.setDisplayedEntity(null);
        }else {
            // Use a relative instead of an absolute index (This prevents an issue when a filter is set)
            LogEntry logEntry = getModel().getData().get(convertRowIndexToModel(selectedRow));
            if (logEntry.requestResponse != null) {
                requestViewerController.setDisplayedEntity(logEntry.requestResponse);
            }
        }
    });

    this.getSelectionModel().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

    registerListeners();
}
 
源代码8 项目: wandora   文件: SimpleTable.java
@Override
public void sorterChanged(RowSorterEvent e) {
    super.sorterChanged(e);
    maybeRepaintOnSorterChanged(e);
}
 
 类所在包
 类方法
 同包方法