Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java148
1 files changed, 0 insertions, 148 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java b/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java
deleted file mode 100644
index f787c2240..000000000
--- a/jsf/plugins/org.eclipse.jst.jsf.common.ui/src/org/eclipse/jst/jsf/common/ui/internal/guiutils/CollapsableSection.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 Sybase, Inc. 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:
- * Sybase, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.jsf.common.ui.internal.guiutils;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.ScrolledComposite;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.forms.events.ExpansionAdapter;
-import org.eclipse.ui.forms.events.ExpansionEvent;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-
-/**
- * Creates a class to be used to build a control for a collapseable area inside
- * a scrollable composite. This will take care of scrollbar resize.
- *
- * Example use:
- *
- * CollapsableSection cs = new CollapsableSection(toolkit, scomp, "General",
- * true) { public void setCollapsableContent(Composite composite) { // place
- * your content on this composite.... } }); cs.createControl(composite,
- * horizontalSpan);
- *
- * @author mengbo
- *
- */
-public abstract class CollapsableSection {
- // internal fields needed for doing the section and computing the scrollbar
- // on a collapse.
- private FormToolkit _toolkit;
-
- private Section _section;
-
- private ScrolledComposite _scomp;
-
- private String _title;
-
- private int _expansionStyle;
-
- /**
- * Creates a class to be used to build the control for a collapseable area.
- *
- * @param toolkit
- *
- * @param scomp
- * the scrollable composite used inside the container. This is
- * used to force resizing of the bars on dinking the control.
- * @param title
- * the string to place next to the collapsable icon.
- * @param bCollapsed
- * should this area start collapsed?
- */
- public CollapsableSection(FormToolkit toolkit, ScrolledComposite scomp,
- String title, boolean bCollapsed) {
- _toolkit = toolkit;
- _scomp = scomp;
- _title = title;
- _expansionStyle = ExpandableComposite.TWISTIE
- | ExpandableComposite.FOCUS_TITLE;
- if (bCollapsed) {
- _expansionStyle |= ExpandableComposite.COMPACT;
- } else {
- _expansionStyle |= ExpandableComposite.EXPANDED;
- }
- }
-
- /**
- * Build the GUI parts of the Collapsable area into the given composite.
- * NOTE: you must set the layout on this composite before adding swt
- * widgets.
- *
- * @param composite
- */
- abstract public void setCollapsableContent(Composite composite);
-
- /**
- * A convient way to build the widget into a control and place it on the
- * page. NOTE: this method will build the Section and call
- * setCollapsableContent with a composite to fill in the inner area.
- *
- * @param parent
- * @param horizontalSpan
- * how many columns should this control span.
- * @return Control that was added to the composite.
- */
- public Control createControl(Composite parent, int horizontalSpan) {
- _section = _toolkit.createSection(parent, _expansionStyle);
- _section.clientVerticalSpacing = 5; // space between the dink and the
- // controls in when opened.
- // _section.marginHeight = 5; // indents the entire section.
- // _section.marginWidth = 5; // indents the entire section.
- _section.setText(_title);
- _toolkit.createCompositeSeparator(_section);
- _section.addExpansionListener(new ExpansionAdapter() {
- public void expansionStateChanged(ExpansionEvent event) {
- SWTUtils.computeScrollArea(_scomp, (Composite) _scomp
- .getContent());
- }
- });
-
- Composite content = new Composite(_section, SWT.NULL);
- setCollapsableContent(content);
-
- _section.setClient(content);
- GridData gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.horizontalSpan = horizontalSpan;
- _section.setLayoutData(gd);
-
- return _section;
- }
-
- /**
- * Programmatically changes expanded state.
- *
- * @param expanded
- * the new expanded state
- */
- public void setExpanded(boolean expanded) {
- if (_section != null) {
- _section.setExpanded(expanded);
-
- // NOTE: internal calling of expanding doesn't fire
- // the event to resize. We do it here.
- SWTUtils.computeScrollArea(_scomp, (Composite) _scomp.getContent());
- }
- }
-
- /**
- * Return the internal Section control for more advanced things.
- *
- * @return Section
- */
- public Section getSection() {
- return _section;
- }
-}

Back to the top