X-Git-Url: http://git.phpeclipse.com diff --git a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/wizards/SortFilterPage.java b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/wizards/SortFilterPage.java index c23d03e..4447e10 100644 --- a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/wizards/SortFilterPage.java +++ b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/wizards/SortFilterPage.java @@ -1,9 +1,11 @@ package com.quantum.wizards; +import java.sql.SQLException; + import com.quantum.sql.FilterSort; -import com.quantum.sql.TableRow; -import com.quantum.view.tableview.TableAdapter; -import com.quantum.view.tableview.TableView; +import com.quantum.sql.SQLResultSetResults; +import com.quantum.ui.dialog.ExceptionDisplayDialog; +import com.quantum.util.connection.ConnectionUtil; import org.eclipse.jface.wizard.WizardPage; import org.eclipse.swt.SWT; @@ -20,25 +22,27 @@ import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text; public class SortFilterPage extends WizardPage implements SQLPage { - TableRow row; - TableAdapter adapter; Button[] filter; Combo[] operator; Text[] filterValues; Button[] stringFlags; Button[] sort; Combo[] ascDesc; + private SQLResultSetResults.Row row; + + private ConnectionUtil connectionUtil = new ConnectionUtil(); String columnNames[]; Label query; FilterSort filterSort = new FilterSort(); + private SQLResultSetResults results; public SortFilterPage(String pageName) { super(pageName); } - public void init(TableRow row, TableAdapter adapter) { + public void init(SQLResultSetResults results, SQLResultSetResults.Row row) { + this.results = results; this.row = row; - this.adapter = adapter; } public void createControl(Composite parent) { @@ -50,30 +54,16 @@ public class SortFilterPage extends WizardPage implements SQLPage { int layoutColumns = 6; layout.numColumns = layoutColumns; - if (row == null) { - System.out.println("Row is null"); //$NON-NLS-1$ - } - if (row.getColumnNames() == null) { - System.out.println("Columns are null"); //$NON-NLS-1$ - } - if (row.getTableData() == null) { - System.out.println("Data is null"); //$NON-NLS-1$ - } + columnNames = this.results.getColumnNames(); - columnNames = row.getColumnNames(); - String[] data = row.getTableData(); - for (int i = 0; i < row.getColumnCount(); i++) { - System.out.println("data = " + i + "=" + data[i]); //$NON-NLS-1$ //$NON-NLS-2$ - System.out.println("column = " + i + "=" + columnNames[i]); //$NON-NLS-1$ //$NON-NLS-2$ - } - int size = row.getColumnCount(); + int size = this.results.getColumnCount(); filter = new Button[size]; operator = new Combo[size]; filterValues = new Text[size]; stringFlags = new Button[size]; sort = new Button[size]; ascDesc = new Combo[size]; - for (int i = 0; i < row.getColumnCount(); i++) { + for (int i = 0; i < size; i++) { filter[i] = new Button(container, SWT.CHECK); filter[i].setText(columnNames[i]); filter[i].addSelectionListener(new SelectionListener() { @@ -98,7 +88,8 @@ public class SortFilterPage extends WizardPage implements SQLPage { }); filterValues[i] = new Text(container, SWT.BORDER); - filterValues[i].setText(data[i]); + Object data = this.row == null ? null : this.row.get(i+1); + filterValues[i].setText(data == null ? "" : data.toString()); filterValues[i].addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { updateQuery(); @@ -173,8 +164,14 @@ public class SortFilterPage extends WizardPage implements SQLPage { } public boolean performFinish() { - adapter.setFilterSort(filterSort); - TableView.getInstance().refreshCurrent(); - return true; + this.results.setFilterSort(filterSort); + try { + this.results.refresh(this.connectionUtil.connect( + this.results.getBookmark(), getShell())); + return true; + } catch (SQLException e) { + ExceptionDisplayDialog.openError(getShell(), null, null, e); + return false; + } } }