public class McvComponentHolder extends IdvComponentHolder
Instead of having something like "Panel 1" appearing in the layer controls, we now have "ComponentHolder Name>Panel 1".
Note: ComponentHolder names always double as tab names! McIDAS-V also intercepts ComponentHolder renaming and updates the layer controls instantly.
Modifier and Type | Field and Description |
---|---|
private JComponent |
cached |
static String |
CATEGORY_DESCRIPTION
IDV friendly description of a dynamic XML skin.
|
static String |
TYPE_DYNAMIC_SKIN
Used to distinguish a dynamic skin from other things.
|
private UIManager |
uiManager
Kept around to avoid annoying casting.
|
TYPE_CHOOSERS, TYPE_DEFAULT, TYPE_SKIN
ATTR_NAME, BORDER_NAMES, BORDERS, displayBtn, header, isRemoved, nameFld, parent
propertiesDialog
Constructor and Description |
---|
McvComponentHolder()
Default constructor for serialization.
|
McvComponentHolder(IntegratedDataViewer idv,
Object obj)
Fairly typical constructor.
|
Modifier and Type | Method and Description |
---|---|
Element |
createXmlNode(Document doc)
Overridden so that we can (one day) do the required extra work to write
out the XML for this skin.
|
JComponent |
doMakeContents()
Overridden so that McV can do the required extra work if this holder is
holding a dynamic XML skin.
|
void |
doRemove()
Lets the IDV take care of the details, but does null out the local
reference to the UIManager.
|
String |
getCategory()
Overridden so that McV can return a more accurate category if this holder
is holding a dynamic skin.
|
String |
getTypeName()
Overridden so that McV can return a more accurate description if this
holder is holding a dynamic skin.
|
JComponent |
makeDynamicSkin()
Build the UI component using the XML skin contained by this holder.
|
protected JComponent |
makeSkin()
If the object being held in this component holder is a skin, calling this
method will create a component based upon the skin.
|
void |
setAsActiveTab()
Tell this component holder's component group that the tab corresponding
to this holder should become the active tab.
|
void |
setIdv(IntegratedDataViewer idv)
Mostly used to ensure that the local reference to the UI manager is valid
when deserializing.
|
void |
setName(String value)
Set the name of this component holder to the contents of
value . |
displayControlHasInitialized, getIcon, getIdv, getName, getObject, getPopupMenuItems, getType, getViewManagers, initWith, removeDisplayControl, setObject, setType, setViewManagers, undockControl
applyProperties, clearContents, doMakeHeader, getBeingShown, getBorder, getBorderLayoutLocation, getContents, getHierachicalName, getInternalFrame, getInternalFrameShown, getLayoutRect, getParent, getPropertiesComponents, getRoot, getShowHeader, makeTree, print, removeDisplayComponent, setBorder, setBorder, setBorderLayoutLocation, setCategory, setInternalFrameShown, setLayoutRect, setParent, setShowHeader, setState, showPopup, toString, wrapContents
addPropertyChangeListener, doApplyProperties, firePropertyChange, firePropertyChange, getPropertyListeners, getPropertyTabs, isShowing, propertyChange, removePropertyChangeListener, showProperties, showProperties
applySharableProperties, doShare, doShare, doShareExternal, doShareInternal, getReceiveShareTime, getSharablePropertiesComponent, getShareGroup, getSharing, getUniqueId, initSharable, receiveShareData, removeSharable, setReceiveShareTime, setShareGroup, setSharing, setUniqueId, showSharableDialog
public static final String CATEGORY_DESCRIPTION
public static final String TYPE_DYNAMIC_SKIN
private JComponent cached
public McvComponentHolder()
public McvComponentHolder(IntegratedDataViewer idv, Object obj)
idv
- Reference to the main IDV object.obj
- object being held in this component holder.public Element createXmlNode(Document doc)
createXmlNode
in class IdvComponentHolder
doc
- Parent document we'll use for XML generation.public JComponent doMakeContents()
doMakeContents
in class IdvComponentHolder
public void doRemove()
doRemove
in class IdvComponentHolder
public String getCategory()
getCategory
in class IdvComponentHolder
public String getTypeName()
getTypeName
in class IdvComponentHolder
protected JComponent makeSkin()
Overridden so that McV can tell the UIManager to associate the skin's ViewManagers with this component holder. That association is used to build the hierarchical names in the ViewPanel.
makeSkin
in class IdvComponentHolder
public void setIdv(IntegratedDataViewer idv)
setIdv
in class IdvComponentHolder
idv
- Main IDV reference!public void setName(String value)
value
.
Overridden so that McV can tell the ViewPanel to update upon a name change.
setName
in class ComponentHolder
value
- New name of this component holder.public JComponent makeDynamicSkin()
public void setAsActiveTab()