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 }