[jboss-cvs] jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console ...
Max Rydahl Andersen
mandersen at jboss.com
Fri Oct 27 09:35:25 EDT 2006
User: mandersen
Date: 06/10/27 09:35:25
Modified: hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console
QueryEditor.java AbstractQueryEditor.java
Added: hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console
ComboContribution.java ConfigurationCombo.java
Log:
HBX-792 exposing setMaxResult in UI
Revision Changes Path
1.4 +3 -0 jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/QueryEditor.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: QueryEditor.java
===================================================================
RCS file: /cvsroot/jboss/jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/QueryEditor.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- QueryEditor.java 21 Sep 2006 22:58:36 -0000 1.3
+++ QueryEditor.java 27 Oct 2006 13:35:25 -0000 1.4
@@ -26,6 +26,7 @@
public interface QueryEditor {
+ String getConsoleConfigurationName();
ConsoleConfiguration getConsoleConfiguration();
boolean askUserForConfiguration(String name);
@@ -38,4 +39,6 @@
void setConsoleConfigurationName(String text);
+
+
}
1.2 +77 -98 jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/AbstractQueryEditor.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: AbstractQueryEditor.java
===================================================================
RCS file: /cvsroot/jboss/jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/AbstractQueryEditor.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- AbstractQueryEditor.java 21 Sep 2006 22:58:36 -0000 1.1
+++ AbstractQueryEditor.java 27 Oct 2006 13:35:25 -0000 1.2
@@ -1,32 +1,32 @@
package org.hibernate.eclipse.console;
+
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.action.ActionContributionItem;
import org.eclipse.jface.action.ControlContribution;
+import org.eclipse.jface.action.Separator;
import org.eclipse.jface.action.ToolBarManager;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.text.IDocument;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.RowData;
-import org.eclipse.swt.layout.RowLayout;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IShowEditorInput;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.editors.text.TextEditor;
import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.hibernate.SessionFactory;
import org.hibernate.console.ConsoleConfiguration;
import org.hibernate.console.KnownConfigurations;
-import org.hibernate.console.KnownConfigurationsListener;
import org.hibernate.console.QueryInputModel;
import org.hibernate.eclipse.console.actions.ExecuteQueryAction;
@@ -89,122 +89,101 @@
return doc.get();
}
- protected final class ConfigurationCombo extends ControlContribution {
- private KnownConfigurationsListener listener;
+ /**
+ * Dispose of resources held by this editor.
+ *
+ * @see IWorkbenchPart#dispose()
+ */
+ final public void dispose() {
+ super.dispose();
+ if ( tbm != null )
+ tbm.dispose();
+ }
- private SelectionAdapter selectionAdapter;
+ final protected void createToolbar(Composite parent) {
+ ToolBar bar = new ToolBar( parent, SWT.HORIZONTAL );
+ bar.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
- private Combo consoleSelection;
+ tbm = new ToolBarManager( bar );
+ ActionContributionItem item = new ActionContributionItem(
+ new ExecuteQueryAction( this ) );
- private QueryEditor editor;
+ tbm.add( item );
- protected ConfigurationCombo(String id, QueryEditor qe) {
- super( id );
- this.editor = qe;
- }
+ ControlContribution cc = new ConfigurationCombo( "hql-target", this );
+ tbm.add( cc );
- protected Control createControl(Composite parent) {
- Composite panel = new Composite( parent, SWT.NONE );
- panel.setLayout( new RowLayout() );
- consoleSelection = new Combo( panel, SWT.DROP_DOWN | SWT.READ_ONLY );
- consoleSelection.setLayoutData( new RowData(100, SWT.DEFAULT) );
+ tbm.add( new Separator() );
- populateCombo( consoleSelection );
+ cc = new ComboContribution("maxResults") {
- selectionAdapter = new SelectionAdapter() {
+ SelectionAdapter selectionAdapter = new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
- editor.setConsoleConfigurationName( consoleSelection
- .getText() );
- }
-
- };
+ Integer maxResults = null;
- consoleSelection.addSelectionListener( selectionAdapter );
-
- listener = new KnownConfigurationsListener() {
-
- public void sessionFactoryClosing(
- ConsoleConfiguration configuration,
- SessionFactory closingFactory) {
+ try {
+ maxResults = new Integer(getText());
}
-
- public void sessionFactoryBuilt(ConsoleConfiguration ccfg,
- SessionFactory builtFactory) {
+ catch (NumberFormatException e1) {
+ maxResults = null;
}
-
- public void configurationRemoved(ConsoleConfiguration root) {
- populateCombo( consoleSelection );
+ queryInputModel.setMaxResults( maxResults );
}
- public void configurationAdded(ConsoleConfiguration root) {
- populateCombo( consoleSelection );
- }
};
- KnownConfigurations.getInstance().addConsoleConfigurationListener(
- listener );
- return panel;
- }
+ protected Control createControl(Composite parent) {
- private void populateCombo(final Combo config) {
- ConsoleConfiguration[] configurations = KnownConfigurations
- .getInstance().getConfigurations();
- final String[] names = new String[configurations.length];
- for (int i = 0; i < configurations.length; i++) {
- names[i] = configurations[i].getName();
- }
- final String name = getConsoleConfigurationName()==null?"":getConsoleConfigurationName();
+ Control control = super.createControl( parent );
- config.getDisplay().syncExec( new Runnable() {
+ comboControl.addModifyListener( new ModifyListener() {
- public void run() {
- config.setItems( names );
- config.setText( name );
- }
+ public void modifyText(ModifyEvent e) {
+ Integer maxResults = null;
+ try {
+ maxResults = new Integer(getText());
+ }
+ catch (NumberFormatException e1) {
+ maxResults = null;
+ }
+ queryInputModel.setMaxResults( maxResults );
+ }
} );
-
+ return control;
}
-
- public void dispose() {
- if ( listener != null ) {
- KnownConfigurations.getInstance().removeConfigurationListener(
- listener );
- }
- if ( selectionAdapter != null ) {
- if ( !consoleSelection.isDisposed() ) {
- consoleSelection.removeSelectionListener( selectionAdapter );
+ protected int getComboWidth() {
+ return 30;
}
+ protected String getLabelText() {
+ return "Max results:";
}
+
+ protected boolean isReadOnly() {
+ return false;
}
+ protected SelectionListener getSelectionAdapter() {
+ return selectionAdapter;
}
- /**
- * Dispose of resources held by this editor.
- *
- * @see IWorkbenchPart#dispose()
- */
- final public void dispose() {
- super.dispose();
- if ( tbm != null )
- tbm.dispose();
+ void populateComboBox() {
+ comboControl.getDisplay().syncExec( new Runnable() {
+
+ public void run() {
+ String[] items = new String[] { "", "10", "20", "30", "50"};
+ comboControl.setItems( items );
}
- final protected void createToolbar(Composite parent) {
- ToolBar bar = new ToolBar( parent, SWT.HORIZONTAL );
- bar.setLayoutData( new GridData( GridData.FILL_HORIZONTAL ) );
+ } );
- tbm = new ToolBarManager( bar );
- ActionContributionItem item = new ActionContributionItem(
- new ExecuteQueryAction( this ) );
- tbm.add( item );
+ }
- ControlContribution cc = new ConfigurationCombo( "hql-target", this );
- tbm.add( cc );
+ };
+ tbm.add(cc);
tbm.update( true );
1.1 date: 2006/10/27 13:35:25; author: mandersen; state: Exp;jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/ComboContribution.java
Index: ComboContribution.java
===================================================================
package org.hibernate.eclipse.console;
import org.eclipse.jface.action.ControlContribution;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
public abstract class ComboContribution extends ControlContribution {
protected Combo comboControl;
protected ComboContribution(String id) {
super( id );
}
String getText() {
if(comboControl.isDisposed()) {
return "";
} else {
return comboControl.getText();
}
}
protected Control createControl(Composite parent) {
Composite panel = new Composite( parent, SWT.NONE );
panel.setLayout( new GridLayout(2,false) );
if(getLabelText()!=null) {
Label label = new Label(panel, SWT.None);
label.setText(getLabelText());
GridData gd = new GridData();
gd.horizontalSpan = 1;
gd.verticalAlignment = GridData.BEGINNING;
gd.horizontalAlignment = GridData.END;
}
comboControl = new Combo( panel, SWT.DROP_DOWN | (isReadOnly()?SWT.READ_ONLY:SWT.NONE) );
GridData gd = new GridData();
gd.grabExcessHorizontalSpace = true;
gd.widthHint = getComboWidth();
gd.verticalAlignment = GridData.CENTER;
gd.horizontalAlignment = GridData.END;
comboControl.setLayoutData( gd );
populateComboBox();
if(getSelectionAdapter()!=null) {
comboControl.addSelectionListener( getSelectionAdapter() );
}
return panel;
}
protected int getComboWidth() {
return 100;
}
protected boolean isReadOnly() {
return true;
}
String getLabelText() {
return null;
}
abstract protected SelectionListener getSelectionAdapter();
abstract void populateComboBox();
public void dispose() {
if ( getSelectionAdapter() != null ) {
if ( !comboControl.isDisposed() ) {
comboControl.removeSelectionListener( getSelectionAdapter() );
}
}
}
}
1.1 date: 2006/10/27 13:35:25; author: mandersen; state: Exp;jbosside/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/ConfigurationCombo.java
Index: ConfigurationCombo.java
===================================================================
/**
*
*/
package org.hibernate.eclipse.console;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.hibernate.SessionFactory;
import org.hibernate.console.ConsoleConfiguration;
import org.hibernate.console.KnownConfigurations;
import org.hibernate.console.KnownConfigurationsListener;
final class ConfigurationCombo extends ComboContribution {
private KnownConfigurationsListener listener;
private SelectionAdapter selectionAdapter;
private QueryEditor editor;
protected ConfigurationCombo(String id, QueryEditor qe) {
super( id );
this.editor = qe;
}
protected Control createControl(Composite parent) {
selectionAdapter = new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
editor.setConsoleConfigurationName( comboControl.getText() );
}
};
Control control = super.createControl( parent );
listener = new KnownConfigurationsListener() {
public void sessionFactoryClosing(
ConsoleConfiguration configuration,
SessionFactory closingFactory) {
}
public void sessionFactoryBuilt(ConsoleConfiguration ccfg,
SessionFactory builtFactory) {
}
public void configurationRemoved(ConsoleConfiguration root) {
populateComboBox();
}
public void configurationAdded(ConsoleConfiguration root) {
populateComboBox();
}
};
KnownConfigurations.getInstance().addConsoleConfigurationListener(
listener );
return control;
}
protected void populateComboBox() {
ConsoleConfiguration[] configurations = KnownConfigurations
.getInstance().getConfigurations();
final String[] names = new String[configurations.length];
for (int i = 0; i < configurations.length; i++) {
names[i] = configurations[i].getName();
}
final String name = editor.getConsoleConfigurationName()==null?"":editor.getConsoleConfigurationName();
comboControl.getDisplay().syncExec( new Runnable() {
public void run() {
comboControl.setItems( names );
comboControl.setText( name );
editor.setConsoleConfigurationName( comboControl.getText() );
}
} );
}
public void dispose() {
super.dispose();
if ( listener != null ) {
KnownConfigurations.getInstance().removeConfigurationListener(
listener );
}
}
protected SelectionListener getSelectionAdapter() {
return selectionAdapter;
}
}
More information about the jboss-cvs-commits
mailing list