Package ptolemy.actor.gui
Class PlotTableauFrame
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- ptolemy.gui.Top
-
- ptolemy.actor.gui.TableauFrame
-
- ptolemy.actor.gui.PlotTableauFrame
-
- All Implemented Interfaces:
java.awt.event.WindowFocusListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.awt.print.Printable
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
,ImageExportable
,StatusHandler
public class PlotTableauFrame extends TableauFrame implements java.awt.print.Printable, ImageExportable
PlotTableauFrame is a version of PlotFrame in the plot package that works more closely with the Ptolemy actor.gui infrastructure. In particular, the File menu commands will open Ptolemy models and HTML files, not just PlotML files. It contains an instance of PlotBox. If not specified in the constructor, the default is to contain a Plot object, where Plot extends PlotBox. This field is set once in the constructor and immutable afterwards.- Since:
- Ptolemy II 2.1
- Version:
- $Id$
- Author:
- Edward A. Lee
- See Also:
Plot
,PlotBox
, Serialized Form- Pt.AcceptedRating:
- Yellow (cxh)
- Pt.ProposedRating:
- Yellow (cxh)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
PlotTableauFrame.ExportImageAction
Export an image of a plot.-
Nested classes/interfaces inherited from class ptolemy.actor.gui.TableauFrame
TableauFrame.MenuItemListener
-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected java.io.File
_directory
Directory that contains the input file.protected javax.swing.JMenu
_editMenu
Edit menu for this frame.protected javax.swing.Action
_exportGIFAction
The export to GIF action.protected javax.swing.Action
_exportPDFAction
The export to PDF action.protected javax.swing.Action
_exportPNGAction
The export to PNG action.protected java.io.File
_file
The input file.protected javax.swing.JMenu
_specialMenu
Special menu for this frame.PlotBox
plot
The plot object held by this frame.-
Fields inherited from class ptolemy.actor.gui.TableauFrame
_initialSaveAsFileName, _topPack, _viewMenu, aboutFile, helpFile
-
Fields inherited from class ptolemy.gui.Top
_CANCELED, _debugClosing, _DISCARDED, _exitResult, _EXPORT_MENU_INDEX, _FAILED, _fileFilter, _fileMenu, _fileMenuItems, _filenameFilter, _helpMenu, _helpMenuItems, _IMPORT_MENU_INDEX, _menubar, _NEW_MENU_INDEX, _SAVED, _statusBar, MAXIMUM_STATUS_MESSAGE_TIME
-
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description PlotTableauFrame()
Construct a plot frame with a default title and by default contains an instance of Plot.PlotTableauFrame(Tableau tableau)
Construct a plot frame in the corresponding Tableau with the specified instance of PlotBox.PlotTableauFrame(Tableau tableau, PlotBox plotBox)
Construct a plot frame with the specified title and by default contains an instance of Plot.PlotTableauFrame(Tableau tableau, PlotBox plotBox, Placeable placeable)
Construct a plot frame with the specified title and by default contains an instance of Plot.PlotTableauFrame(Tableau tableau, PlotBox plotBox, PortablePlaceable placeable)
Construct a plot frame with the specified title and by default contains an instance of Plot.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
_addMenus()
Create the menus that are used by this frame.protected boolean
_clear()
Clear the current plot.protected javax.swing.JMenuItem[]
_createFileMenuItems()
Create the items in the File menu's Export section This method adds a menu items to export images of the plot in GIF, PNG, and possibly PDF.protected void
_editFormat()
Interactively edit the file format in a modal dialog.protected void
_export()
Query the user for a filename and export the plot to that file.protected void
_help()
Display more detailed information than given by _about().protected void
_writeFile(java.io.File file)
Write the plot to the specified file in PlotML syntax.void
dispose()
Dispose of this frame.int
print(java.awt.Graphics graphics, java.awt.print.PageFormat format, int index)
Print the plot to a printer, which is represented by the specified graphics object.void
samplePlot()
Create a sample plot.void
writeImage(java.io.OutputStream stream, java.lang.String format)
Write an image to the specified output stream in the specified format.-
Methods inherited from class ptolemy.actor.gui.TableauFrame
_about, _close, _confirmFile, _exit, _getDefaultIconImage, _getName, _read, _save, _saveAs, _saveAs, _saveAsHelper, getAlternateTopPack, getConfiguration, getDirectory, getEffigy, getEffigy, getTableau, isModified, pack, printPDF, setModified, setTableau
-
Methods inherited from class ptolemy.gui.Top
_getCurrentDirectory, _open, _openURL, _populateHistory, _print, _printCrossPlatform, _printNative, _printPDF, _queryForSave, _saveAsFileDialog, _saveAsFileDialogComponent, _saveAsJFileChooserComponent, _updateHistory, about, centerOnScreen, close, deferIfNecessary, exit, getCentering, getContentSize, hideMenuBar, isDisposed, isMenuPopulated, report, report, report, setBackground, setCentering, setDirectory, show, status, windowGainedFocus, windowLostFocus
-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, toBack, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
plot
public final PlotBox plot
The plot object held by this frame.
-
_directory
protected java.io.File _directory
Directory that contains the input file.
-
_exportPDFAction
protected javax.swing.Action _exportPDFAction
The export to PDF action.
-
_editMenu
protected javax.swing.JMenu _editMenu
Edit menu for this frame.
-
_exportGIFAction
protected javax.swing.Action _exportGIFAction
The export to GIF action.
-
_exportPNGAction
protected javax.swing.Action _exportPNGAction
The export to PNG action.
-
_file
protected java.io.File _file
The input file.
-
_specialMenu
protected javax.swing.JMenu _specialMenu
Special menu for this frame.
-
-
Constructor Detail
-
PlotTableauFrame
public PlotTableauFrame()
Construct a plot frame with a default title and by default contains an instance of Plot. After constructing this, it is necessary to call setVisible(true) to make the plot appear.
-
PlotTableauFrame
public PlotTableauFrame(Tableau tableau)
Construct a plot frame in the corresponding Tableau with the specified instance of PlotBox. After constructing this, it is necessary to call setVisible(true) to make the plot appear.- Parameters:
tableau
- The tableau where the window is placed
-
PlotTableauFrame
public PlotTableauFrame(Tableau tableau, PlotBox plotBox)
Construct a plot frame with the specified title and by default contains an instance of Plot. After constructing this, it is necessary to call setVisible(true) to make the plot appear.- Parameters:
tableau
- The tableau where the window is placed.plotBox
- the plot object to put in the frame, or null to create an instance of Plot.
-
PlotTableauFrame
public PlotTableauFrame(Tableau tableau, PlotBox plotBox, Placeable placeable)
Construct a plot frame with the specified title and by default contains an instance of Plot. After constructing this, it is necessary to call setVisible(true) to make the plot appear.- Parameters:
tableau
- The tableau where the window is placed.plotBox
- the plot object to put in the frame, or null to create an instance of Plot.placeable
- The associated plot actor, or null if none.
-
PlotTableauFrame
public PlotTableauFrame(Tableau tableau, PlotBox plotBox, PortablePlaceable placeable)
Construct a plot frame with the specified title and by default contains an instance of Plot. After constructing this, it is necessary to call setVisible(true) to make the plot appear.- Parameters:
tableau
- The tableau where the window is placed.plotBox
- the plot object to put in the frame, or null to create an instance of Plot.placeable
- The associated plot actor, or null if none.
-
-
Method Detail
-
print
public int print(java.awt.Graphics graphics, java.awt.print.PageFormat format, int index) throws java.awt.print.PrinterException
Print the plot to a printer, which is represented by the specified graphics object.- Specified by:
print
in interfacejava.awt.print.Printable
- Parameters:
graphics
- The context into which the page is drawn.format
- The size and orientation of the page being drawn.index
- The zero based index of the page to be drawn.- Returns:
- PAGE_EXISTS if the page is rendered successfully, or NO_SUCH_PAGE if pageIndex specifies a non-existent page.
- Throws:
java.awt.print.PrinterException
- If the print job is terminated.
-
samplePlot
public void samplePlot()
Create a sample plot.
-
dispose
public void dispose()
Dispose of this frame.Override this dispose() method to unattach any listeners that may keep this model from getting garbage collected. This method invokes the dispose() method of the superclass,
Top
.- Overrides:
dispose
in classTableauFrame
-
writeImage
public void writeImage(java.io.OutputStream stream, java.lang.String format) throws java.awt.print.PrinterException, java.io.IOException
Write an image to the specified output stream in the specified format. Supported formats include at least "gif" and "png", standard image file formats. The image is a rendition of the current view of the model.- Specified by:
writeImage
in interfaceImageExportable
- Parameters:
stream
- The output stream to write to.format
- The image format to generate.- Throws:
java.io.IOException
- If writing to the stream fails.java.awt.print.PrinterException
- If the specified format is not supported.
-
_addMenus
protected void _addMenus()
Create the menus that are used by this frame.- Overrides:
_addMenus
in classTableauFrame
-
_clear
protected boolean _clear()
Clear the current plot. This class checks to see whether the contents have been modified, and if so, then prompts the user to save them. A return value of false indicates that the user has canceled the action.
-
_createFileMenuItems
protected javax.swing.JMenuItem[] _createFileMenuItems()
Create the items in the File menu's Export section This method adds a menu items to export images of the plot in GIF, PNG, and possibly PDF.- Overrides:
_createFileMenuItems
in classTop
- Returns:
- The items in the File menu.
-
_editFormat
protected void _editFormat()
Interactively edit the file format in a modal dialog.
-
_export
protected void _export()
Query the user for a filename and export the plot to that file. Currently, the only supported format is EPS.
-
_help
protected void _help()
Display more detailed information than given by _about().- Overrides:
_help
in classTableauFrame
- See Also:
FileParameter
-
_writeFile
protected void _writeFile(java.io.File file) throws java.io.IOException
Write the plot to the specified file in PlotML syntax.- Overrides:
_writeFile
in classTableauFrame
- Parameters:
file
- The file to which to write.- Throws:
java.io.IOException
- If the write fails.
-
-