Bug 397584 - Select imports dialog is ugly
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SelectImportsDialog.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SelectImportsDialog.java
index 135c17a..80522e9 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SelectImportsDialog.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SelectImportsDialog.java
@@ -31,21 +31,17 @@
import org.eclipse.jdt.ui.JavaUI;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.viewers.ColumnLayoutData;
-import org.eclipse.jface.viewers.ColumnWeightData;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableLayout;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
@@ -53,7 +49,6 @@
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.ElementListSelectionDialog;
import org.eclipse.ui.dialogs.SelectionDialog;
@@ -138,19 +133,11 @@
private void createImportButtons(Composite container) {
PlatformUI.getWorkbench().getHelpSystem().setHelp(container, IJavaDebugHelpContextIds.SNIPPET_IMPORTS_DIALOG);
-
- // button container
- Composite buttonContainer = new Composite(container, SWT.NONE);
- GridData gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL);
- buttonContainer.setLayoutData(gd);
- GridLayout buttonLayout = new GridLayout();
- buttonLayout.numColumns = 1;
- buttonLayout.marginHeight = 0;
- buttonLayout.marginWidth = 0;
- buttonContainer.setLayout(buttonLayout);
-
+ Composite bcomp = SWTFactory.createComposite(container, container.getFont(), 1, 1, GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_FILL, 0, 0);
+ GridLayout gl = (GridLayout) bcomp.getLayout();
+ gl.verticalSpacing = 0;
// Add type button
- fAddTypeButton = SWTFactory.createPushButton(buttonContainer,
+ fAddTypeButton = SWTFactory.createPushButton(bcomp,
SnippetMessages.getString("SelectImportsDialog.Add_&Type_1"), //$NON-NLS-1$
SnippetMessages.getString("SelectImportsDialog.Choose_a_Type_to_Add_as_an_Import_2"), //$NON-NLS-1$
null);
@@ -163,7 +150,7 @@
});
// Add package button
- fAddPackageButton = SWTFactory.createPushButton(buttonContainer,
+ fAddPackageButton = SWTFactory.createPushButton(bcomp,
SnippetMessages.getString("SelectImportsDialog.Add_&Package_3"), //$NON-NLS-1$
SnippetMessages.getString("SelectImportsDialog.Choose_a_Package_to_Add_as_an_Import_4"), //$NON-NLS-1$
null);
@@ -176,7 +163,7 @@
});
// Remove button
- fRemoveImportsButton = SWTFactory.createPushButton(buttonContainer,
+ fRemoveImportsButton = SWTFactory.createPushButton(bcomp,
SnippetMessages.getString("SelectImportsDialog.&Remove_5"), //$NON-NLS-1$
SnippetMessages.getString("SelectImportsDialog.Remove_All_Selected_Imports_6"), //$NON-NLS-1$
null);
@@ -188,7 +175,6 @@
}
});
fRemoveImportsButton.setEnabled(false);
-
}
private void removeImports() {
@@ -266,34 +252,18 @@
*/
@Override
protected Control createDialogArea(Composite parent) {
- Font font = parent.getFont();
-
- Composite dialogComp = (Composite)super.createDialogArea(parent);
- // top level container
- Composite outer = new Composite(dialogComp, SWT.NONE);
- GridLayout topLayout = new GridLayout();
- topLayout.numColumns = 2;
- outer.setLayout(topLayout);
- outer.setFont(font);
-
setTitle(NLS.bind(SnippetMessages.getString("SelectImportsDialog.Manage_the_Java_Snippet_Editor_Imports_for___{0}__1"), new String[]{fEditor.getEditorInput().getName()})); //$NON-NLS-1$
-
- GridData gd = new GridData();
- gd.verticalAlignment = GridData.FILL;
- gd.horizontalAlignment = GridData.FILL;
- outer.setLayoutData(gd);
-
- // filter table
+ setMessage(NLS.bind(SnippetMessages.getString("SelectImportsDialog.add_remove_imports"), new String[]{fEditor.getEditorInput().getName()})); //$NON-NLS-1$
+ Composite outer = SWTFactory.createComposite(parent, 2, 1, GridData.FILL_BOTH);
+ GridLayout gl = (GridLayout) outer.getLayout();
+ gl.marginLeft = 7;
+ gl.marginTop = 0;
+ gl.marginBottom = 0;
+ SWTFactory.createLabel(outer, SnippetMessages.getString("SelectImportsDialog.imports_heading"), 2); //$NON-NLS-1$
fImportsTable= new Table(outer, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
-
- TableLayout tableLayout= new TableLayout();
- ColumnLayoutData[] columnLayoutData= new ColumnLayoutData[1];
- columnLayoutData[0]= new ColumnWeightData(100);
- tableLayout.addColumnData(columnLayoutData[0]);
- fImportsTable.setLayout(tableLayout);
- fImportsTable.setFont(font);
- new TableColumn(fImportsTable, SWT.NONE);
-
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+ gd.heightHint = 150;
+ fImportsTable.setLayoutData(gd);
fImportsViewer = new TableViewer(fImportsTable);
fImportsViewer.setLabelProvider(new FilterLabelProvider());
fImportsViewer.setComparator(new FilterViewerComparator());
@@ -301,10 +271,6 @@
fImportsViewer.setContentProvider(fImportContentProvider);
// input just needs to be non-null
fImportsViewer.setInput(this);
- gd = new GridData(GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL);
- gd.widthHint = 100;
- gd.heightHint= 300;
- fImportsViewer.getTable().setLayoutData(gd);
fImportsViewer.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
ISelection selection = event.getSelection();
@@ -315,10 +281,9 @@
}
}
});
-
createImportButtons(outer);
applyDialogFont(outer);
- return outer;
+ return parent;
}
/* (non-Javadoc)
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SnippetMessages.properties b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SnippetMessages.properties
index 053eabd..208cc42 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SnippetMessages.properties
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/snippeteditor/SnippetMessages.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2000, 2009 IBM Corporation and others.
+# Copyright (c) 2000, 2012 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
@@ -31,11 +31,13 @@
SelectImportsDialog.Add_&Package_3=Add &Packages...
SelectImportsDialog.Add_&Type_1=Add &Type...
SelectImportsDialog.Add_package_as_import_7=Add Packages as Imports
+SelectImportsDialog.add_remove_imports=Add or remove package imports for {0}
SelectImportsDialog.Add_Type_as_Import_12=Add Type as Import
SelectImportsDialog.Choose_a_Package_to_Add_as_an_Import_4=Choose the Packages to Add as Imports
SelectImportsDialog.Choose_a_Type_to_Add_as_an_Import_2=Choose a Type to Add as an Import
SelectImportsDialog.Could_not_open_class_selection_dialog_13=Could not open class selection dialog
SelectImportsDialog.Could_not_open_package_selection_dialog_8=Could not open package selection dialog
+SelectImportsDialog.imports_heading=&Imports:
SelectImportsDialog.Java_Snippet_Imports_18=Java Snippet Imports
SelectImportsDialog.Manage_the_Java_Snippet_Editor_Imports_for___{0}__1=Manage the Java Snippet Editor Imports for \"{0}\"
SelectImportsDialog.Remove_All_Selected_Imports_6=Remove All Selected Imports