X-Git-Url: http://git.phpeclipse.com diff --git a/archive/net.sourceforge.phpeclipse.sql/src/net/sourceforge/phpdt/sql/editors/SQLEditor.java b/archive/net.sourceforge.phpeclipse.sql/src/net/sourceforge/phpdt/sql/editors/SQLEditor.java new file mode 100644 index 0000000..a7bb715 --- /dev/null +++ b/archive/net.sourceforge.phpeclipse.sql/src/net/sourceforge/phpdt/sql/editors/SQLEditor.java @@ -0,0 +1,59 @@ +package net.sourceforge.phpdt.sql.editors; + +import net.sourceforge.phpdt.sql.PHPEclipseSQLPlugin; + +import org.eclipse.jface.preference.PreferenceConverter; +import org.eclipse.jface.util.IPropertyChangeListener; +import org.eclipse.jface.util.PropertyChangeEvent; +import org.eclipse.swt.custom.StyledText; +import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Font; +import org.eclipse.swt.graphics.FontData; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Display; +import org.eclipse.ui.editors.text.TextEditor; + +public class SQLEditor extends TextEditor { + SQLConfiguration config; + private ColorManager colorManager; + /** + * An editor capable of editing SQL scripts + */ + public SQLEditor() { + super(); + colorManager = new ColorManager(); + config = new SQLConfiguration(colorManager); + config.loadPrefs(); + + setPreferenceStore(PHPEclipseSQLPlugin.getDefault().getPreferenceStore()); + IPropertyChangeListener preferenceListener = new IPropertyChangeListener() { + public void propertyChange(PropertyChangeEvent event) { + config.loadPrefs(); + config.initializeColors(); + getSourceViewer().invalidateTextPresentation(); + StyledText widget = getSourceViewer().getTextWidget(); + FontData font = PreferenceConverter.getFontData(getPreferenceStore(), "quantum.font"); + widget.setFont(new Font(Display.getCurrent(), font)); + Color background = colorManager.getColor(SQLColorConstants.BACKGROUND); + widget.setBackground(background); + } + }; + getPreferenceStore(). + addPropertyChangeListener(preferenceListener); + + setSourceViewerConfiguration(config); + setDocumentProvider(new SQLDocumentProvider()); + } + public void dispose() { + colorManager.dispose(); + super.dispose(); + } + public void createPartControl(Composite arg0) { + super.createPartControl(arg0); + StyledText widget = getSourceViewer().getTextWidget(); + FontData font = PreferenceConverter.getFontData(getPreferenceStore(), "quantum.font"); + widget.setFont(new Font(Display.getCurrent(), font)); + Color background = colorManager.getColor(SQLColorConstants.BACKGROUND); + widget.setBackground(background); + } +}