Revision: 6681
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6681&view=rev
Author: gerdwagner
Date: 2012-10-08 19:29:09 +0000 (Mon, 08 Oct 2012)
Log Message:
-----------
Clean up Overview tab:
- Allows to adjust the maximum number of intervals
- Traces drill downs by coloring clicked buttons
Modified Paths:
--------------
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/OverviewCtrl.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/DataScaleTableModel.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/ScaleFactory.java
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/OverviewCtrl.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/OverviewCtrl.java 2012-10-07 19:56:30 UTC (rev 6680)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/OverviewCtrl.java 2012-10-08 19:29:09 UTC (rev 6681)
@@ -35,7 +35,7 @@
private static final String PREF_KEY_CHART_PANEL_SPLIT = "Squirrel.overview.chartPanel.splitloc";
private ChartConfigController _chartConfigController;
- private List<Object[]> _currentRows;
+ private boolean _dontReactToCallDepthChanges;
public OverviewCtrl(final ISession session)
{
@@ -144,19 +144,12 @@
private void onCallDepthSelected(ItemEvent itemEvent)
{
- if(ItemEvent.DESELECTED ==itemEvent.getStateChange())
+ if(ItemEvent.DESELECTED ==itemEvent.getStateChange() || _dontReactToCallDepthChanges)
{
return;
}
- SwingUtilities.invokeLater(new Runnable()
- {
- public void run()
- {
- initScales(_overviewHolder.getDataScaleTable().getAllRows(), _overviewHolder.getDataScaleTable().getColumnDisplayDefinitions(), true);
- }
- });
-
+ initScales(_overviewHolder.getDataScaleTable().getAllRows(), _overviewHolder.getDataScaleTable().getColumnDisplayDefinitions(), true);
}
private void onCreateBarChart()
@@ -300,13 +293,34 @@
private void onPrev()
{
_overviewHolder.setParent();
+
+ updateCallDepth();
+
initGui();
}
+ private void updateCallDepth()
+ {
+ if (null != _overviewHolder.getDataScaleTable())
+ {
+ CallDepthComboModel callDepth = _overviewHolder.getDataScaleTable().getDataScaleTableModel().getCallDepth();
+ try
+ {
+ _dontReactToCallDepthChanges = true;
+ _overviewPanel.cboCallDepth.setSelectedItem(callDepth);
+ }
+ finally
+ {
+ _dontReactToCallDepthChanges = false;
+ }
+ }
+ }
+
private void onNext()
{
_overviewHolder.setKid();
+ updateCallDepth();
initGui();
}
@@ -348,10 +362,11 @@
private void initScales(List<Object[]> rows, final ColumnDisplayDefinition[] columnDefinitions, boolean keepFormerParent)
{
- _currentRows = rows;
+ CallDepthComboModel selectedCallDepth = (CallDepthComboModel) _overviewPanel.cboCallDepth.getSelectedItem();
+
if(0 == rows.size())
{
- initScaleTable(new DataScale[0], rows, columnDefinitions, keepFormerParent);
+ initScaleTable(new DataScale[0], rows, columnDefinitions, keepFormerParent, selectedCallDepth);
return;
}
@@ -380,18 +395,17 @@
};
- CallDepthComboModel selectedCallDepth = (CallDepthComboModel) _overviewPanel.cboCallDepth.getSelectedItem();
for (int i = 0; i < columnDefinitions.length; i++)
{
scales[i] = new ScaleFactory(rows, i, columnDefinitions[i], selectedCallDepth.getCallDepth()).createScale(dataScaleListener);
}
- initScaleTable(scales, rows, columnDefinitions, keepFormerParent);
+ initScaleTable(scales, rows, columnDefinitions, keepFormerParent, selectedCallDepth);
}
- private void initScaleTable(DataScale[] scales, List<Object[]> rows, ColumnDisplayDefinition[] columnDefinitions, boolean keepFormerParent)
+ private void initScaleTable(DataScale[] scales, List<Object[]> rows, ColumnDisplayDefinition[] columnDefinitions, boolean keepFormerParent, CallDepthComboModel callDepth)
{
- DataScaleTableModel dataScaleTableModel = new DataScaleTableModel(scales);
+ DataScaleTableModel dataScaleTableModel = new DataScaleTableModel(scales, callDepth);
DataScaleTable dataScaleTable = new DataScaleTable(dataScaleTableModel, rows, columnDefinitions);
TableColumnModel tcm = new DefaultTableColumnModel();
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/DataScaleTableModel.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/DataScaleTableModel.java 2012-10-07 19:56:30 UTC (rev 6680)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/DataScaleTableModel.java 2012-10-08 19:29:09 UTC (rev 6681)
@@ -1,5 +1,6 @@
package net.sourceforge.squirrel_sql.client.session.mainpanel.overview.datascale;
+import net.sourceforge.squirrel_sql.client.session.mainpanel.overview.CallDepthComboModel;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
@@ -16,11 +17,13 @@
private DataScale[] _dataScales;
+ private CallDepthComboModel _callDepth;
- public DataScaleTableModel(DataScale[] dataScales)
+ public DataScaleTableModel(DataScale[] dataScales, CallDepthComboModel callDepth)
{
_dataScales = dataScales;
+ _callDepth = callDepth;
}
@@ -69,4 +72,9 @@
{
return _dataScales.length;
}
+
+ public CallDepthComboModel getCallDepth()
+ {
+ return _callDepth;
+ }
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/ScaleFactory.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/ScaleFactory.java 2012-10-07 19:56:30 UTC (rev 6680)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/overview/datascale/ScaleFactory.java 2012-10-08 19:29:09 UTC (rev 6681)
@@ -15,11 +15,6 @@
private IndexedColumn _indexedColumn;
private int _callDepth;
- public ScaleFactory(List<Object[]> rows, int colIx, ColumnDisplayDefinition colDef)
- {
- this(rows, colIx, colDef, DEFAULT_CALL_DEPTH);
- }
-
public ScaleFactory(List<Object[]> rows, int colIx, ColumnDisplayDefinition colDef, int callDepth)
{
_indexedColumn = IndexedColumnFactory.create(rows, colIx, colDef);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|