PT #160125656: Consolidate prefs page for LS extensions

This commit is contained in:
BoykoAlex
2018-09-06 18:25:39 -04:00
parent 55f20d7d99
commit 9ef919e73f
5 changed files with 45 additions and 20 deletions

View File

@@ -86,9 +86,9 @@
<extension
point="org.eclipse.ui.preferencePages">
<page
category="org.springsource.ide.eclipse.commons.preferencePage"
category="org.springframework.tooling.ls.eclipse.commons.console.preferences"
class="org.springframework.tooling.boot.ls.BootLanguageServerPreferencesPage"
id="org.springframework.tooling.boot.java.ls.page1"
id="org.springframework.tooling.boot.java.ls.preferences"
name="Boot Language Server Extension">
</page>
</extension>

View File

@@ -12,8 +12,15 @@ package org.springframework.tooling.boot.ls;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.springframework.tooling.ls.eclipse.commons.LanguageServerCommonsActivator;
import org.springframework.tooling.ls.eclipse.commons.preferences.PreferenceConstants;
/**
* Preference page for Boot-Java LS extension
@@ -28,17 +35,43 @@ public class BootLanguageServerPreferencesPage extends FieldEditorPreferencePage
@Override
public void init(IWorkbench workbench) {
setDescription("Settings for Boot-Java language server extension");
setPreferenceStore(BootLanguageServerPlugin.getDefault().getPreferenceStore());
}
@Override
protected void createFieldEditors() {
BooleanFieldEditor liveHintsPrefEditor = new BooleanFieldEditor(Constants.PREF_BOOT_HINTS, "Live Boot Hint Decorators", getFieldEditorParent());
Composite parent = getFieldEditorParent();
Label l = new Label(parent, SWT.NONE);
l.setFont(parent.getFont());
l.setText("Settings for Spring Boot Live Beans data:");
GridData gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
gd.grabExcessHorizontalSpace = false;
l.setLayoutData(gd);
BooleanFieldEditor liveHintsPrefEditor = new BooleanFieldEditor(Constants.PREF_BOOT_HINTS, "Live Boot Hint Decorators", parent);
addField(liveHintsPrefEditor);
BooleanFieldEditor liveChangeDetectionPrefEditor = new BooleanFieldEditor(Constants.PREF_CHANGE_DETECTION, "Live Boot Change Detection", getFieldEditorParent());
final IPreferenceStore commonsLsPrefs = LanguageServerCommonsActivator.getInstance().getPreferenceStore();
addField(new BooleanFieldEditor(PreferenceConstants.HIGHLIGHT_CODELENS_PREFS, "Highlights CodeLens (Experimental)", parent) {
@Override
public IPreferenceStore getPreferenceStore() {
return commonsLsPrefs;
}
});
BooleanFieldEditor liveChangeDetectionPrefEditor = new BooleanFieldEditor(Constants.PREF_CHANGE_DETECTION, "Live Boot Change Detection", parent);
addField(liveChangeDetectionPrefEditor);
l = new Label(parent, SWT.NONE);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
l.setLayoutData(gd);
}
}

View File

@@ -28,10 +28,11 @@
<extension
point="org.eclipse.ui.preferencePages">
<page
class="org.springframework.tooling.ls.eclipse.commons.preferences.LanguageServerConsolesPreferencesPage"
id="org.springframework.tooling.ls.eclipse.commons.console.preferences.LanguageServerConsolesPreferencesPage"
name="Language Servers STS">
</page>
category="org.eclipse.lsp4e.preferences"
class="org.springframework.tooling.ls.eclipse.commons.preferences.LanguageServerPreferencesPage"
id="org.springframework.tooling.ls.eclipse.commons.console.preferences"
name="STS Language Servers">
</page>
</extension>
<extension
point="org.eclipse.core.runtime.preferences">

View File

@@ -12,7 +12,6 @@ package org.springframework.tooling.ls.eclipse.commons.preferences;
import static org.springframework.tooling.ls.eclipse.commons.preferences.LanguageServerConsolePreferenceConstants.ALL_SERVERS;
import org.eclipse.debug.internal.ui.SWTFactory;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.preference.IPreferenceStore;
@@ -22,8 +21,7 @@ import org.eclipse.ui.IWorkbenchPreferencePage;
import org.springframework.tooling.ls.eclipse.commons.LanguageServerCommonsActivator;
import org.springframework.tooling.ls.eclipse.commons.preferences.LanguageServerConsolePreferenceConstants.ServerInfo;
@SuppressWarnings("restriction")
public class LanguageServerConsolesPreferencesPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
public class LanguageServerPreferencesPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
static IPreferenceStore getPrefsStoreFromPlugin() {
return LanguageServerCommonsActivator.getInstance().getPreferenceStore();
@@ -42,12 +40,5 @@ public class LanguageServerConsolesPreferencesPage extends FieldEditorPreference
for (ServerInfo s : ALL_SERVERS) {
addField(new BooleanFieldEditor(s.preferenceKey, s.label, parent));
}
SWTFactory.createHorizontalSpacer(parent, 2);
SWTFactory.createLabel(parent, "Settings for Spring Languare Server extensions:", 2);
addField(new BooleanFieldEditor(PreferenceConstants.HIGHLIGHT_CODELENS_PREFS, "Highlights CodeLens (Experimental)", parent));
}
}

View File

@@ -20,7 +20,7 @@ import org.springframework.tooling.ls.eclipse.commons.preferences.LanguageServer
public class PrefsInitializer extends AbstractPreferenceInitializer {
@Override
public void initializeDefaultPreferences() {
IPreferenceStore store = LanguageServerConsolesPreferencesPage.getPrefsStoreFromPlugin();
IPreferenceStore store = LanguageServerPreferencesPage.getPrefsStoreFromPlugin();
for (ServerInfo s : ALL_SERVERS) {
store.setDefault(s.preferenceKey, ENABLE_BY_DEFAULT);
}