Revision: 7052
http://pmd.svn.sourceforge.net/pmd/?rev=7052&view=rev
Author: hooperbloob
Date: 2010-01-03 18:07:05 +0000 (Sun, 03 Jan 2010)
Log Message:
-----------
I18L updates, UI tweaks, additional displayable rule columns available via popup menu
Modified Paths:
--------------
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/messages.properties
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/nls/StringKeys.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/PMDPreferencePage.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/RuleSelection.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/TextColumnDescriptor.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/AbstractRealNumberEditor.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/FloatEditorFactory.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiEnumerationEditorFactory.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiIntegerEditorFactory.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/DescriptionPanelManager.java
trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/XPathPanelManager.java
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/messages.properties
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/messages.properties 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/messages.properties 2010-01-03 18:07:05 UTC (rev 7052)
@@ -55,11 +55,13 @@
preference.ruleset.column.ruleset_name = Rule set name
preference.ruleset.column.rule_name = Rule name
preference.ruleset.column.rule_type = Type
+preference.ruleset.column.example_count = Examples
+preference.ruleset.column.example_count.tooltip = Number of examples
preference.ruleset.column.rule_type.tooltip = Rule type:\n X = XPath\n D = dataflow\n T = type resolving
-preference.ruleset.column.min_ver = Min ver
-preference.ruleset.column.min_ver.tooltip = Minimum applicable language version
+preference.ruleset.column.minimum_version = Min ver
+preference.ruleset.column.minimum_version.tooltip = Minimum applicable version of the target language
preference.ruleset.column.filters = Filters
-preference.ruleset.column.filters.tooltip = Filters by color code
+preference.ruleset.column.filters.tooltip = Filters by derived color code
preference.ruleset.column.since = Since
preference.ruleset.column.since.tooltip = Incorporation within PMD
preference.ruleset.column.priority = Priority
@@ -70,6 +72,7 @@
preference.ruleset.column.properties.tooltip = Current rule properties in short form
preference.ruleset.column.value = Value
preference.ruleset.column.url = URL
+preference.ruleset.column.url.tooltip = Address providing additional background information
preference.ruleset.column.exclude_pattern = Exclude Pattern
preference.ruleset.column.include_pattern = Include Pattern
preference.ruleset.grouping.none = <no grouping>
@@ -115,6 +118,7 @@
preference.ruleedit.label.external_info_url = External Info URL :
preference.ruleedit.label.examples = Examples :
preference.ruleedit.label.xpath = XPath :
+preference.ruleedit.label.xpath.version = XPath version :
preference.ruleedit.button.rule_reference = Rule Reference
preference.ruleedit.button.xpath_rule = XPath rule
preference.ruleedit.button.uses_type_resolution = Uses Type Resolution
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/nls/StringKeys.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/nls/StringKeys.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/nls/StringKeys.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -90,6 +90,7 @@
public static final String MSGKEY_PREF_RULESET_COLUMN_RULESET_NAME = "preference.ruleset.column.ruleset_name";
public static final String MSGKEY_PREF_RULESET_COLUMN_RULE_NAME = "preference.ruleset.column.rule_name";
public static final String MSGKEY_PREF_RULESET_COLUMN_RULE_TYPE = "preference.ruleset.column.rule_type";
+ public static final String MSGKEY_PREF_RULESET_COLUMN_EXAMPLE_CNT = "preference.ruleset.column.example_count";
public static final String MSGKEY_PREF_RULESET_COLUMN_SINCE = "preference.ruleset.column.since";
public static final String MSGKEY_PREF_RULESET_COLUMN_FILTERS = "preference.ruleset.column.filters";
public static final String MSGKEY_PREF_RULESET_COLUMN_MIN_VER = "preference.ruleset.column.minimum_version";
@@ -146,12 +147,13 @@
public static final String MSGKEY_PREF_RULEEDIT_LABEL_EXTERNAL_INFO_URL = "preference.ruleedit.label.external_info_url";
public static final String MSGKEY_PREF_RULEEDIT_LABEL_EXAMPLES = "preference.ruleedit.label.examples";
public static final String MSGKEY_PREF_RULEEDIT_LABEL_XPATH = "preference.ruleedit.label.xpath";
+ public static final String MSGKEY_PREF_RULEEDIT_LABEL_XPATH_VERSION = "preference.ruleedit.label.xpath.version";
public static final String MSGKEY_PREF_RULEEDIT_BUTTON_RULE_REFERENCE = "preference.ruleedit.button.rule_reference";
public static final String MSGKEY_PREF_RULEEDIT_BUTTON_XPATH_RULE = "preference.ruleedit.button.xpath_rule";
public static final String MSGKEY_PREF_RULEEDIT_BUTTON_USES_TYPE_RESOLUTION = "preference.ruleedit.button.uses_type_resolution";
public static final String MSGKEY_PREF_RULEEDIT_BUTTON_USES_DFA = "preference.ruleedit.button.uses_dfa";
public static final String MSGKEY_PREF_RULEEDIT_BUTTON_OPEN_EXTERNAL_INFO_URL = "preference.ruleedit.button.open_external_info_url";
-
+
public static final String MSGKEY_PREF_CPD_GROUP_GENERAL = "preference.cpd.group.general";
public static final String MSGKEY_PREF_CPD_TITLE = "preference.cpd.title";
public static final String MSGKEY_PREF_CPD_TILESIZE = "preference.cpd.tilesize";
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/PMDPreferencePage.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/PMDPreferencePage.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/PMDPreferencePage.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -2,7 +2,6 @@
import java.io.File;
import java.io.FileOutputStream;
-import java.io.IOException;
import java.io.OutputStream;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -20,7 +19,6 @@
import net.sourceforge.pmd.RuleSet;
import net.sourceforge.pmd.eclipse.plugin.PMDPlugin;
import net.sourceforge.pmd.eclipse.runtime.writer.IRuleSetWriter;
-import net.sourceforge.pmd.eclipse.runtime.writer.WriterException;
import net.sourceforge.pmd.eclipse.ui.PMDUiConstants;
import net.sourceforge.pmd.eclipse.ui.nls.StringKeys;
import net.sourceforge.pmd.eclipse.ui.preferences.RuleDialog;
@@ -152,6 +150,7 @@
formattersByType.put(Class[].class, ValueFormatter.MultiTypeFormatter);
formattersByType.put(Method.class, ValueFormatter.MethodFormatter);
formattersByType.put(Method[].class, ValueFormatter.MultiMethodFormatter);
+ formattersByType.put(Object[].class, ValueFormatter.ObjectArrayFormatter);
}
private CheckboxTreeViewer ruleTreeViewer;
@@ -188,7 +187,9 @@
// TODO retrieve the hidden column names from preference settings
hiddenColumnNames.add(TextColumnDescriptor.since.label());
+ hiddenColumnNames.add(TextColumnDescriptor.externalURL.label());
hiddenColumnNames.add(TextColumnDescriptor.minLangVers.label());
+ hiddenColumnNames.add(TextColumnDescriptor.exampleCount.label());
}
/**
@@ -632,6 +633,12 @@
return ResourceManager.imageFor(codePath);
}
+ private boolean currentSelectionHasNonDefaultValues() {
+
+ return ruleSelection == null ?
+ false : ruleSelection.allSelectedRulesUseDefaultValues();
+ }
+
private Menu createMenuFor(Control control) {
Menu menu = new Menu(control);
@@ -640,7 +647,7 @@
priorityMenu.setText(SWTUtil.stringFor(StringKeys.MSGKEY_PREF_RULESET_COLUMN_PRIORITY));
Menu subMenu = new Menu(menu);
priorityMenu.setMenu (subMenu);
- priorityMenusByPriority = new HashMap<RulePriority, MenuItem>();
+ priorityMenusByPriority = new HashMap<RulePriority, MenuItem>(RulePriority.values().length);
for (RulePriority priority : RulePriority.values()) {
MenuItem priorityItem = new MenuItem (subMenu, SWT.RADIO);
@@ -659,7 +666,6 @@
MenuItem removeItem = new MenuItem(menu, SWT.PUSH);
removeItem.setText("Remove");
removeItem.addSelectionListener(new SelectionAdapter() {
- @Override
public void widgetSelected(SelectionEvent event) {
removeSelectedRules();
}
@@ -667,9 +673,8 @@
MenuItem useDefaultsItem = new MenuItem(menu, SWT.PUSH);
useDefaultsItem.setText("Use defaults");
- useDefaultsItem.setEnabled(false); //TODO
+ useDefaultsItem.setEnabled(false);
useDefaultsItem.addSelectionListener(new SelectionAdapter() {
- @Override
public void widgetSelected(SelectionEvent event) {
// useDefaultValues();
}
@@ -753,10 +758,15 @@
adjustMenuPrioritySettings();
adjustMenuRulesetSettings();
+ adjustMenuUseDefaultsOption();
ruleListMenu.setLocation(event.x, event.y);
ruleListMenu.setVisible(true);
}
+ private void adjustMenuUseDefaultsOption() {
+
+ }
+
// if all the selected rules/ruleGroups reference a common ruleset name
// then check that item and disable it, do the reverse for all others.
private void adjustMenuRulesetSettings() {
@@ -1154,10 +1164,8 @@
MessageDialog.openInformation(getShell(), getMessage(StringKeys.MSGKEY_INFORMATION_TITLE),
getMessage(StringKeys.MSGKEY_INFORMATION_RULESET_EXPORTED));
}
- } catch (IOException e) {
+ } catch (Exception e) {
plugin.showError(getMessage(StringKeys.MSGKEY_ERROR_EXPORTING_RULESET), e);
- } catch (WriterException e) {
- plugin.showError(getMessage(StringKeys.MSGKEY_ERROR_EXPORTING_RULESET), e);
}
}
}
@@ -1308,10 +1316,8 @@
plugin.getPreferencesManager().setRuleSet(ruleSet);
}
});
- } catch (InterruptedException e) {
+ } catch (Exception e) {
plugin.logError("Exception updating all projects after a preference change", e);
- } catch (InvocationTargetException e) {
- plugin.logError("Exception updating all projects after a preference change", e);
}
}
@@ -1328,15 +1334,12 @@
try {
ResourcesPlugin.getWorkspace().build(IncrementalProjectBuilder.FULL_BUILD, monitor);
} catch (CoreException e) {
- plugin.logError(
- "Exception building all projects after a preference change", e);
+ plugin.logError("Exception building all projects after a preference change", e);
}
}
});
- } catch (InterruptedException e) {
+ } catch (Exception e) {
plugin.logError("Exception building all projects after a preference change", e);
- } catch (InvocationTargetException e) {
- plugin.logError("Exception building all projects after a preference change", e);
}
}
}
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/RuleSelection.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/RuleSelection.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/RuleSelection.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -45,14 +45,34 @@
return null; // should not get here
}
+ private boolean hasDefaultValues(Rule rule) {
+
+ return true;
+ }
+
+
+ private boolean allHaveDefaultValues(RuleGroup group) {
+
+ return true;
+ }
+
public boolean allSelectedRulesUseDefaultValues() {
if (ruleItems == null || ruleItems.length == 0) return true;
- // TODO
+ if (ruleItems[0] instanceof Rule) return hasDefaultValues((Rule)ruleItems[0]);
+ if (ruleItems[0] instanceof RuleGroup) {
+ return allHaveDefaultValues((RuleGroup)ruleItems[0]);
+ }
+
+ // should never get here
return true;
}
+ public void useDefaultValues() {
+ // TODO
+ }
+
private RulePriority commonPriorityFor(Object item) {
return item instanceof Rule ?
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/TextColumnDescriptor.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/TextColumnDescriptor.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/br/TextColumnDescriptor.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -41,8 +41,8 @@
public static final RuleColumnDescriptor language = new TextColumnDescriptor(StringKeys.MSGKEY_PREF_RULESET_COLUMN_LANGUAGE, SWT.LEFT, 32, RuleFieldAccessor.language, false);
public static final RuleColumnDescriptor ruleType = new TextColumnDescriptor(StringKeys.MSGKEY_PREF_RULESET_COLUMN_RULE_TYPE, SWT.LEFT, 20, RuleFieldAccessor.ruleType, false);
public static final RuleColumnDescriptor minLangVers = new TextColumnDescriptor(StringKeys.MSGKEY_PREF_RULESET_COLUMN_MIN_VER, SWT.LEFT, 30, RuleFieldAccessor.minLanguageVersion, false);
+ public static final RuleColumnDescriptor exampleCount = new TextColumnDescriptor(StringKeys.MSGKEY_PREF_RULESET_COLUMN_EXAMPLE_CNT, SWT.RIGHT, 20, RuleFieldAccessor.exampleCount, false);
-// public static final RuleColumnDescriptor exampleCount = new TextColumnDescriptor("Examples", SWT.RIGHT, 20, RuleFieldAccessor.exampleCount, false);
// public static final RuleColumnDescriptor violateXPath = new TextColumnDescriptor("Filter", SWT.RIGHT, 20, RuleFieldAccessor.violationXPath, true);
/**
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/AbstractRealNumberEditor.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/AbstractRealNumberEditor.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/AbstractRealNumberEditor.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -22,11 +22,14 @@
protected Spinner newSpinnerFor(Composite parent, Rule rule, NumericPropertyDescriptor<?> numDesc) {
Spinner spinner = newSpinnerFor(parent, digits);
- spinner.setMinimum((int)(numDesc.lowerLimit().doubleValue() * scale));
- spinner.setMaximum((int)(numDesc.upperLimit().doubleValue() * scale));
+ int min = (int)(numDesc.lowerLimit().doubleValue() * scale);
+ int max = (int)(numDesc.upperLimit().doubleValue() * scale);
+ spinner.setMinimum(min);
+ spinner.setMaximum(max);
- double value = ((Number)valueFor(rule, numDesc)).doubleValue();
- spinner.setSelection((int)(value * scale));
+ double value = ((Number)valueFor(rule, numDesc)).doubleValue();
+ int intVal = (int)(value * scale);
+ spinner.setSelection(intVal);
return spinner;
}
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/FloatEditorFactory.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/FloatEditorFactory.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/FloatEditorFactory.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -7,13 +7,10 @@
import net.sourceforge.pmd.lang.rule.properties.FloatProperty;
import net.sourceforge.pmd.lang.rule.properties.PropertyDescriptorWrapper;
-import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Spinner;
/**
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiEnumerationEditorFactory.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiEnumerationEditorFactory.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiEnumerationEditorFactory.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -7,6 +7,8 @@
import net.sourceforge.pmd.eclipse.ui.preferences.br.ValueChangeListener;
import net.sourceforge.pmd.lang.rule.properties.EnumeratedMultiProperty;
import net.sourceforge.pmd.lang.rule.properties.PropertyDescriptorWrapper;
+import net.sourceforge.pmd.lang.rule.properties.StringMultiProperty;
+import net.sourceforge.pmd.util.CollectionUtil;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Combo;
@@ -14,7 +16,13 @@
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Text;
/**
+ * Behaviour:
+ * Provide a set of widgets that allows the user to select any number of items from a fixed set of choices. Each item can only appear once.
*
+ * Provide a combo box for each value selected while ensuring that their choices only contain unselected values. If the last combo box holds the only
+ * remaining choice then ensure it gets disabled, the user can only delete it or the previous ones. If the user deletes a previous one then re-enable
+ * the last one and add the deleted value to its set of choices.
+ *
* @author Brian Remedios
*
* ! PLACEHOLDER ONLY - NOT FINISHED YET !
@@ -36,8 +44,18 @@
@Override
protected Object addValueIn(Control widget, PropertyDescriptor<?> desc, Rule rule) {
- // TODO Auto-generated method stub
- return null;
+
+ int idx = ((Combo)widget).getSelectionIndex();
+ if (idx < 0) return null;
+
+ String newValue = ((Combo)widget).getItem(idx);
+
+ String[] currentValues = (String[])valueFor(rule, desc);
+ String[] newValues = CollectionUtil.addWithoutDuplicates(currentValues, newValue);
+ if (currentValues.length == newValues.length) return null;
+
+ rule.setProperty((StringMultiProperty)desc, newValues);
+ return newValue;
}
@Override
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiIntegerEditorFactory.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiIntegerEditorFactory.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/editors/MultiIntegerEditorFactory.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -20,7 +20,13 @@
import org.eclipse.swt.widgets.Spinner;
import org.eclipse.swt.widgets.Text;
/**
+ * Behaviour:
+ * Provide a set of widgets that allows the user to pick a range of integer values. The selected values can only exist once.
*
+ * Provide a spin box for each value selected while ensuring that their choices only contain unselected values. If the last spin box holds the only
+ * remaining choice then ensure it gets disabled, the user can only delete it or the previous ones. If the user deletes a previous one then re-enable
+ * the last one and add the deleted value to its set of choices.
+ *
* @author Brian Remedios
*/
public class MultiIntegerEditorFactory extends AbstractMultiValueEditorFactory {
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/DescriptionPanelManager.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/DescriptionPanelManager.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/DescriptionPanelManager.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -4,7 +4,9 @@
import java.net.URL;
import net.sourceforge.pmd.Rule;
+import net.sourceforge.pmd.eclipse.ui.nls.StringKeys;
import net.sourceforge.pmd.eclipse.ui.preferences.br.ValueChangeListener;
+import net.sourceforge.pmd.eclipse.ui.preferences.editors.SWTUtil;
import net.sourceforge.pmd.lang.rule.RuleReference;
import net.sourceforge.pmd.util.StringUtil;
@@ -103,8 +105,8 @@
}
});
- buildExternalUrlPanel(panel, "External URL:");
- buildMessagePanel(panel, "Message:");
+ buildExternalUrlPanel(panel, SWTUtil.stringFor(StringKeys.MSGKEY_PREF_RULEEDIT_LABEL_EXTERNAL_INFO_URL));
+ buildMessagePanel(panel, SWTUtil.stringFor(StringKeys.MSGKEY_PREF_RULEEDIT_LABEL_MESSAGE));
return panel;
}
@@ -192,7 +194,7 @@
private Button buildExternalInfoUrlButton(Composite parent) {
final Button button = new Button(parent, SWT.PUSH);
- button.setText("Browse"); // TODO i18l
+ button.setText(SWTUtil.stringFor(StringKeys.MSGKEY_PREF_RULEEDIT_BUTTON_OPEN_EXTERNAL_INFO_URL));
button.addSelectionListener(new SelectionAdapter() {
@Override
Modified: trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/XPathPanelManager.java
===================================================================
--- trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/XPathPanelManager.java 2010-01-03 04:32:29 UTC (rev 7051)
+++ trunk/pmd-eclipse-plugin/plugins/net.sourceforge.pmd.eclipse.plugin/src/net/sourceforge/pmd/eclipse/ui/preferences/panelmanagers/XPathPanelManager.java 2010-01-03 18:07:05 UTC (rev 7052)
@@ -5,6 +5,7 @@
import net.sourceforge.pmd.PropertyDescriptor;
import net.sourceforge.pmd.Rule;
+import net.sourceforge.pmd.eclipse.ui.nls.StringKeys;
import net.sourceforge.pmd.eclipse.ui.preferences.br.ValueChangeListener;
import net.sourceforge.pmd.eclipse.ui.preferences.editors.EnumerationEditorFactory;
import net.sourceforge.pmd.eclipse.ui.preferences.editors.SWTUtil;
@@ -36,6 +37,7 @@
private StyledText xpathField;
private Combo xpathVersionField;
+ private Label versionLabel;
private List<String> unknownVariableNames;
public XPathPanelManager(ValueChangeListener theListener) {
@@ -66,6 +68,7 @@
protected void setVisible(boolean flag) {
xpathField.setVisible(flag);
xpathVersionField.setVisible(flag);
+ versionLabel.setVisible(flag);
}
protected void updateOverridenFields() {
@@ -108,8 +111,8 @@
}
});
- Label versionLabel = new Label(panel, 0);
- versionLabel.setText("XPath version:");
+ versionLabel = new Label(panel, 0);
+ versionLabel.setText(SWTUtil.stringFor(StringKeys.MSGKEY_PREF_RULEEDIT_LABEL_XPATH_VERSION));
gridData = new GridData();
gridData.horizontalSpan = 1;
gridData.grabExcessHorizontalSpace = false;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|