diff options
Diffstat (limited to 'bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/flatui/FlatPageSection.java')
-rw-r--r-- | bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/flatui/FlatPageSection.java | 408 |
1 files changed, 0 insertions, 408 deletions
diff --git a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/flatui/FlatPageSection.java b/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/flatui/FlatPageSection.java deleted file mode 100644 index 7ef2e6ced..000000000 --- a/bundles/org.eclipse.wst.wsdl.ui/src/org/eclipse/wst/wsdl/ui/internal/util/flatui/FlatPageSection.java +++ /dev/null @@ -1,408 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 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 - *******************************************************************************/ -package org.eclipse.wst.wsdl.ui.internal.util.flatui; - -import org.eclipse.jface.resource.JFaceResources; -import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; -import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.ViewForm; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.graphics.Color; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Layout; -import org.eclipse.swt.widgets.Text; -import org.eclipse.swt.widgets.Widget; - -//public abstract class FormSection implements IPropertyChangeListener, IModelChangedListener { -public abstract class FlatPageSection extends ViewForm implements IPropertyChangeListener { - public static final int SELECTION = 1; -// private PDEFormPage formPage; - private String headerColorKey = WidgetFactory.DEFAULT_HEADER_COLOR; - private String headerText; - private Control client; - protected Label header; - protected Control separator; -// private SectionChangeManager sectionManager; - private java.lang.String description; - private boolean dirty; - protected Label descriptionLabel; - private ToggleControl toggle; - private boolean readOnly; - private boolean titleAsHyperlink; - private boolean addSeparator=true; - private boolean descriptionPainted=true; - private boolean headerPainted=true; - private boolean collapsable=false; - private Composite control; - - -/* - * This is a special layout for the section. Both the - * header and the description labels will wrap and - * they will use client's size to calculate needed - * height. This kind of behaviour is not possible - * with stock grid layout. - */ -class SectionLayout extends Layout { - int vspacing = 3; - int sepHeight = 2; - - - protected Point computeSize(Composite parent, int wHint, int hHint, boolean flush) { - int width = 0; - int height = 0; - int cwidth = 0; - int collapsedHeight = 0; - - if (wHint != SWT.DEFAULT) - width = wHint; - if (hHint != SWT.DEFAULT) - height = hHint; - - cwidth = width; - - if (client != null) { - Point csize = client.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush); - if (width == 0) { - width = csize.x; - cwidth = width; - } - if (height==0) height = csize.y; - } - - Point toggleSize = null; - - if (collapsable && toggle!=null) - toggleSize = toggle.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush); - - if (hHint== SWT.DEFAULT && headerPainted && header!=null) { - int hwidth = cwidth; - if (toggleSize!=null) - hwidth = cwidth - toggleSize.x - 5; - Point hsize = header.computeSize(hwidth, SWT.DEFAULT, flush); - height += hsize.y; - collapsedHeight = hsize.y; - height += vspacing; - } - - if (hHint==SWT.DEFAULT && addSeparator) { - height += sepHeight; - height += vspacing; - collapsedHeight += vspacing + sepHeight; - } - if (hHint == SWT.DEFAULT && descriptionPainted && descriptionLabel!=null) { - Point dsize = descriptionLabel.computeSize(cwidth, SWT.DEFAULT, flush); - height += dsize.y; - height += vspacing; - } - if (toggle!=null && toggle.getSelection()) { - // collapsed state - height = collapsedHeight; - } - return new Point(width, height); - } - protected void layout(Composite parent, boolean flush) { - int width = parent.getClientArea().width; - int height = parent.getClientArea().height; - int y = 0; - Point toggleSize=null; - - if (collapsable) { - toggleSize = toggle.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush); - } - - if (headerPainted && header!=null) { - Point hsize; - - if (titleAsHyperlink) { - hsize = header.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush); - header.setBounds(0, y, hsize.x, hsize.y); - } - else { - int availableWidth = width; - if (toggleSize!=null) - availableWidth = width - toggleSize.x - 5; - hsize = header.computeSize(availableWidth, SWT.DEFAULT, flush); - - int hx = 0; - if (toggle!=null) { - int ty = y + hsize.y - toggleSize.y; // + vspacing; - toggle.setBounds(0, ty, toggleSize.x, toggleSize.y); - hx = toggleSize.x; - } - header.setBounds(hx, y, availableWidth, hsize.y); - } - y += hsize.y + vspacing; - } - if (addSeparator && separator!=null) { - separator.setBounds(0, y, width, 2); - y += sepHeight + vspacing; - } - if (toggle!=null && toggle.getSelection()) { - return; - } - if (descriptionPainted && descriptionLabel!=null) { - Point dsize = descriptionLabel.computeSize(width, SWT.DEFAULT, flush); - descriptionLabel.setBounds(0, y, width, dsize.y); - y += dsize.y + vspacing; - } - if (client!=null) { - client.setBounds(0, y, width, height - y); - } - } -} - - -public FlatPageSection(Composite parent) { - // Description causes problems re word wrapping - // and causes bad layout in schema and - // component editors when in Motif - turning off - - super(parent, SWT.FLAT); - if (SWT.getPlatform().equals("motif")) { - descriptionPainted = false; - } - JFaceResources.getFontRegistry().addListener(this); -} -public void commitChanges(boolean onSave) { -} -public abstract Composite createClient(Composite parent, WidgetFactory factory); -public final Control createControl( - Composite parent, - WidgetFactory factory) { - Composite section = factory.createComposite(parent); - SectionLayout slayout = new SectionLayout(); - section.setLayout(slayout); - section.setData(this); - - if (headerPainted) { - Color headerColor = factory.getColor(getHeaderColorKey()); - header = factory.createHeadingLabel(section, getHeaderText(), headerColor, SWT.WRAP); - if (titleAsHyperlink) { - factory.turnIntoHyperlink(header, new HyperlinkAdapter() { - public void linkActivated(Control label) { - titleActivated(); - } - }); - } - if (collapsable) { - toggle = new ToggleControl(section, SWT.NULL); - toggle.setBackground(factory.getBackgroundColor()); - toggle.setActiveDecorationColor(factory.getHyperlinkColor()); - toggle.setDecorationColor(factory.getColor(WidgetFactory.COLOR_COMPOSITE_SEPARATOR)); - toggle.setActiveCursor(factory.getHyperlinkCursor()); - toggle.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent e) { - - boolean collapsed = toggle.getSelection(); - reflow(); - if (descriptionLabel!=null) - descriptionLabel.setVisible(!collapsed); - if (client!=null) - client.setVisible(!collapsed); - } - }); - } - } - - - if (addSeparator) { - //separator = factory.createSeparator(section, SWT.HORIZONTAL); - separator = factory.createCompositeSeparator(section); - } - - if (descriptionPainted && description != null) { - descriptionLabel = factory.createLabel(section, description, SWT.WRAP); - } - client = createClient(section, factory); - section.setData(this); - control = section; - return section; -} - -protected void reflow() { - control.layout(true); - control.getParent().layout(true); - - Widget grandParent = control.getParent().getParent(); - if (grandParent != null && grandParent instanceof Composite) - ((Composite)grandParent).layout(true); -/* - SectionForm form = formPage.getForm(); - if (form instanceof ScrollableSectionForm) { - ((ScrollableSectionForm)form).updateScrollBars(); - } -*/ -} - -protected Text createText(Composite parent, String label, WidgetFactory factory) { - return createText(parent, label, factory, 1); -} -protected Text createText(Composite parent, String label, WidgetFactory factory, int span) { - factory.createLabel(parent, label); - Text text = factory.createText(parent, ""); - GridData gd = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_CENTER); - gd.grabExcessHorizontalSpace = true; - gd.horizontalSpan=span; - text.setLayoutData(gd); - return text; -} -protected Text createText(Composite parent, WidgetFactory factory, int span) { - Text text = factory.createText(parent, ""); - GridData gd = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_CENTER); - gd.grabExcessHorizontalSpace = true; - gd.horizontalSpan=span; - text.setLayoutData(gd); - return text; -} -public void dispose() { - JFaceResources.getFontRegistry().removeListener(this); - super.dispose(); -} -public void doGlobalAction(String actionId) {} -public void expandTo(Object object) {} -/* -public final void fireChangeNotification(int changeType, Object changeObject) { - if (sectionManager == null) - return; - sectionManager.dispatchNotification(this, changeType, changeObject); -} -public final void fireSelectionNotification(Object changeObject) { - fireChangeNotification(SELECTION, changeObject); -} -*/ -public java.lang.String getDescription() { - return description; -} -/* -public PDEFormPage getFormPage() { - return formPage; -} -*/ - -public java.lang.String getHeaderColorKey() { - return headerColorKey; -} -public java.lang.String getHeaderText() { - return headerText; -} -public void initialize(Object input) {} - -public boolean isDirty() { - return dirty; -} - -public boolean isReadOnly() { - return readOnly; -} -public boolean isTitleAsHyperlink() { - return titleAsHyperlink; -} -/* -public void modelChanged(IModelChangedEvent e) { -} -*/ -public void sectionChanged(FlatPageSection source, int changeType, Object changeObject) {} -public void setAddSeparator(boolean newAddSeparator) { - addSeparator = newAddSeparator; -} - - -private String trimNewLines(String text) { - StringBuffer buff = new StringBuffer(); - for (int i=0; i<text.length(); i++) { - char c = text.charAt(i); - if (c=='\n') - buff.append(' '); - else - buff.append(c); - } - return buff.toString(); -} - -public void setDescription(java.lang.String newDescription) { - // we will trim the new lines so that we can - // use layout-based word wrapping instead - // of hard-coded one - description = trimNewLines(newDescription); - //description = newDescription; - if (descriptionLabel!=null) descriptionLabel.setText(newDescription); -} -public void setDescriptionPainted(boolean newDescriptionPainted) { - descriptionPainted = newDescriptionPainted; -} -public void setDirty(boolean newDirty) { - dirty = newDirty; -} -/* -public void setFocus() { -} -*/ -public void setHeaderColorKey(java.lang.String newHeaderColorKey) { - headerColorKey = newHeaderColorKey; -} -public void setHeaderPainted(boolean newHeaderPainted) { - headerPainted = newHeaderPainted; -} -public void setHeaderText(java.lang.String newHeaderText) { - headerText = newHeaderText; - if (header!=null) header.setText(headerText); -} -/* -void setManager(SectionChangeManager manager) { - this.sectionManager = manager; -} -*/ -public void setReadOnly(boolean newReadOnly) { - readOnly = newReadOnly; -} -public void setTitleAsHyperlink(boolean newTitleAsHyperlink) { - titleAsHyperlink = newTitleAsHyperlink; -} -public void titleActivated() { -} -/* -public void update() {} -*/ - -public void propertyChange(PropertyChangeEvent arg0) { - if (control!=null && header!=null) { - if (!header.isDisposed()) - header.setFont(JFaceResources.getBannerFont()); - if (!control.isDisposed()) - control.layout(true); - } -} - - - /** - * Gets the collapsable. - * @return Returns a boolean - */ - public boolean getCollapsable() { - return collapsable; - } - - /** - * Sets the collapsable. - * @param collapsable The collapsable to set - */ - public void setCollapsable(boolean collapsable) { - this.collapsable = collapsable; - } - -} |