Revision: 5894
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=5894&view=rev
Author: gerdwagner
Date: 2010-09-19 09:15:14 +0000 (Sun, 19 Sep 2010)
Log Message:
-----------
Fixed problem with sorting after dragging columns
Modified Paths:
--------------
trunk/sql12/doc/src/main/resources/changes.txt
trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/datasetviewer/TableState.java
trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/ButtonTableHeader.java
trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/SortingListener.java
Modified: trunk/sql12/doc/src/main/resources/changes.txt
===================================================================
--- trunk/sql12/doc/src/main/resources/changes.txt 2010-09-19 01:00:17 UTC (rev 5893)
+++ trunk/sql12/doc/src/main/resources/changes.txt 2010-09-19 09:15:14 UTC (rev 5894)
@@ -23,6 +23,8 @@
Bug-fixes:
+Fixed problem with sorting after dragging columns
+
Button sizes differed in Alias and Driver docking frame
Hibernate plugin: Icon buttons for connecting and opening configuration could be very small.
Modified: trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/datasetviewer/TableState.java
===================================================================
--- trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/datasetviewer/TableState.java 2010-09-19 01:00:17 UTC (rev 5893)
+++ trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/datasetviewer/TableState.java 2010-09-19 09:15:14 UTC (rev 5894)
@@ -60,15 +60,6 @@
private void doApply(JTable table)
{
- if (_applySorting && table.getModel() instanceof SortableTableModel)
- {
- if(-1 != _sortedColumn)
- {
- ((SortableTableModel)table.getModel()).sortByColumn(_sortedColumn, _sortedAscending);
- }
- }
-
-
for (int i = 0; i < table.getColumnModel().getColumnCount(); i++)
{
Integer width = _columnWidthsByModelIndex.get(table.getColumnModel().getColumn(i).getModelIndex());
@@ -83,13 +74,19 @@
moveTo(table.getColumnModel(), modelIndex, _columnIndexByModelIndex.get(modelIndex));
}
-
+ if (_applySorting && table.getModel() instanceof SortableTableModel)
+ {
+ if(-1 != _sortedColumn)
+ {
+ ((SortableTableModel)table.getModel()).sortByColumn(_sortedColumn, _sortedAscending);
+ }
+ }
+
if(-1 != _selectedRow)
{
table.getSelectionModel().setSelectionInterval(_selectedRow, _selectedRow);
}
-
table.scrollRectToVisible(_visibleRect);
}
Modified: trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/ButtonTableHeader.java
===================================================================
--- trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/ButtonTableHeader.java 2010-09-19 01:00:17 UTC (rev 5893)
+++ trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/ButtonTableHeader.java 2010-09-19 09:15:14 UTC (rev 5894)
@@ -117,18 +117,19 @@
_sortingListener = new SortingListener()
{
@Override
- public void sortingDone(int column, boolean ascending)
+ public void sortingDone(int modelColumnIx, boolean ascending)
{
- onSortingDone(column, ascending);
+ onSortingDone(modelColumnIx, ascending);
}
};
}
- private void onSortingDone(int column, boolean ascending)
+ private void onSortingDone(int modelColumnIx, boolean ascending)
{
- int modColumn = getTable().convertColumnIndexToModel(column);
+ int viewColumnIndex = getViewColumnIndex(modelColumnIx);
+
if (ascending)
{
_currentSortedColumnIcon = s_ascIcon;
@@ -137,12 +138,26 @@
{
_currentSortedColumnIcon = s_descIcon;
}
- _currentlySortedColumnIdx = modColumn;
- _pressedColumnIdx = modColumn;
+ _currentlySortedColumnIdx = viewColumnIndex;
+ _pressedColumnIdx = viewColumnIndex;
repaint();
}
+ private int getViewColumnIndex(int modelColumnIx)
+ {
+ int viewColumnIndex = -1;
+
+ for (int i = 0; i < getTable().getColumnModel().getColumnCount(); i++)
+ {
+ if(modelColumnIx == getTable().getColumnModel().getColumn(i).getModelIndex())
+ {
+ viewColumnIndex = i;
+ }
+ }
+ return viewColumnIndex;
+ }
+
public void setTable(JTable table)
{
JTable oldTable = getTable();
Modified: trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/SortingListener.java
===================================================================
--- trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/SortingListener.java 2010-09-19 01:00:17 UTC (rev 5893)
+++ trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/gui/SortingListener.java 2010-09-19 09:15:14 UTC (rev 5894)
@@ -2,5 +2,5 @@
public interface SortingListener
{
- void sortingDone(int column, boolean ascending);
+ void sortingDone(int modelColumnIx, boolean ascending);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|