001: package net.refractions.udig.project.internal;
002:
003: import org.eclipse.emf.ecore.EObject;
004:
005: /**
006: * Encapsulates an entry in the StyleBlackboard.
007: *
008: * @author Jesse
009: * @since 1.0.0
010: * @model
011: */
012: public interface StyleEntry extends EObject {
013: /**
014: * <!-- begin-user-doc --> <!-- end-user-doc -->
015: * @generated
016: */
017: String copyright = "uDig - User Friendly Desktop Internet GIS client http://udig.refractions.net (C) 2004, Refractions Research Inc. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; version 2.1 of the License. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details."; //$NON-NLS-1$
018:
019: /**
020: * The ID is a unique identifier required by the Renderer and StyleConfigurator.
021: *
022: * @uml.property name="iD"
023: * @model
024: */
025: String getID();
026:
027: /**
028: * Sets the value of the '{@link net.refractions.udig.project.internal.StyleEntry#getID <em>ID</em>}' attribute.
029: * <!-- begin-user-doc --> The ID is a unique identifier required by the Renderer and
030: * StyleConfigurator. <!-- end-user-doc -->
031: * @param value the new value of the '<em>ID</em>' attribute.
032: * @see #getID()
033: * @generated
034: */
035: void setID(String value);
036:
037: /**
038: * Contents to persist, genrated StyleContent.save( Memento mem, value ).
039: *
040: * @uml.property name="memento"
041: * @model
042: */
043: String getMemento();
044:
045: /**
046: * Sets the value of the '{@link net.refractions.udig.project.internal.StyleEntry#getMemento <em>Memento</em>}' attribute.
047: * <!-- begin-user-doc --> Contents to persist, genrated StyleContent.save( Memento
048: * mem, value ). <!-- end-user-doc -->
049: * @param value the new value of the '<em>Memento</em>' attribute.
050: * @see #getMemento()
051: * @generated
052: */
053: void setMemento(String value);
054:
055: /**
056: * Returns the cached style object.
057: * <p>
058: * Value is generated using StyleContent.load( Memento mem ).
059: * </p>
060: *
061: * @return the object if it exists, or null if the cache is empty.
062: * @uml.property name="style"
063: * @model transient="true" volatile="true"
064: */
065: public Object getStyle();
066:
067: /**
068: * Sets the value of the '{@link net.refractions.udig.project.internal.StyleEntry#getStyle <em>Style</em>}' attribute.
069: * <!-- begin-user-doc --> <!-- end-user-doc -->
070: * @param value the new value of the '<em>Style</em>' attribute.
071: * @see #getStyle()
072: * @generated
073: */
074: void setStyle(Object value);
075:
076: /**
077: * Returns the cached class of the style object. Used for doing class based lookups on the style
078: * blackboard.
079: *
080: * @uml.property name="styleClass"
081: * @model transient="true" volatile="true"
082: */
083: public Class getStyleClass();
084:
085: /**
086: * Sets the value of the '{@link net.refractions.udig.project.internal.StyleEntry#getStyleClass <em>Style Class</em>}' attribute.
087: * <!-- begin-user-doc --> <!-- end-user-doc -->
088: * @param value the new value of the '<em>Style Class</em>' attribute.
089: * @see #getStyleClass()
090: * @generated
091: */
092: void setStyleClass(Class value);
093:
094: /**
095: * Indicates whether the entry is <em>selected</em>.
096: *
097: * @param selected true if the entry is selected.
098: * @see StyleBlackboard#setSelected(String[])
099: */
100: void setSelected(boolean selected);
101:
102: /**
103: * Indicates whether the entry is <em>selected</em>.
104: *
105: * @return true if the entry is selected.
106: * @see StyleBlackboard#setSelected(String[])
107: */
108: boolean isSelected();
109: }
|