[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-patch] Fixes for bugzilla 44451 and 44841 on 1.2 Stream
|
Hi All,
This is a low-risk patch and it will make the user experience with managed
build a bit better in the 1.2 release, so I have tested it against the 1.2
stream. This patch should be applied to the 1.2 branch, not the head. I
have run all regression tests on Windows and Linux.
Sean Evoy
Rational Software - IBM Software Group
Ottawa, Ontario, Canada
Index: .classpath
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/.classpath,v
retrieving revision 1.1
diff -u -r1.1 .classpath
--- .classpath 15 Sep 2003 20:44:43 -0000 1.1
+++ .classpath 13 Nov 2003 16:29:57 -0000
@@ -8,10 +8,10 @@
<classpathentry kind="src" path="/org.eclipse.cdt.core.qnx"/>
<classpathentry kind="src" path="/org.eclipse.cdt.core.solaris"/>
<classpathentry kind="src" path="/org.eclipse.cdt.core.win32"/>
- <classpathentry kind="src" path="/org.eclipse.cdt.ui"/>
<classpathentry kind="src" path="/org.eclipse.cdt.managedbuilder.core"/>
<classpathentry kind="src" path="/org.eclipse.core.boot"/>
<classpathentry kind="src" path="/org.eclipse.core.runtime"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="src" path="/org.eclipse.cdt.ui"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/ChangeLog,v
retrieving revision 1.8
diff -u -r1.8 ChangeLog
--- ChangeLog 1 Oct 2003 23:56:26 -0000 1.8
+++ ChangeLog 13 Nov 2003 16:29:57 -0000
@@ -1,3 +1,31 @@
+2003-11-13 Sean Evoy
+ Work to implement bugzilla 44841:
+ Added a scrollbar to the list control inside the custom list field editor.
+ Also added an Edit button to the field editor to make it easier for
+ keyboard-only accessibility.
+
+ Work for bugzilla 44451:
+ Changed the method that prompts user for information so that if the
+ user cancels with an empty input dialog, the method always returns an
+ empty string. The responsibility now rests with the caller to test the
+ return value for length > 0 to decide whether or not to add string to
+ the list.
+ * src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionListFieldEditor.java
+
+ Moved string constants from core UI plugin to build UI plugin. These values
+ are duplicated in the standadrd make UI plugin anyway, so the argument for
+ keeping them in a common plugin seems pretty weak. This removes another
+ dependency between the builder UI and common UI plugin. I did have to change
+ the string resource lookup method in a few of the UI implementation classes
+ that use the constants.
+ * src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties
+ * src/org/eclipse/cdt/managedbuilder/ui/properties/BrowseEntryDialog.java
+ * src/org/eclipse/cdt/managedbuilder/ui/properties/BuildToolSettingsPage.java
+ * src/org/eclipse/cdt/managedbuilder/ui/properties/ManageConfigDialog.java
+
+ Also propagated the fix for -werror to this stream
+ * plugin.xml
+
2003-10-01 Sean Evoy
Fix for bugs 43490 (trivial), 44020, and 43980.
A massive change has occurred in the plugin file. I added new C tools that apply
Index: plugin.xml
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/plugin.xml,v
retrieving revision 1.10
diff -u -r1.10 plugin.xml
--- plugin.xml 1 Oct 2003 23:56:26 -0000 1.10
+++ plugin.xml 13 Nov 2003 16:29:59 -0000
@@ -302,7 +302,6 @@
</enumeratedOptionValue>
</option>
<option
- defaultValue="-gstabs"
name="Other debugging flags"
category="cygwin.gnu.c.compiler.category.debug"
valueType="string"
@@ -371,9 +370,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="cygwin.c.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="cygwin.gnu.c.compiler.warnings.toerrors">
</option>
@@ -632,7 +631,6 @@
</enumeratedOptionValue>
</option>
<option
- defaultValue="-gstabs"
name="Other debugging flags"
category="cygwin.gnu.compiler.category.debug"
valueType="string"
@@ -701,9 +699,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="cygwin.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="cygwin.gnu.compiler.warnings.toerrors">
</option>
@@ -1670,9 +1668,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="linux.c.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="linux.gnu.c.compiler.warnings.toerrors">
</option>
@@ -1969,9 +1967,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="linux.gnu.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="linux.gnu.compiler.warnings.toerrors">
</option>
@@ -2846,9 +2844,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="solaris.c.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="solaris.gnu.c.compiler.warnings.toerrors">
</option>
@@ -3130,9 +3128,9 @@
</option>
<option
defaultValue="false"
- name="Warnings as errors (-werror)"
+ name="Warnings as errors (-Werror)"
category="solaris.gnu.compiler.category.warnings"
- command="-werror"
+ command="-Werror"
valueType="boolean"
id="solaris.gnu.compiler.warnings.toerrors">
</option>
Index: src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties,v
retrieving revision 1.4
diff -u -r1.4 PluginResources.properties
--- src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties 26 Sep 2003 19:54:33 -0000 1.4
+++ src/org/eclipse/cdt/managedbuilder/internal/ui/PluginResources.properties 13 Nov 2003 16:30:00 -0000
@@ -64,4 +64,16 @@
ManageConfig.label.restore=Restore
ManageConfig.label.configs.current=Current:
ManageConfig.label.configs.deleted=Deleted:
-ManageConfig.label.new.config.dialog=Create
\ No newline at end of file
+ManageConfig.label.new.config.dialog=Create
+
+# ----------- Build Property Common -----------
+BuildPropertyCommon.label.title=Enter Value
+BuildPropertyCommon.label.new=New...
+BuildPropertyCommon.label.remove=Remove
+BuildPropertyCommon.label.up=Move Up
+BuildPropertyCommon.label.down=Move Down
+BuildPropertyCommon.label.editVar=Edit...
+BuildPropertyCommon.label.addVar=Add
+BuildPropertyCommon.label.message=Value:
+BuildPropertyCommon.label.browse=Browse...
+BuildPropertyCommon.label.configs=Defined configurations:
Index: src/org/eclipse/cdt/managedbuilder/ui/properties/BrowseEntryDialog.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BrowseEntryDialog.java,v
retrieving revision 1.1
diff -u -r1.1 BrowseEntryDialog.java
--- src/org/eclipse/cdt/managedbuilder/ui/properties/BrowseEntryDialog.java 15 Sep 2003 20:44:42 -0000 1.1
+++ src/org/eclipse/cdt/managedbuilder/ui/properties/BrowseEntryDialog.java 13 Nov 2003 16:30:00 -0000
@@ -11,7 +11,7 @@
* IBM Rational Software - Initial API and implementation
* **********************************************************************/
-import org.eclipse.cdt.ui.CUIPlugin;
+import org.eclipse.cdt.managedbuilder.internal.ui.ManagedBuilderUIPlugin;
import org.eclipse.cdt.utils.ui.controls.ControlFactory;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogConstants;
@@ -131,7 +131,7 @@
});
// Instantiate the browse button
- btnBrowse = ControlFactory.createPushButton(composite, CUIPlugin.getResourceString(BROWSE));
+ btnBrowse = ControlFactory.createPushButton(composite, ManagedBuilderUIPlugin.getResourceString(BROWSE));
setButtonLayoutData(btnBrowse);
btnBrowse.addSelectionListener(new SelectionAdapter () {
public void widgetSelected(SelectionEvent e) {
Index: src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionListFieldEditor.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionListFieldEditor.java,v
retrieving revision 1.3
diff -u -r1.3 BuildOptionListFieldEditor.java
--- src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionListFieldEditor.java 22 Sep 2003 02:31:53 -0000 1.3
+++ src/org/eclipse/cdt/managedbuilder/ui/properties/BuildOptionListFieldEditor.java 13 Nov 2003 16:30:00 -0000
@@ -11,7 +11,7 @@
* IBM Rational Software - Initial API and implementation
* **********************************************************************/
-import org.eclipse.cdt.ui.CUIPlugin;
+import org.eclipse.cdt.managedbuilder.internal.ui.ManagedBuilderUIPlugin;
import org.eclipse.cdt.utils.ui.controls.ControlFactory;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.InputDialog;
@@ -41,6 +41,7 @@
private static final String REMOVE = "BuildPropertyCommon.label.remove"; //$NON-NLS-1$
private static final String UP = "BuildPropertyCommon.label.up"; //$NON-NLS-1$
private static final String DOWN = "BuildPropertyCommon.label.down"; //$NON-NLS-1$
+ private static final String EDIT = "BuildPropertyCommon.label.editVar"; //$NON-NLS-1$
// UI constants
private static final int VERTICAL_DIALOG_UNITS_PER_CHAR = 8;
@@ -62,6 +63,8 @@
// The button for adding the contents of the text field to the list
private Button addButton;
+ // The button for editting the contents of a list item
+ private Button editButton;
// The button for removing the currently-selected list item.
private Button removeButton;
// The button for swapping the currently selected item up
@@ -88,7 +91,7 @@
String input = getNewInputObject();
// Add it to the list
- if (input != null) {
+ if (input != null && input.length() > 0) {
int index = list.getSelectionIndex();
if (index >= 0) {
list.add(input, index + 1);
@@ -115,10 +118,11 @@
* @param container the box for the buttons
*/
private void createButtons(Composite container) {
- addButton = createPushButton(container, CUIPlugin.getResourceString(NEW));
- removeButton = createPushButton(container, CUIPlugin.getResourceString(REMOVE));
- upButton = createPushButton(container, CUIPlugin.getResourceString(UP));
- downButton = createPushButton(container, CUIPlugin.getResourceString(DOWN));
+ addButton = createPushButton(container, ManagedBuilderUIPlugin.getResourceString(NEW));
+ editButton = createPushButton(container, ManagedBuilderUIPlugin.getResourceString(EDIT));
+ removeButton = createPushButton(container, ManagedBuilderUIPlugin.getResourceString(REMOVE));
+ upButton = createPushButton(container, ManagedBuilderUIPlugin.getResourceString(UP));
+ downButton = createPushButton(container, ManagedBuilderUIPlugin.getResourceString(DOWN));
}
/**
@@ -166,7 +170,7 @@
controlGroup.setLayoutData(groupData);
// Make the list
- list = new List(controlGroup, SWT.BORDER);
+ list = new List(controlGroup, SWT.SINGLE|SWT.H_SCROLL|SWT.V_SCROLL|SWT.BORDER);
// Create a grid data that takes up the extra space in the dialog and spans one column.
GridData listData = new GridData(GridData.FILL_HORIZONTAL);
@@ -209,6 +213,7 @@
buttonGroup.addDisposeListener(new DisposeListener() {
public void widgetDisposed(DisposeEvent event) {
addButton = null;
+ editButton = null;
removeButton = null;
upButton = null;
downButton = null;
@@ -217,7 +222,6 @@
// Create the buttons
createButtons(buttonGroup);
- selectionChanged();
}
/* (non-Javadoc)
@@ -231,19 +235,17 @@
Widget widget = event.widget;
if (widget == addButton) {
addPressed();
- } else
- if (widget == removeButton) {
- removePressed();
- } else
- if (widget == upButton) {
- upPressed();
- } else
- if (widget == downButton) {
- downPressed();
- } else
- if (widget == list) {
- selectionChanged();
- }
+ } else if (widget == editButton) {
+ editPressed();
+ } else if (widget == removeButton) {
+ removePressed();
+ } else if (widget == upButton) {
+ upPressed();
+ } else if (widget == downButton) {
+ downPressed();
+ } else if (widget == list) {
+ selectionChanged();
+ }
}
};
}
@@ -258,7 +260,14 @@
}
/* (non-Javadoc)
- *
+ * Event handler for the edit button
+ */
+ protected void editPressed() {
+ editSelection();
+ }
+
+ /* (non-Javadoc)
+ * Pops up a dialog with the selection highlighted and ready to edit
*/
protected void editSelection() {
// Edit the selection index
@@ -266,7 +275,7 @@
if (index != -1) {
String selItem = list.getItem(index);
if (selItem != null) {
- InputDialog dialog = new InputDialog(getShell(), CUIPlugin.getResourceString(TITLE), fieldName, selItem, null);
+ InputDialog dialog = new InputDialog(getShell(), ManagedBuilderUIPlugin.getResourceString(TITLE), fieldName, selItem, null);
String newItem = null;
if (dialog.open() == InputDialog.OK) {
newItem = dialog.getValue();
@@ -290,6 +299,7 @@
list.add(array[i]);
}
list.setSelection(0);
+ selectionChanged();
}
}
@@ -304,6 +314,8 @@
for (int i = 0; i < array.length; i++){
list.add(array[i]);
}
+ list.setSelection(0);
+ selectionChanged();
}
}
@@ -318,12 +330,12 @@
protected String getNewInputObject() {
// Create a dialog to prompt for a new symbol or path
- InputDialog dialog = new InputDialog(getShell(), CUIPlugin.getResourceString(TITLE), fieldName, new String(), null);
- String input = null;
+ InputDialog dialog = new InputDialog(getShell(), ManagedBuilderUIPlugin.getResourceString(TITLE), fieldName, new String(), null);
+ String input = new String();
if (dialog.open() == InputDialog.OK) {
input = dialog.getValue();
}
- return input.length() == 0 ? null : input;
+ return input;
}
/* (non-Javadoc)
@@ -375,7 +387,7 @@
int index = list.getSelectionIndex();
if (index >= 0) {
list.remove(index);
- list.setSelection(index - 1);
+ list.setSelection(index - 1 > 0 ? index - 1 : 0);
selectionChanged();
}
}
@@ -388,6 +400,8 @@
int index = list.getSelectionIndex();
int size = list.getItemCount();
+ // Enable the edit button if there is at least one item in the list
+ editButton.setEnabled(size > 0);
// Enable the remove button if there is at least one item in the list
removeButton.setEnabled(size > 0);
// Enable the up button IFF there is more than 1 item and selection index is not first item
Index: src/org/eclipse/cdt/managedbuilder/ui/properties/ManageConfigDialog.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.managedbuilder.ui/src/org/eclipse/cdt/managedbuilder/ui/properties/ManageConfigDialog.java,v
retrieving revision 1.2
diff -u -r1.2 ManageConfigDialog.java
--- src/org/eclipse/cdt/managedbuilder/ui/properties/ManageConfigDialog.java 24 Sep 2003 14:20:49 -0000 1.2
+++ src/org/eclipse/cdt/managedbuilder/ui/properties/ManageConfigDialog.java 13 Nov 2003 16:30:00 -0000
@@ -19,7 +19,6 @@
import org.eclipse.cdt.managedbuilder.core.ITarget;
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
import org.eclipse.cdt.managedbuilder.internal.ui.ManagedBuilderUIPlugin;
-import org.eclipse.cdt.ui.CUIPlugin;
import org.eclipse.cdt.utils.ui.controls.ControlFactory;
import org.eclipse.core.resources.IProject;
import org.eclipse.jface.dialogs.Dialog;
@@ -218,7 +217,7 @@
Composite buttonBar = ControlFactory.createComposite(configListGroup, 1);
buttonBar.setLayoutData(new GridData());
- newBtn = ControlFactory.createPushButton(buttonBar, CUIPlugin.getResourceString(NEW));
+ newBtn = ControlFactory.createPushButton(buttonBar, ManagedBuilderUIPlugin.getResourceString(NEW));
setButtonLayoutData(newBtn);
newBtn.addSelectionListener(new SelectionAdapter () {
public void widgetSelected(SelectionEvent e) {
@@ -230,7 +229,7 @@
newBtn = null;
}
});
- removeBtn = ControlFactory.createPushButton(buttonBar, CUIPlugin.getResourceString(REMOVE));
+ removeBtn = ControlFactory.createPushButton(buttonBar, ManagedBuilderUIPlugin.getResourceString(REMOVE));
setButtonLayoutData(removeBtn);
removeBtn.addSelectionListener(new SelectionAdapter () {
public void widgetSelected(SelectionEvent e) {
Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/ChangeLog,v
retrieving revision 1.203.2.6
diff -u -r1.203.2.6 ChangeLog
--- ChangeLog 11 Nov 2003 18:28:20 -0000 1.203.2.6
+++ ChangeLog 13 Nov 2003 16:31:14 -0000
@@ -1,3 +1,12 @@
+2003-11-13 Sean Evoy
+ There is a duplicate set of string resources in the standard and managed make
+ UI plugins, so there is little need to keep these resources in the common UI
+ plugin if the managed builder is the only one using them. Moving them also
+ reduces the dependencies between the builder UI and the core UI packages. The
+ managed builder UI is the only client of these strings, so there should be no
+ impact.
+ * src/org/eclipse/cdt/internal/ui/CPluginResources.properties
+
2003-11-10 Bogdan Gheorghe
fix bug 45688: must highlight keyword to use "Open Declarations" or "Add Include"
Index: src/org/eclipse/cdt/internal/ui/CPluginResources.properties
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/CPluginResources.properties,v
retrieving revision 1.26
diff -u -r1.26 CPluginResources.properties
--- src/org/eclipse/cdt/internal/ui/CPluginResources.properties 1 Oct 2003 20:27:12 -0000 1.26
+++ src/org/eclipse/cdt/internal/ui/CPluginResources.properties 13 Nov 2003 16:31:15 -0000
@@ -331,14 +331,3 @@
# ------- Drag and Drop Message Text -----------
CViewDragNDrop.txt = already exists. Would you like to overwrite it?
-# ----------- Build Property Common -----------
-BuildPropertyCommon.label.title=Enter Value
-BuildPropertyCommon.label.new=New...
-BuildPropertyCommon.label.remove=Remove
-BuildPropertyCommon.label.up=Move Up
-BuildPropertyCommon.label.down=Move Down
-BuildPropertyCommon.label.editVar=Edit
-BuildPropertyCommon.label.addVar=Add
-BuildPropertyCommon.label.message=Value:
-BuildPropertyCommon.label.browse=Browse...
-BuildPropertyCommon.label.configs=Defined configurations: