diff options
Diffstat (limited to 'bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java')
-rw-r--r-- | bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java | 282 |
1 files changed, 0 insertions, 282 deletions
diff --git a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java b/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java deleted file mode 100644 index 14e3b06a8b..0000000000 --- a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/preferences/ui/AbstractColorPage.java +++ /dev/null @@ -1,282 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2007 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - * Jens Lukowski/Innoopract - initial renaming/restructuring - * - *******************************************************************************/ -package org.eclipse.wst.sse.ui.internal.preferences.ui; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.ScrolledComposite; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Group; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Text; -import org.eclipse.ui.IWorkbench; -import org.eclipse.wst.sse.ui.internal.SSEUIMessages; -import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore; - -/** - * @deprecated - */ -public abstract class AbstractColorPage extends org.eclipse.jface.preference.PreferencePage implements org.eclipse.ui.IWorkbenchPreferencePage { - protected OverlayPreferenceStore fOverlayStore; - protected StyledTextColorPicker fPicker = null; - - /** - * Creates the coloring group used in createContents This method can be - * overwritten to set the text of the group or provide an infopop - */ - protected Composite createColoringComposite(Composite parent) { - Composite coloringComposite = createComposite(parent, 1); - return coloringComposite; - } - - /** - * Creates composite control and sets the default layout data. - */ - protected Composite createComposite(Composite parent, int numColumns) { - Composite composite = new Composite(parent, SWT.NULL); - - //GridLayout - GridLayout layout = new GridLayout(); - layout.numColumns = numColumns; - layout.marginHeight = 0; - layout.marginWidth = 0; - composite.setLayout(layout); - - //GridData - GridData data = new GridData(GridData.FILL); - data.verticalAlignment = GridData.FILL; - data.horizontalAlignment = GridData.FILL; - composite.setLayoutData(data); - return composite; - } - - protected Control createContents(Composite parent) { - // create scrollbars for this preference page when needed - final ScrolledComposite sc1 = new ScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL); - sc1.setLayoutData(new GridData(GridData.FILL_BOTH)); - Composite pageComponent = createComposite(sc1, 1); - sc1.setContent(pageComponent); - setSize(pageComponent); - - Label descLabel = createDescriptionLabel(pageComponent, SSEUIMessages.AbstractColorPageDescription); //$NON-NLS-1$ - Composite coloringComposite = createColoringComposite(pageComponent); - createContentsForPicker(coloringComposite); - - GridData gd = (GridData) descLabel.getLayoutData(); - gd.widthHint = (coloringComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT)).x; - setSize(pageComponent); - return pageComponent; - } - - /** - * Creates the StyledTextColorPicker used in createContents This method - * can be overwritten to set up StyledTextColorPicker differently - */ - protected void createContentsForPicker(Composite parent) { - // create the color picker - fPicker = new StyledTextColorPicker(parent, SWT.NULL); - GridData data = new GridData(GridData.FILL_BOTH); - fPicker.setLayoutData(data); - - fPicker.setPreferenceStore(fOverlayStore); - setupPicker(fPicker); - - fPicker.setText(getSampleText()); - } - - /** - * Create description label displayed at top of preference page. This - * method/label is used instead of PreferencePage's description label - * because the ScrolledComposite contained in this page will not fully - * work (horizontal scrolling) with PreferencePage's description label. - */ - protected Label createDescriptionLabel(Composite parent, String description) { - Label label = new Label(parent, SWT.LEFT | SWT.WRAP); - label.setText(description); - - GridData data = new GridData(GridData.FILL_HORIZONTAL); - data.grabExcessHorizontalSpace = true; - label.setLayoutData(data); - - return label; - } - - /** - * Creates composite control and sets the default layout data. - */ - - protected Group createGroup(Composite parent, int numColumns) { - Group group = new Group(parent, SWT.NULL); - - //GridLayout - GridLayout layout = new GridLayout(); - layout.numColumns = numColumns; - group.setLayout(layout); - - //GridData - GridData data = new GridData(GridData.FILL); - data.verticalAlignment = GridData.FILL; - data.horizontalAlignment = GridData.FILL; - data.grabExcessHorizontalSpace = true; - group.setLayoutData(data); - - return group; - } - - /** - * Utility method that creates a label instance and sets the default - * layout data. - */ - protected Label createLabel(Composite parent, String text) { - Label label = new Label(parent, SWT.LEFT); - label.setText(text); - GridData data = new GridData(GridData.FILL); - data.horizontalAlignment = GridData.FILL; - label.setLayoutData(data); - return label; - } - - protected OverlayPreferenceStore.OverlayKey[] createOverlayStoreKeys() { - return null; - } - - protected Button createPushButton(Composite parent, String label) { - Button button = new Button(parent, SWT.PUSH); - button.setText(label); - GridData data = new GridData(GridData.FILL); - data.horizontalAlignment = GridData.FILL; - button.setLayoutData(data); - return button; - } - - /** - * Utility method that creates a text instance and sets the default layout - * data. - */ - protected Text createTextField(Composite parent, String text) { - Text textfield = new Text(parent, SWT.LEFT); - textfield.setText(text); - GridData data = new GridData(GridData.FILL); - data.horizontalAlignment = GridData.FILL; - textfield.setLayoutData(data); - return textfield; - } - - public void dispose() { - super.dispose(); - if (fPicker != null && !fPicker.isDisposed()) - fPicker.releasePickerResources(); - if (fOverlayStore != null) { - fOverlayStore.stop(); - } - } - - public StyledTextColorPicker getPicker() { - return fPicker; - } - - public abstract String getSampleText(); - - /** - * Initializes this preference page for the given workbench. - * <p> - * This method is called automatically as the preference page is being - * created and initialized. Clients must not call this method. - * </p> - * - * @param workbench - * the workbench - */ - public void init(IWorkbench workbench) { - fOverlayStore = new OverlayPreferenceStore(getPreferenceStore(), createOverlayStoreKeys()); - fOverlayStore.load(); - fOverlayStore.start(); - } - - /** - * Initializes states of the controls using default values in the - * preference store. - */ - protected void performDefaults() { - fOverlayStore.loadDefaults(); - fPicker.refresh(); - } - - public boolean performOk() { - fOverlayStore.propagate(); - savePreferences(); - return true; - } - - protected void savePreferences() { - // save plugin preferences here - } - - /** - * Sets the size of composite to the default value - */ - protected void setSize(Composite composite) { - if (composite != null) { - // Note: The font is set here in anticipation that the class inheriting - // this base class may add widgets to the dialog. setSize - // is assumed to be called just before we go live. - applyDialogFont(composite); - Point minSize = composite.computeSize(SWT.DEFAULT, SWT.DEFAULT); - composite.setSize(minSize); - // set scrollbar composite's min size so page is expandable but - // has scrollbars when needed - if (composite.getParent() instanceof ScrolledComposite) { - ScrolledComposite sc1 = (ScrolledComposite) composite.getParent(); - sc1.setMinSize(minSize); - sc1.setExpandHorizontal(true); - sc1.setExpandVertical(true); - } - } - } - - protected abstract void setupPicker(StyledTextColorPicker picker); - - public void setVisible(boolean visible) { - boolean doShrink = false; - // limiter, for the really huge fonts - if (visible) { - getPicker().refresh(); - int x = Math.min(getControl().getShell().getSize().x, getControl().getDisplay().getClientArea().width * 9 / 10); - int y = Math.min(getControl().getShell().getSize().y, getControl().getDisplay().getClientArea().height * 9 / 10); - boolean shrinkWidth = (x != getControl().getShell().getSize().x); - boolean shrinkHeight = (y != getControl().getShell().getSize().y); - doShrink = shrinkWidth || shrinkHeight; - if (doShrink) { - // modify just the height - if (shrinkHeight && !shrinkWidth) - getShell().setBounds(getShell().getLocation().x, 0, getShell().getSize().x, getControl().getDisplay().getClientArea().height); - // modify just the width - else if (!shrinkHeight && shrinkWidth) - getShell().setBounds(0, getShell().getLocation().y, getControl().getDisplay().getClientArea().width, getShell().getSize().y); - // change the entire shell size to only fill the display, and - // move it to the origin - else - getShell().setBounds(0, 0, getControl().getDisplay().getClientArea().width, getControl().getDisplay().getClientArea().height); - } - } - super.setVisible(visible); - if (doShrink) { - getControl().getShell().redraw(); - getControl().getShell().update(); - } - } -} |