X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxEditorPreferencePage.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxEditorPreferencePage.java index 22b06ff..60d95e2 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxEditorPreferencePage.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPSyntaxEditorPreferencePage.java @@ -7,8 +7,8 @@ import java.util.Map; import net.sourceforge.phpeclipse.preferences.ColorEditor; import net.sourceforge.phpeclipse.preferences.OverlayPreferenceStore; import net.sourceforge.phpeclipse.preferences.PHPPreferencesMessages; + import org.eclipse.core.runtime.IStatus; -import org.eclipse.jface.preference.BooleanFieldEditor; import org.eclipse.jface.preference.FileFieldEditor; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.preference.PreferenceConverter; @@ -75,7 +75,8 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, IPreferenceConstants.PHP_DEFAULT_BOLD), new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, IPreferenceConstants.PHP_DEFAULT_ITALIC), new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, IPreferenceConstants.PHP_DEFAULT_UNDERLINE), - new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, IPreferenceConstants.PHP_USERDEF_XMLFILE)}; + new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, IPreferenceConstants.PHP_USERDEF_XMLFILE), + new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, IPreferenceConstants.PHP_EDITOR_BACKGROUND)}; private final String[][] SyntaxColorListModel = new String[][] { @@ -118,6 +119,7 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo }; private List SyntaxColorList; + /** The ColorEditor that choose the foreground color. */ private ColorEditor SyntaxForegroundColorEditor; private Button BoldCheckBox; private Button ItalicCheckBox; @@ -147,6 +149,38 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo UnderlineCheckBox.setSelection(OverlayStore.getBoolean(key + "_underline")); } + /** + * Create the group of options for other parameters (background color for example). + * @param parent the parent component + */ + private void backgroundOptionPage(Composite parent) { + Label label = new Label(parent, SWT.LEFT); + label.setText(PHPPreferencesMessages.getString("PHPEditorSyntaxPreferencePage.color")); //$NON-NLS-1$ + GridData gd = new GridData(); + gd.horizontalAlignment = GridData.BEGINNING; + label.setLayoutData(gd); + final ColorEditor syntaxBackgroundColorEditor = new ColorEditor(parent); + RGB rgb = PreferenceConverter.getColor(OverlayStore, IPreferenceConstants.PHP_EDITOR_BACKGROUND); + syntaxBackgroundColorEditor.setColorValue(rgb); + Button backgroundColorButton = syntaxBackgroundColorEditor.getButton(); + gd = new GridData(GridData.FILL_HORIZONTAL); + gd.horizontalAlignment = GridData.BEGINNING; + backgroundColorButton.setLayoutData(gd); + backgroundColorButton.addSelectionListener(new SelectionListener() { + public void widgetDefaultSelected(SelectionEvent e) { + // do nothing + } + public void widgetSelected(SelectionEvent e) { + PreferenceConverter.setValue(OverlayStore, IPreferenceConstants.PHP_EDITOR_BACKGROUND, syntaxBackgroundColorEditor.getColorValue()); + } + }); + } + + /** + * Create the group of options for the syntax parameters. + * @param parent the parent component + * @return + */ private Control createSyntaxPage(Composite parent) { Composite colorComposite = new Composite(parent, SWT.NULL); @@ -196,7 +230,7 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo gd.horizontalAlignment = GridData.BEGINNING; gd.horizontalSpan = 2; BoldCheckBox.setLayoutData(gd); - + ItalicCheckBox = new Button(stylesComposite, SWT.CHECK); ItalicCheckBox.setText(PHPPreferencesMessages.getString("PHPEditorSyntaxPreferencePage.italic")); //$NON-NLS-1$ ItalicCheckBox.setEnabled(false); @@ -204,7 +238,7 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo gd.horizontalAlignment = GridData.BEGINNING; gd.horizontalSpan = 2; ItalicCheckBox.setLayoutData(gd); - + UnderlineCheckBox = new Button(stylesComposite, SWT.CHECK); UnderlineCheckBox.setText(PHPPreferencesMessages.getString("PHPEditorSyntaxPreferencePage.underline")); //$NON-NLS-1$ UnderlineCheckBox.setEnabled(false); @@ -353,7 +387,17 @@ public class PHPSyntaxEditorPreferencePage extends PreferencePage implements IWo syntaxGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); syntaxGroup.setLayout(layout); createSyntaxPage(syntaxGroup); - + + Composite backgroundOptions = new Composite(composite,SWT.NULL); + backgroundOptions.setLayout(new GridLayout()); + layout = new GridLayout(); + layout.numColumns = 3; + Group backgroundOptionsGroup = new Group(backgroundOptions,SWT.NONE); + backgroundOptionsGroup.setText(PHPPreferencesMessages.getString("PHPEditorSyntaxPreferencePage.background")); + backgroundOptionsGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); + backgroundOptionsGroup.setLayout(layout); + backgroundOptionPage(backgroundOptionsGroup); + initialize(); return composite; }