Author: kono
Date: 2011-10-07 13:34:22 -0700 (Fri, 07 Oct 2011)
New Revision: 27085
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AttributeBrowserToolBar.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTable.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTableModel.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/TableMetadata.java
Log:
fixes #409 Table-oriented selection mode implemented. Still need to check
performance of selection. It's slow for large network.
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -23,6 +23,7 @@
import org.cytoscape.application.swing.CytoPanelComponent;
import org.cytoscape.application.swing.CytoPanelName;
import org.cytoscape.equations.EquationCompiler;
+import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.CyNetworkTableManager;
import org.cytoscape.model.CyTable;
@@ -70,7 +71,7 @@
final CyServiceRegistrar serviceRegistrar, final
EquationCompiler compiler, final OpenBrowser openBrowser,
final CyNetworkManager networkManager, final
TableTaskFactory deleteTableTaskFactoryService,
final GUITaskManager guiTaskManagerServiceRef, final
PopupMenuHelper popupMenuHelper,
- final CyApplicationManager applicationManager) {
+ final CyApplicationManager applicationManager, final
CyEventHelper eventHelper) {
this.networkTableManager = networkTableManager;
this.serviceRegistrar = serviceRegistrar;
this.compiler = compiler;
@@ -80,7 +81,7 @@
this.tableToMetadataMap = new HashMap<CyTable, TableMetadata>();
this.applicationManager = applicationManager;
- this.browserTable = new BrowserTable(openBrowser, compiler,
popupMenuHelper);
+ this.browserTable = new BrowserTable(openBrowser, compiler,
popupMenuHelper, applicationManager, eventHelper);
this.setLayout(new BorderLayout());
@@ -120,6 +121,7 @@
void showSelectedTable() {
browserTableModel = new BrowserTableModel(browserTable,
currentTable, compiler);
+
serviceRegistrar.registerAllServices(browserTableModel, new
Properties());
browserTable.setUpdateComparators(false);
browserTable.setModel(browserTableModel);
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AttributeBrowserToolBar.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AttributeBrowserToolBar.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AttributeBrowserToolBar.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -127,6 +127,7 @@
this.attrListModel = new AttributeListModel(null);
serviceRegistrar.registerAllServices(attrListModel, new
Properties());
+ selectionModeButton.setEnabled(false);
initializeGUI();
}
@@ -140,6 +141,7 @@
deleteAttributeButton.setEnabled(browserTableModel != null);
deleteTableButton.setEnabled(browserTableModel != null);
formulaBuilderButton.setEnabled(browserTableModel != null);
+ selectionModeButton.setEnabled(browserTableModel != null);
}
private void initializeGUI() {
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTable.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTable.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTable.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -3,13 +3,14 @@
import java.awt.Color;
import java.awt.Component;
-import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.KeyboardFocusManager;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.Window;
+import java.awt.datatransfer.Clipboard;
+import java.awt.datatransfer.StringSelection;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
@@ -17,20 +18,17 @@
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
-import java.awt.datatransfer.Clipboard;
-import java.awt.datatransfer.StringSelection;
-
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
-
import java.net.MalformedURLException;
import java.net.URL;
-
import java.util.ArrayList;
import java.util.EventObject;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.Vector;
import javax.swing.BorderFactory;
@@ -52,28 +50,30 @@
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
+import org.cytoscape.application.CyApplicationManager;
+import org.cytoscape.browser.util.TableBrowserUtil;
import org.cytoscape.equations.EquationCompiler;
-import org.cytoscape.service.util.CyServiceRegistrar;
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.model.CyColumn;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyRow;
import org.cytoscape.util.swing.OpenBrowser;
-import org.cytoscape.model.CyRow;
-import org.cytoscape.model.CyTable;
-import org.cytoscape.model.CyColumn;
+import org.cytoscape.view.model.CyNetworkView;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.awt.event.FocusListener;
-import java.awt.event.FocusEvent;
-import javax.swing.event.CellEditorListener;
-import javax.swing.event.ChangeEvent;
-import org.cytoscape.browser.util.TableBrowserUtil;
+public class BrowserTable extends JTable implements MouseListener,
ActionListener, MouseMotionListener {
+
+
+ private static final long serialVersionUID = 4415856756184765301L;
-public class BrowserTable extends JTable
- implements MouseListener, ActionListener, MouseMotionListener
-{
+ private static final Logger logger =
LoggerFactory.getLogger(BrowserTable.class);
+
private static final Font BORDER_FONT = new Font("Sans-serif",
Font.BOLD, 12);
private static final TableCellRenderer cellRenderer = new
BrowserTableCellRenderer();
private static final String MAC_OS_ID = "mac";
+
private Clipboard systemClipboard;
private CellEditorRemover editorRemover = null;
private Map<String, Map<String, String>> linkoutProps;
@@ -89,18 +89,20 @@
private final EquationCompiler compiler;
private final PopupMenuHelper popupMenuHelper;
private boolean updateColumnComparators;
- private static final Logger logger =
LoggerFactory.getLogger(BrowserTable.class);
+ private final CyApplicationManager applicationManager;
+ private final CyEventHelper eventHelper;
public BrowserTable(final OpenBrowser openBrowser, final
EquationCompiler compiler,
- final PopupMenuHelper popupMenuHelper)
- {
+ final PopupMenuHelper popupMenuHelper, final
CyApplicationManager applicationManager,
+ final CyEventHelper eventHelper) {
this.openBrowser = openBrowser;
this.compiler = compiler;
this.popupMenuHelper = popupMenuHelper;
this.updateColumnComparators = false;
+ this.applicationManager = applicationManager;
+ this.eventHelper = eventHelper;
-// setColumnModel(new MyTableColumnModel());
initHeader();
setCellSelectionEnabled(true);
setDefaultEditor(Object.class, new MultiLineTableCellEditor());
@@ -133,9 +135,8 @@
final BrowserTable table = this;
- //
+
// Event handler. Define actions when mouse is clicked.
- //
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
final int column =
getColumnModel().getColumnIndexAtX(e.getX());
@@ -190,33 +191,58 @@
}
} // mouseClicked
+ @Override
public void mouseReleased(MouseEvent e) {
- // When the mouse is released, fire
signal to pass the selected
- // objects in the table.
- // Get selected object names
- final int[] rowsSelected =
getSelectedRows();
-
- if (rowsSelected.length == 0) {
- return;
- }
-
- final int columnCount =
getColumnCount();
- int idLocation = 0;
-/*
- // Initialize internal selection table
- ((DataTableModel)
dataModel).resetSelectionFlags();
-
- setSelectedColor(SELECTED_NODE);
- setSelectedColor(REV_SELECTED_NODE);
- setSelectedColor(SELECTED_EDGE);
- setSelectedColor(REV_SELECTED_EDGE);
-
- resetObjectColor(idLocation);
- paintNodesAndEdges(idLocation);
-*/
+ SwingUtilities.invokeLater(new
Runnable() {
+ @Override
+ public void run() {
+ selectFromTable();
+ }
+ });
}
});
}
+
+
+ private void selectFromTable() {
+ final TableModel model = this.getModel();
+ if(model instanceof BrowserTableModel == false)
+ return;
+
+ BrowserTableModel btModel = (BrowserTableModel) model;
+ if(btModel.isShowAll() == false)
+ return;
+
+ final int[] rowsSelected = getSelectedRows();
+ if (rowsSelected.length == 0)
+ return;
+
+ final int selectedRowCount = getSelectedRowCount();
+
+ //TODO: performance tuning
+ final Set<CyRow> targetRows = new HashSet<CyRow>();
+ for(int i=0; i<selectedRowCount; i++)
+ targetRows.add(btModel.getRow(rowsSelected[i]));
+
+ // Clear selection
+ List<CyRow> allRows = btModel.getDataTable().getAllRows();
+ for(CyRow row: allRows) {
+ final Boolean val = row.get(CyNetwork.SELECTED,
Boolean.class);
+ if(targetRows.contains(row)) {
+ if(!val)
+ row.set(CyNetwork.SELECTED, true);
+ continue;
+ }
+ if(val)
+ row.set(CyNetwork.SELECTED, false);
+ }
+
+ final CyNetworkView curView =
applicationManager.getCurrentNetworkView();
+ if(curView != null) {
+ eventHelper.flushPayloadEvents();
+ curView.updateView();
+ }
+ }
private void setKeyStroke() {
final KeyStroke copy = KeyStroke.getKeyStroke(KeyEvent.VK_C,
ActionEvent.CTRL_MASK, false);
@@ -498,7 +524,7 @@
}
@Override
- public void mouseReleased(MouseEvent event) {
+ public void mouseReleased(MouseEvent event) {
}
@Override
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTableModel.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTableModel.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/BrowserTableModel.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -35,6 +35,7 @@
public final class BrowserTableModel extends AbstractTableModel implements
ColumnCreatedListener,
ColumnDeletedListener, ColumnNameChangedListener,
RowsSetListener, RowsCreatedListener {
+
private static final long serialVersionUID = -517521404005631245L;
private static final int MAX_INITIALLY_VSIBLE_ATTRS = 10;
@@ -43,20 +44,32 @@
private final CyTable dataTable;
private final EquationCompiler compiler;
- private boolean tableHasBooleanSelected;
+
+ // If this is FALSE, it's a Global.
+ private boolean regularViewMode;
+
+ //private boolean showAll = false;
private List<AttrNameAndVisibility> attrNamesAndVisibilities;
+
private Collection<CyRow> selectedRows = null;
+
public BrowserTableModel(final JTable table, final CyTable dataTable,
final EquationCompiler compiler) {
this.table = table;
this.dataTable = dataTable;
this.compiler = compiler;
final CyColumn selectedColumn =
dataTable.getColumn(CyNetwork.SELECTED);
- this.tableHasBooleanSelected = selectedColumn != null &&
selectedColumn.getType() == Boolean.class;
+ this.regularViewMode = selectedColumn != null &&
selectedColumn.getType() == Boolean.class;
initAttrNamesAndVisibilities();
}
+
+ CyTable getDataTable() {
+ return dataTable;
+ }
+
+
private void initAttrNamesAndVisibilities() {
attrNamesAndVisibilities = new
ArrayList<AttrNameAndVisibility>(dataTable.getColumns().size());
final CyColumn primaryKey = dataTable.getPrimaryKey();
@@ -125,7 +138,8 @@
if (columns.isEmpty())
return 0;
- if (!tableHasBooleanSelected)
+ // Show Global Table OR selection mode is table-oriented
+ if (!regularViewMode)
return dataTable.getRowCount();
return dataTable.getMatchingRows(CyNetwork.SELECTED,
Boolean.valueOf(true)).size();
@@ -156,7 +170,7 @@
}
private CyRow mapRowIndexToRow(final int rowIndex) {
- if (tableHasBooleanSelected) {
+ if (regularViewMode) {
if (selectedRows == null)
selectedRows =
dataTable.getMatchingRows(CyNetwork.SELECTED, true);
@@ -187,7 +201,7 @@
final Class<?> primaryKeyType =
dataTable.getPrimaryKey().getType();
int index = 0;
- if (tableHasBooleanSelected) {
+ if (regularViewMode) {
if (selectedRows == null)
selectedRows =
dataTable.getMatchingRows(CyNetwork.SELECTED, true);
@@ -301,9 +315,9 @@
@Override
public void handleEvent(final RowsSetEvent e) {
if (e.getSource() != dataTable)
- return;
-
- if (tableHasBooleanSelected) {
+ return;
+
+ if (regularViewMode) {
selectedRows = null;
boolean foundANonSelectedColumnName = false;
for (final RowSetRecord rowSet :
e.getPayloadCollection()) {
@@ -320,13 +334,32 @@
}
for (final RowSetRecord rowSet : e.getPayloadCollection())
- handleRowValueUpdate(rowSet.getRow(),
rowSet.getColumn(),
- rowSet.getValue(),
rowSet.getRawValue());
+ handleRowValueUpdate(rowSet.getRow(),
rowSet.getColumn(), rowSet.getValue(), rowSet.getRawValue());
}
+
+ /**
+ * Switch view mode.
+ *
+ *
+ * @param showAll
+ */
+ void setShowAll(boolean showAll) {
+ if(showAll) {
+ regularViewMode = false;
+ } else {
+ regularViewMode = true;
+ }
+ fireTableDataChanged();
+ }
+
+ boolean isShowAll() {
+ return !regularViewMode;
+ }
private void handleRowValueUpdate(final CyRow row, final String
columnName, final Object newValue,
final Object newRawValue)
{
+
final int rowIndex = mapRowToRowIndex(row);
if (rowIndex == -1)
return;
@@ -335,7 +368,7 @@
if (columnIndex == -1)
return;
- if (tableHasBooleanSelected &&
columnName.equals(CyNetwork.SELECTED)) {
+ if (regularViewMode && columnName.equals(CyNetwork.SELECTED)) {
/*
final boolean selected = (Boolean)newValue;
final int rowIndex = mapRowToRowIndex(row);
@@ -415,6 +448,10 @@
return cellVect;
}
+ CyRow getRow(final int rowIndex) {
+ return mapRowIndexToRow(rowIndex);
+ }
+
@Override
public void setValueAt(final Object value, final int rowIndex, final
int columnIndex) {
final String text = (String)value;
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -2,6 +2,7 @@
import org.cytoscape.util.swing.OpenBrowser;
import org.cytoscape.equations.EquationCompiler;
+import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.service.util.CyServiceRegistrar;
@@ -43,14 +44,16 @@
GUITaskManager guiTaskManagerServiceRef =
getService(bc,GUITaskManager.class);
CyApplicationManager cyApplicationManagerServiceRef =
getService(bc,CyApplicationManager.class);
CyNetworkTableManager cyNetworkTableManagerServiceRef =
getService(bc,CyNetworkTableManager.class);
+
+ CyEventHelper cyEventHelperServiceRef =
getService(bc,CyEventHelper.class);
PopupMenuHelper popupMenuHelper = new
PopupMenuHelper(guiTaskManagerServiceRef);
- AbstractTableBrowser nodeTableBrowser = new
DefaultTableBrowser("Node Table", CyNode.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef);
- AbstractTableBrowser edgeTableBrowser = new
DefaultTableBrowser("Edge Table", CyEdge.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef);
- AbstractTableBrowser networkTableBrowser = new
DefaultTableBrowser("Network Table", CyNetwork.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef);
+ AbstractTableBrowser nodeTableBrowser = new
DefaultTableBrowser("Node Table", CyNode.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef,
cyEventHelperServiceRef);
+ AbstractTableBrowser edgeTableBrowser = new
DefaultTableBrowser("Edge Table", CyEdge.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef,
cyEventHelperServiceRef);
+ AbstractTableBrowser networkTableBrowser = new
DefaultTableBrowser("Network Table", CyNetwork.class,
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef,
cyEventHelperServiceRef);
- AbstractTableBrowser globalTableBrowser = new
GlobalTableBrowser("Global Table",
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef);
+ AbstractTableBrowser globalTableBrowser = new
GlobalTableBrowser("Global Table",
cyTableManagerServiceRef,cyNetworkTableManagerServiceRef,cyServiceRegistrarServiceRef,compilerServiceRef,openBrowserServiceRef,cyNetworkManagerServiceRef,deleteTableTaskFactoryService,guiTaskManagerServiceRef,popupMenuHelper,cyApplicationManagerServiceRef,
cyEventHelperServiceRef);
registerAllServices(bc,nodeTableBrowser, new Properties());
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -16,16 +16,19 @@
import javax.swing.JList;
import javax.swing.JToggleButton;
import javax.swing.ListCellRenderer;
+import javax.swing.event.ChangeListener;
import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.application.events.SetCurrentNetworkEvent;
import org.cytoscape.application.events.SetCurrentNetworkListener;
import org.cytoscape.equations.EquationCompiler;
+import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyEdge;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.CyNetworkTableManager;
import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
import org.cytoscape.model.CyTableEntry;
import org.cytoscape.model.CyTableManager;
import org.cytoscape.model.events.NetworkAboutToBeDestroyedEvent;
@@ -45,14 +48,15 @@
private final JComboBox networkChooser;
private final Class<? extends CyTableEntry> objType;
+
public DefaultTableBrowser(String tabTitle, Class<? extends
CyTableEntry> objType, CyTableManager tableManager,
CyNetworkTableManager networkTableManager,
CyServiceRegistrar serviceRegistrar, EquationCompiler compiler,
OpenBrowser openBrowser, CyNetworkManager
networkManager, TableTaskFactory deleteTableTaskFactoryService,
GUITaskManager guiTaskManagerServiceRef,
PopupMenuHelper popupMenuHelper,
- CyApplicationManager applicationManager) {
+ CyApplicationManager applicationManager, final
CyEventHelper eventHelper) {
super(tabTitle, tableManager, networkTableManager,
serviceRegistrar, compiler, openBrowser, networkManager,
- deleteTableTaskFactoryService,
guiTaskManagerServiceRef, popupMenuHelper, applicationManager);
+ deleteTableTaskFactoryService,
guiTaskManagerServiceRef, popupMenuHelper, applicationManager, eventHelper);
this.objType = objType;
@@ -74,17 +78,19 @@
selectionModeButton.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
-
+ changeSelectionMode();
}
});
-
-
this.attributeBrowserToolBar = new
AttributeBrowserToolBar(serviceRegistrar, compiler,
deleteTableTaskFactoryService,
guiTaskManagerServiceRef, networkChooser, selectionModeButton);
add(attributeBrowserToolBar, BorderLayout.NORTH);
}
+
+ private void changeSelectionMode() {
+ browserTableModel.setShowAll(selectionModeButton.isSelected());
+ }
@Override
@@ -100,16 +106,23 @@
@Override
public void handleEvent(final SetCurrentNetworkEvent e) {
final CyNetwork currentNetwork = e.getNetwork();
-
+ final CyNetwork selectedNetwork = (CyNetwork)
networkChooser.getSelectedItem();
+
+
if (browserTableModel != null)
serviceRegistrar.unregisterAllServices(browserTableModel);
- if (objType == CyNode.class)
+ if (objType == CyNode.class) {
currentTable = currentNetwork.getDefaultNodeTable();
- else if (objType == CyEdge.class)
+ } else if (objType == CyEdge.class) {
currentTable = currentNetwork.getDefaultEdgeTable();
- else
+ } else {
currentTable = currentNetwork.getDefaultNetworkTable();
+ }
+
+// if(this.browserTableModel != null &&
browserTableModel.getDataTable() == currentTable)
+// return;
+
networkChooser.setSelectedItem(currentNetwork);
showSelectedTable();
}
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -12,6 +12,7 @@
import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.browser.internal.TableChooser.GlobalTableComboBoxModel;
import org.cytoscape.equations.EquationCompiler;
+import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyEdge;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkManager;
@@ -46,9 +47,9 @@
CyServiceRegistrar serviceRegistrar, EquationCompiler
compiler, OpenBrowser openBrowser,
CyNetworkManager networkManager, TableTaskFactory
deleteTableTaskFactoryService,
GUITaskManager guiTaskManagerServiceRef,
PopupMenuHelper popupMenuHelper,
- CyApplicationManager applicationManager) {
+ CyApplicationManager applicationManager, CyEventHelper
eventHelper) {
super(tabTitle, tableManager, networkTableManager,
serviceRegistrar, compiler, openBrowser, networkManager,
- deleteTableTaskFactoryService,
guiTaskManagerServiceRef, popupMenuHelper, applicationManager);
+ deleteTableTaskFactoryService,
guiTaskManagerServiceRef, popupMenuHelper, applicationManager, eventHelper);
tableChooser = new TableChooser();
tableChooser.addActionListener(this);
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/TableMetadata.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/TableMetadata.java
2011-10-07 20:32:33 UTC (rev 27084)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/TableMetadata.java
2011-10-07 20:34:22 UTC (rev 27085)
@@ -9,7 +9,6 @@
import javax.swing.JTable;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
-import javax.swing.table.TableModel;
class TableMetadata {
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.