summaryrefslogtreecommitdiff
path: root/propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java
diff options
context:
space:
mode:
Diffstat (limited to 'propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java')
-rw-r--r--propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java209
1 files changed, 0 insertions, 209 deletions
diff --git a/propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java b/propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java
deleted file mode 100644
index 69bb455..0000000
--- a/propertysheet/src/org/eclipse/wb/internal/core/model/property/ComplexProperty.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Google, Inc.
- * 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:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.internal.core.model.property;
-
-import org.eclipse.wb.internal.core.model.property.editor.TextDisplayPropertyEditor;
-import org.eclipse.wb.internal.core.model.property.editor.complex.IComplexPropertyEditor;
-import org.eclipse.wb.internal.core.model.property.editor.presentation.PropertyEditorPresentation;
-import org.eclipse.wb.internal.core.model.property.table.PropertyTable;
-import org.eclipse.wb.internal.core.model.property.table.PropertyTooltipProvider;
-import org.eclipse.wb.internal.core.model.property.table.PropertyTooltipTextProvider;
-
-import org.eclipse.swt.graphics.Point;
-
-import java.util.List;
-
-/**
- * Implementation of {@link Property} that shows given inner {@link Property}'s using
- * {@link IComplexPropertyEditor}.
- *
- * @author scheglov_ke
- * @coverage core.model.property
- */
-public class ComplexProperty extends Property {
- private final String m_title;
- private String m_text;
- private String m_tooltip;
- private boolean m_modified;
- private Property[] m_properties;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Constructors
- //
- ////////////////////////////////////////////////////////////////////////////
- public ComplexProperty(String title, String text) {
- this(title, text, new Property[0]);
- }
-
- public ComplexProperty(String title, String text, Property[] properties) {
- super(new ComplexPropertyEditor());
- m_title = title;
- m_text = text;
- setText(text);
- setProperties(properties);
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Access
- //
- ////////////////////////////////////////////////////////////////////////////
- /**
- * Sets the text.
- */
- public void setText(String text) {
- m_text = text;
- }
-
- /**
- * @return the text to display as value.
- */
- public String getText() throws Exception {
- return m_text;
- }
-
- /**
- * Sets the tooltip text.
- */
- public void setTooltip(String tooltip) {
- m_tooltip = tooltip;
- }
-
- /**
- * Specifies the {@link PropertyEditorPresentation}, for example to displaying "..." button.
- */
- public void setEditorPresentation(PropertyEditorPresentation presentation) {
- ((ComplexPropertyEditor) getEditor()).m_presentation = presentation;
- }
-
- /**
- * @return the sub-properties.
- */
- public Property[] getProperties() {
- return m_properties;
- }
-
- /**
- * Sets the sub-properties.
- */
- public void setProperties(Property[] properties) {
- m_properties = properties;
- }
-
- /**
- * Sets the sub-properties.
- */
- public void setProperties(List<Property> properties) {
- Property[] propertiesArray = properties.toArray(new Property[properties.size()]);
- setProperties(propertiesArray);
- }
-
- /**
- * Sets the "modified" flag.
- */
- public void setModified(boolean modified) {
- m_modified = modified;
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Property
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public String getTitle() {
- return m_title;
- }
-
- @Override
- public boolean isModified() throws Exception {
- return m_modified;
- }
-
- @Override
- public Object getValue() throws Exception {
- return null;
- }
-
- @Override
- public void setValue(Object value) throws Exception {
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Adapter
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public <T> T getAdapter(Class<T> adapter) {
- if (adapter == PropertyTooltipProvider.class && m_tooltip != null) {
- return adapter.cast(new PropertyTooltipTextProvider() {
- @Override
- protected String getText(Property property) throws Exception {
- return m_tooltip;
- }
- });
- }
- return super.getAdapter(adapter);
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // ComplexPropertyEditor
- //
- ////////////////////////////////////////////////////////////////////////////
- private static final class ComplexPropertyEditor extends TextDisplayPropertyEditor
- implements
- IComplexPropertyEditor {
- private PropertyEditorPresentation m_presentation;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // IComplexPropertyEditor
- //
- ////////////////////////////////////////////////////////////////////////////
- public Property[] getProperties(Property property) throws Exception {
- return ((ComplexProperty) property).getProperties();
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // TextDisplayPropertyEditor
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- protected String getText(Property property) throws Exception {
- return ((ComplexProperty) property).getText();
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // PropertyEditor
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public boolean activate(PropertyTable propertyTable, Property property, Point location)
- throws Exception {
- return false;
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Presentation
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public PropertyEditorPresentation getPresentation() {
- return m_presentation;
- }
- }
-}