ptolemy.actor.gui
Class BrowserEffigy

java.lang.Object
  extended by ptolemy.kernel.util.NamedObj
      extended by ptolemy.kernel.InstantiableNamedObj
          extended by ptolemy.kernel.Entity
              extended by ptolemy.kernel.ComponentEntity
                  extended by ptolemy.kernel.CompositeEntity
                      extended by ptolemy.actor.gui.Effigy
                          extended by ptolemy.actor.gui.BrowserEffigy
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable

public class BrowserEffigy
extends Effigy

An effigy for a web browser.

We invoke the user's web browser for certain files such as pdf files

Since:
Ptolemy II 2.0
Version:
$Id: BrowserEffigy.java 57040 2010-01-27 20:52:32Z cxh $
Author:
Christopher Hylands
See Also:
Serialized Form
Accepted Rating:
Red (cxh)
Proposed Rating:
Red (cxh)

Nested Class Summary
static class BrowserEffigy.Factory
          A factory for creating new effigies.
 
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntity
CompositeEntity.ContainedObjectsIterator
 
Field Summary
static BrowserEffigy.Factory staticFactory
          A reference to the most recently created factor for this effigy.
 
Fields inherited from class ptolemy.actor.gui.Effigy
identifier, uri
 
Fields inherited from class ptolemy.kernel.CompositeEntity
_levelCrossingLinks
 
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
 
Constructor Summary
BrowserEffigy(CompositeEntity container, java.lang.String name)
          Create a new effigy in the given directory with the given name.
BrowserEffigy(Workspace workspace)
          Create a new effigy in the specified workspace with an empty string for its name.
 
Method Summary
static BrowserEffigy newBrowserEffigy(CompositeEntity container, java.net.URL base, java.net.URL in)
          Create a new effigy in the given container by reading the specified URL.
 
Methods inherited from class ptolemy.actor.gui.Effigy
_checkContainer, _removeEntity, attributeChanged, closeTableaux, getTableauFactory, getWritableFile, isModifiable, isModified, isSystemEffigy, masterEffigy, numberOfOpenTableaux, setContainer, setModifiable, setModified, setSystemEffigy, setTableauFactory, showTableaux, topEffigy, writeFile
 
Methods inherited from class ptolemy.kernel.CompositeEntity
_addEntity, _addRelation, _adjustDeferrals, _deepOpaqueEntityList, _description, _exportMoMLContents, _finishedAddEntity, _recordDecoratedAttributes, _removeRelation, _validateSettables, allAtomicEntityList, allCompositeEntityList, allowLevelCrossingConnect, classDefinitionList, clone, connect, connect, containedObjectsIterator, deepEntityList, deepGetEntities, deepOpaqueEntityList, deepRelationSet, entityList, entityList, exportLinks, exportMoML, getAttribute, getEntities, getEntity, getPort, getRelation, getRelations, isAtomic, isOpaque, lazyAllAtomicEntityList, lazyAllCompositeEntityList, lazyClassDefinitionList, lazyDeepEntityList, lazyEntityList, lazyRelationList, newRelation, numberOfEntities, numberOfRelations, numEntities, numRelations, relationList, removeAllEntities, removeAllRelations, setClassDefinition, statistics, uniqueName
 
Methods inherited from class ptolemy.kernel.ComponentEntity
_addPort, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, newPort, propagateExistence, setName
 
Methods inherited from class ptolemy.kernel.Entity
_removePort, connectedPortList, connectedPorts, connectionsChanged, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts
 
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
 
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeList, attributeList, attributeTypeChanged, clone, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
 
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getDisplayName, getFullName, getName, getName
 

Field Detail

staticFactory

public static BrowserEffigy.Factory staticFactory
A reference to the most recently created factor for this effigy. This is provided for use by HTMLViewer when following hyperlinks that specify that they should be opened by a browser.

Constructor Detail

BrowserEffigy

public BrowserEffigy(Workspace workspace)
Create a new effigy in the specified workspace with an empty string for its name.

Parameters:
workspace - The workspace for this effigy.

BrowserEffigy

public BrowserEffigy(CompositeEntity container,
                     java.lang.String name)
              throws IllegalActionException,
                     NameDuplicationException
Create a new effigy in the given directory with the given name.

Parameters:
container - The directory that contains this effigy.
name - The name of this effigy.
Throws:
IllegalActionException - If the entity cannot be contained by the proposed container.
NameDuplicationException - If the name coincides with an entity already in the container.
Method Detail

newBrowserEffigy

public static BrowserEffigy newBrowserEffigy(CompositeEntity container,
                                             java.net.URL base,
                                             java.net.URL in)
                                      throws java.lang.Exception
Create a new effigy in the given container by reading the specified URL. If the specified URL is null, then create a blank effigy. The extension of the URL is not checked, so this will open any file. The new effigy will have a new instance of DefaultStyledDocument associated with it.

Parameters:
container - The container for the effigy.
base - The base for relative file references, or null if there are no relative file references. This is ignored in this class.
in - The input URL.
Returns:
A new instance of BrowserEffigy.
Throws:
java.lang.Exception - If the URL cannot be read, or if the data is malformed in some way.