001 package org.shiftone.jrat.provider.tree.ui.summary.action;
002
003 import org.jdesktop.swingx.JXTable;
004 import org.jdesktop.swingx.table.TableColumnExt;
005 import org.shiftone.jrat.desktop.util.Table;
006
007 import javax.swing.*;
008 import java.awt.event.ActionEvent;
009 import java.util.List;
010
011 /**
012 * @author jeff@shiftone.org (Jeff Drost)
013 */
014 public class ResetColumnVisibilityAction extends AbstractAction {
015
016 private final JXTable table;
017 private final List tableColumns;
018
019 public ResetColumnVisibilityAction(JXTable table, List tableColumns) {
020 super("Reset Default Column Visibility");
021 this.table = table;
022 this.tableColumns = tableColumns;
023 }
024
025 public void actionPerformed(ActionEvent e) {
026 List columns = table.getColumns(true);
027 for (int i = 0; i < tableColumns.size(); i++) {
028 TableColumnExt columnExt = (TableColumnExt) columns.get(i);
029 Table.Column tableColumn = (Table.Column) tableColumns.get(i);
030 columnExt.setVisible(tableColumn.isDefaultVisible());
031 }
032 }
033
034 }