import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Preferences;
+import org.eclipse.jface.action.Action;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferenceConverter;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.RGB;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
private Button fShowInVerticalRulerCheckBox;
- // private Text fBrowserLikeLinksKeyModifierText;
- // private Button fBrowserLikeLinksCheckBox;
- // private StatusInfo fBrowserLikeLinksKeyModifierStatus;
+ private Text fBrowserLikeLinksKeyModifierText;
+ private Button fBrowserLikeLinksCheckBox;
+ private StatusInfo fBrowserLikeLinksKeyModifierStatus;
// private Button fCompletionInsertsRadioButton;
// private Button fCompletionOverwritesRadioButton;
// private Button fStickyOccurrencesButton;
// .add(new OverlayPreferenceStore.OverlayKey(
// OverlayPreferenceStore.BOOLEAN,
// PreferenceConstants.EDITOR_CLOSE_BRACES));
- // overlayKeys.add(new OverlayPreferenceStore.OverlayKey(
- // OverlayPreferenceStore.BOOLEAN,
- // PreferenceConstants.EDITOR_CLOSE_JAVADOCS));
+ overlayKeys.add(new OverlayPreferenceStore.OverlayKey(
+ OverlayPreferenceStore.BOOLEAN,
+ PreferenceConstants.EDITOR_CLOSE_JAVADOCS));
overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_WRAP_WORDS));
overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_WRAP_STRINGS_DQ));
overlayKeys
overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
PreferenceConstants.EDITOR_ADD_JAVADOC_TAGS));
+ overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+ PreferenceConstants.EDITOR_FORMAT_JAVADOCS));
+
+
overlayKeys
.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_SMART_HOME_END));
overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
// //$NON-NLS-1$
// addCheckBox(group, label, PreferenceConstants.EDITOR_CLOSE_BRACES, 1);
- // label = PreferencesMessages
- // .getString("JavaEditorPreferencePage.closeJavaDocs");
- // //$NON-NLS-1$
- // button = addCheckBox(group, label,
- // PreferenceConstants.EDITOR_CLOSE_JAVADOCS, 1);
+ label = PreferencesMessages
+ .getString("JavaEditorPreferencePage.closeJavaDocs");
+ //$NON-NLS-1$
+ button = addCheckBox(group, label,
+ PreferenceConstants.EDITOR_CLOSE_JAVADOCS, 1);
+ label = PreferencesMessages
+ .getString("JavaEditorPreferencePage.formatJavaDocs");
+ //$NON-NLS-1$
+ button = addCheckBox(group, label,
+ PreferenceConstants.EDITOR_FORMAT_JAVADOCS, 1);
//
// label = PreferencesMessages
// .getString("JavaEditorPreferencePage.addJavaDocTags");
GridLayout layout = new GridLayout();
layout.numColumns = 2;
composite.setLayout(layout);
- // String text=
- // PreferencesMessages.getString("JavaEditorPreferencePage.navigation.browserLikeLinks");
- // //$NON-NLS-1$
- // fBrowserLikeLinksCheckBox= addCheckBox(composite, text,
- // PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS, 0);
- // fBrowserLikeLinksCheckBox.addSelectionListener(new SelectionListener() {
- // public void widgetSelected(SelectionEvent e) {
- // boolean state= fBrowserLikeLinksCheckBox.getSelection();
- // fBrowserLikeLinksKeyModifierText.setEnabled(state);
- // handleBrowserLikeLinksKeyModifierModified();
- // }
- // public void widgetDefaultSelected(SelectionEvent e) {
- // }
- // });
- // Text field for modifier string
- // text=
- // PreferencesMessages.getString("JavaEditorPreferencePage.navigation.browserLikeLinksKeyModifier");
- // //$NON-NLS-1$
- // fBrowserLikeLinksKeyModifierText= addTextField(composite, text,
- // PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER, 20, 0,
- // false);
- // fBrowserLikeLinksKeyModifierText.setTextLimit(Text.LIMIT);
- //
- // if
- // (computeStateMask(fOverlayStore.getString(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER))
- // == -1) {
- // // Fix possible illegal modifier string
- // int stateMask=
- // fOverlayStore.getInt(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK);
- // if (stateMask == -1)
- // fBrowserLikeLinksKeyModifierText.setText(""); //$NON-NLS-1$
- // else
- // fBrowserLikeLinksKeyModifierText.setText(EditorUtility.getModifierString(stateMask));
- // }
- // fBrowserLikeLinksKeyModifierText.addKeyListener(new KeyListener() {
- // private boolean isModifierCandidate;
- // public void keyPressed(KeyEvent e) {
- // isModifierCandidate= e.keyCode > 0 && e.character == 0 && e.stateMask ==
- // 0;
- // }
- //
- // public void keyReleased(KeyEvent e) {
- // if (isModifierCandidate && e.stateMask > 0 && e.stateMask == e.stateMask
- // && e.character == 0) {// && e.time -time < 1000) {
- // String modifierString= fBrowserLikeLinksKeyModifierText.getText();
- // Point selection= fBrowserLikeLinksKeyModifierText.getSelection();
- // int i= selection.x - 1;
- // while (i > -1 && Character.isWhitespace(modifierString.charAt(i))) {
- // i--;
- // }
- // boolean needsPrefixDelimiter= i > -1 &&
- // !String.valueOf(modifierString.charAt(i)).equals(DELIMITER);
- //
- // i= selection.y;
- // while (i < modifierString.length() &&
- // Character.isWhitespace(modifierString.charAt(i))) {
- // i++;
- // }
- // boolean needsPostfixDelimiter= i < modifierString.length() &&
- // !String.valueOf(modifierString.charAt(i)).equals(DELIMITER);
- //
- // String insertString;
- //
- // if (needsPrefixDelimiter && needsPostfixDelimiter)
- // insertString=
- // PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertDelimiterAndModifierAndDelimiter",
- // new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
- // else if (needsPrefixDelimiter)
- // insertString=
- // PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertDelimiterAndModifier",
- // new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
- // else if (needsPostfixDelimiter)
- // insertString=
- // PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertModifierAndDelimiter",
- // new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
- // else
- // insertString= Action.findModifierString(e.stateMask);
- //
- // fBrowserLikeLinksKeyModifierText.insert(insertString);
- // }
- // }
- // });
- //
- // fBrowserLikeLinksKeyModifierText.addModifyListener(new ModifyListener()
- // {
- // public void modifyText(ModifyEvent e) {
- // handleBrowserLikeLinksKeyModifierModified();
- // }
- // });
+ String text=
+ PreferencesMessages.getString("JavaEditorPreferencePage.navigation.browserLikeLinks");
+ //$NON-NLS-1$
+ fBrowserLikeLinksCheckBox= addCheckBox(composite, text,
+ PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS, 0);
+ fBrowserLikeLinksCheckBox.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(SelectionEvent e) {
+ boolean state= fBrowserLikeLinksCheckBox.getSelection();
+ fBrowserLikeLinksKeyModifierText.setEnabled(state);
+ handleBrowserLikeLinksKeyModifierModified();
+ }
+ public void widgetDefaultSelected(SelectionEvent e) {
+ }
+ });
+// Text field for modifier string
+ text=
+ PreferencesMessages.getString("JavaEditorPreferencePage.navigation.browserLikeLinksKeyModifier");
+ //$NON-NLS-1$
+ fBrowserLikeLinksKeyModifierText= addTextField(composite, text,
+ PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER, 20, 0,
+ false);
+ fBrowserLikeLinksKeyModifierText.setTextLimit(Text.LIMIT);
+
+ if
+ (computeStateMask(fOverlayStore.getString(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER))
+ == -1) {
+ // Fix possible illegal modifier string
+ int stateMask=
+ fOverlayStore.getInt(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK);
+ if (stateMask == -1)
+ fBrowserLikeLinksKeyModifierText.setText(""); //$NON-NLS-1$
+ else
+ fBrowserLikeLinksKeyModifierText.setText(EditorUtility.getModifierString(stateMask));
+ }
+ fBrowserLikeLinksKeyModifierText.addKeyListener(new KeyListener() {
+ private boolean isModifierCandidate;
+ public void keyPressed(KeyEvent e) {
+ isModifierCandidate= e.keyCode > 0 && e.character == 0 && e.stateMask ==
+ 0;
+ }
+
+ public void keyReleased(KeyEvent e) {
+ if (isModifierCandidate && e.stateMask > 0 && e.stateMask == e.stateMask
+ && e.character == 0) {// && e.time -time < 1000) {
+ String modifierString= fBrowserLikeLinksKeyModifierText.getText();
+ Point selection= fBrowserLikeLinksKeyModifierText.getSelection();
+ int i= selection.x - 1;
+ while (i > -1 && Character.isWhitespace(modifierString.charAt(i))) {
+ i--;
+ }
+ boolean needsPrefixDelimiter= i > -1 &&
+ !String.valueOf(modifierString.charAt(i)).equals(DELIMITER);
+
+ i= selection.y;
+ while (i < modifierString.length() &&
+ Character.isWhitespace(modifierString.charAt(i))) {
+ i++;
+ }
+ boolean needsPostfixDelimiter= i < modifierString.length() &&
+ !String.valueOf(modifierString.charAt(i)).equals(DELIMITER);
+
+ String insertString;
+
+ if (needsPrefixDelimiter && needsPostfixDelimiter)
+ insertString=
+ PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertDelimiterAndModifierAndDelimiter",
+ new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
+ else if (needsPrefixDelimiter)
+ insertString=
+ PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertDelimiterAndModifier",
+ new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
+ else if (needsPostfixDelimiter)
+ insertString=
+ PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.insertModifierAndDelimiter",
+ new String[] {Action.findModifierString(e.stateMask)}); //$NON-NLS-1$
+ else
+ insertString= Action.findModifierString(e.stateMask);
+
+ fBrowserLikeLinksKeyModifierText.insert(insertString);
+ }
+ }
+ });
+
+ fBrowserLikeLinksKeyModifierText.addModifyListener(new ModifyListener()
+ {
+ public void modifyText(ModifyEvent e) {
+ handleBrowserLikeLinksKeyModifierModified();
+ }
+ });
return composite;
}
private void handleBrowserLikeLinksKeyModifierModified() {
- // String modifiers= fBrowserLikeLinksKeyModifierText.getText();
- // int stateMask= computeStateMask(modifiers);
- // if (fBrowserLikeLinksCheckBox.getSelection() && (stateMask == -1 ||
- // (stateMask & SWT.SHIFT) != 0)) {
- // if (stateMask == -1)
- // fBrowserLikeLinksKeyModifierStatus= new StatusInfo(IStatus.ERROR,
- // PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.modifierIsNotValid",
- // modifiers)); //$NON-NLS-1$
- // else
- // fBrowserLikeLinksKeyModifierStatus= new StatusInfo(IStatus.ERROR,
- // PreferencesMessages.getString("JavaEditorPreferencePage.navigation.shiftIsDisabled"));
- // //$NON-NLS-1$
- // setValid(false);
- // StatusUtil.applyToStatusLine(this, fBrowserLikeLinksKeyModifierStatus);
- // } else {
- // fBrowserLikeLinksKeyModifierStatus= new StatusInfo();
- // updateStatus(fBrowserLikeLinksKeyModifierStatus);
- // }
+ String modifiers= fBrowserLikeLinksKeyModifierText.getText();
+ int stateMask= computeStateMask(modifiers);
+ if (fBrowserLikeLinksCheckBox.getSelection() && (stateMask == -1 ||
+ (stateMask & SWT.SHIFT) != 0)) {
+ if (stateMask == -1)
+ fBrowserLikeLinksKeyModifierStatus= new StatusInfo(IStatus.ERROR,
+ PreferencesMessages.getFormattedString("JavaEditorPreferencePage.navigation.modifierIsNotValid",
+ modifiers)); //$NON-NLS-1$
+ else
+ fBrowserLikeLinksKeyModifierStatus= new StatusInfo(IStatus.ERROR,
+ PreferencesMessages.getString("JavaEditorPreferencePage.navigation.shiftIsDisabled"));
+ //$NON-NLS-1$
+ setValid(false);
+ StatusUtil.applyToStatusLine(this, fBrowserLikeLinksKeyModifierStatus);
+ } else {
+ fBrowserLikeLinksKeyModifierStatus= new StatusInfo();
+ updateStatus(fBrowserLikeLinksKeyModifierStatus);
+ }
}
- // private IStatus getBrowserLikeLinksKeyModifierStatus() {
- // if (fBrowserLikeLinksKeyModifierStatus == null)
- // fBrowserLikeLinksKeyModifierStatus= new StatusInfo();
- // return fBrowserLikeLinksKeyModifierStatus;
- // }
+ private IStatus getBrowserLikeLinksKeyModifierStatus() {
+ if (fBrowserLikeLinksKeyModifierStatus == null)
+ fBrowserLikeLinksKeyModifierStatus= new StatusInfo();
+ return fBrowserLikeLinksKeyModifierStatus;
+ }
/**
* Computes the state mask for the given modifier string.
*
//$NON-NLS-1$
fJavaEditorHoverConfigurationBlock = new JavaEditorHoverConfigurationBlock(this, fOverlayStore);
item.setControl(fJavaEditorHoverConfigurationBlock.createControl(folder));
- // item= new TabItem(folder, SWT.NONE);
- // item.setText(PreferencesMessages.getString("JavaEditorPreferencePage.navigationTab.title"));
+ item = new TabItem(folder, SWT.NONE);
+ item.setText(PreferencesMessages.getString("JavaEditorPreferencePage.navigationTab.title"));
// //$NON-NLS-1$
- // item.setControl(createNavigationPage(folder));
+ item.setControl(createNavigationPage(folder));
item = new TabItem(folder, SWT.NONE);
item.setText(PreferencesMessages.getString("JavaEditorPreferencePage.folding.title")); //$NON-NLS-1$
item.setControl(fFoldingConfigurationBlock.createControl(folder));
fBackgroundDefaultRadioButton.setSelection(default_);
fBackgroundCustomRadioButton.setSelection(!default_);
fBackgroundColorButton.setEnabled(!default_);
- // boolean closeJavaDocs = fOverlayStore
- // .getBoolean(PreferenceConstants.EDITOR_CLOSE_JAVADOCS);
- // fAddJavaDocTagsButton.setEnabled(closeJavaDocs);
+ boolean closeJavaDocs = fOverlayStore
+ .getBoolean(PreferenceConstants.EDITOR_CLOSE_JAVADOCS);
+// fAddJavaDocTagsButton.setEnabled(closeJavaDocs);
fEscapeStringsButtonDQ.setEnabled(fOverlayStore.getBoolean(PreferenceConstants.EDITOR_WRAP_STRINGS_DQ));
fEscapeStringsButtonSQ.setEnabled(fOverlayStore.getBoolean(PreferenceConstants.EDITOR_WRAP_STRINGS_SQ));
// boolean fillMethodArguments=
// fCompletionInsertsRadioButton.setSelection(completionInserts);
// fCompletionOverwritesRadioButton.setSelection(! completionInserts);
//
- // fBrowserLikeLinksKeyModifierText.setEnabled(fBrowserLikeLinksCheckBox.getSelection());
+ fBrowserLikeLinksKeyModifierText.setEnabled(fBrowserLikeLinksCheckBox.getSelection());
// boolean markOccurrences=
// fOverlayStore.getBoolean(PreferenceConstants.EDITOR_MARK_OCCURRENCES);
// fStickyOccurrencesButton.setEnabled(markOccurrences);
public boolean performOk() {
// fJavaEditorHoverConfigurationBlock.performOk();
fFoldingConfigurationBlock.performOk();
- // fOverlayStore.setValue(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK,
- // computeStateMask(fBrowserLikeLinksKeyModifierText.getText()));
+ fOverlayStore.setValue(PreferenceConstants.EDITOR_BROWSER_LIKE_LINKS_KEY_MODIFIER_MASK,
+ computeStateMask(fBrowserLikeLinksKeyModifierText.getText()));
fOverlayStore.propagate();
PHPeclipsePlugin.getDefault().savePluginPreferences();
return true;