|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.jhotdraw.application.DrawApplication
DrawApplication defines a standard presentation for standalone drawing editors. The presentation is customized in subclasses. The application is started as follows:
public static void main(String[] args) { MayDrawApp window = new MyDrawApp(); window.open(); }
Nested Class Summary |
Nested classes inherited from class javax.swing.JFrame |
javax.swing.JFrame.AccessibleJFrame |
Nested classes inherited from class java.awt.Frame |
java.awt.Frame.AccessibleAWTFrame |
Nested classes inherited from class java.awt.Window |
java.awt.Window.AccessibleAWTWindow |
Nested classes inherited from class java.awt.Container |
java.awt.Container.AccessibleAWTContainer |
Nested classes inherited from class java.awt.Component |
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
static int |
ALIGNMENT_MENU
The index of the alignment menu in the menu bar. |
static int |
ATTRIBUTES_MENU
The index of the attributes menu in the menu bar. |
static int |
EDIT_MENU
The index of the edit menu in the menu bar. |
protected static java.lang.String |
fgUntitled
|
static int |
FILE_MENU
The index of the file menu in the menu bar. |
static java.lang.String |
IMAGES
|
protected static int |
winCount
|
Fields inherited from class javax.swing.JFrame |
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled |
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 |
Fields inherited from interface javax.swing.WindowConstants |
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
DrawApplication()
Constructs a drawing window with a default title. |
|
DrawApplication(java.lang.String title)
Constructs a drawing window with the given title. |
Method Summary | |
protected void |
addListeners()
Registers the listeners for this window |
protected void |
addMenuIfPossible(javax.swing.JMenuBar mb,
javax.swing.JMenu newMenu)
|
void |
addViewChangeListener(ViewChangeListener vsl)
Register to hear when the active view is changed. |
protected void |
checkCommandMenu(CommandMenu cm)
|
protected void |
checkCommandMenus()
|
protected boolean |
closeQuery()
|
protected javax.swing.JMenu |
createAlignmentMenu()
Creates the alignment menu. |
protected DrawApplication |
createApplication()
Factory method which can be overriden by subclasses to create an instance of their type. |
protected javax.swing.JMenu |
createArrowMenu()
Creates the arrows menu. |
protected javax.swing.JMenu |
createAttributesMenu()
Creates the attributes menu and its submenus. |
protected javax.swing.JMenu |
createColorMenu(java.lang.String title,
FigureAttributeConstant attribute)
Creates the color menu. |
protected javax.swing.JMenu |
createDebugMenu()
Creates the debug menu. |
protected Tool |
createDefaultTool()
|
protected Desktop |
createDesktop()
|
protected DesktopListener |
createDesktopListener()
|
protected Drawing |
createDrawing()
Creates the drawing used in this application. |
protected DrawingView |
createDrawingView()
Creates the drawing view used in this application. |
protected DrawingView |
createDrawingView(Drawing newDrawing)
|
protected javax.swing.JMenu |
createEditMenu()
Creates the edit menu. |
protected javax.swing.JMenu |
createFileMenu()
Creates the file menu. |
protected javax.swing.JMenu |
createFontMenu()
Creates the fonts menus. |
protected javax.swing.JMenu |
createFontSizeMenu()
Creates the font size menu. |
protected javax.swing.JMenu |
createFontStyleMenu()
Creates the font style menu with entries (Plain, Italic, Bold). |
protected Iconkit |
createIconkit()
|
protected DrawingView |
createInitialDrawingView()
Create the DrawingView that is active when the application is started. |
javax.swing.JMenu |
createLookAndFeelMenu()
Create a menu which allows the user to select a different look and feel at runtime. |
protected void |
createMenus(javax.swing.JMenuBar mb)
Creates the standard menus. |
protected javax.swing.JFileChooser |
createOpenFileChooser()
Create a file chooser for the open file dialog. |
protected javax.swing.JFileChooser |
createSaveFileChooser()
Create a file chooser for the save file dialog. |
protected Tool |
createSelectionTool()
Creates the selection tool used in this editor. |
protected javax.swing.JTextField |
createStatusLine()
Creates the status line. |
StorageFormatManager |
createStorageFormatManager()
Factory method to create a StorageFormatManager for supported storage formats. |
protected ToolButton |
createToolButton(java.lang.String iconName,
java.lang.String toolName,
Tool tool)
Creates a tool button with the given image, tool, and text |
protected javax.swing.JToolBar |
createToolPalette()
Creates the tool palette. |
protected void |
createTools(javax.swing.JToolBar palette)
Creates the tools. |
protected java.awt.Dimension |
defaultSize()
Gets the default size of the window. |
protected void |
destroy()
Handles additional clean up operations. |
protected void |
endApp()
|
void |
exit()
Exits the application. |
void |
figureSelectionChanged(DrawingView view)
Fired by a view when the figure selection changes. |
protected void |
fireViewCreatedEvent(DrawingView view)
|
protected void |
fireViewDestroyingEvent(DrawingView view)
|
protected void |
fireViewSelectionChangedEvent(DrawingView oldView,
DrawingView newView)
An appropriate event is triggered and all registered observers are notified if the drawing view has been changed, e.g. by switching between several internal frames. |
java.lang.String |
getApplicationName()
Return the name of the application build from this skeleton application |
java.lang.String |
getDefaultDrawingTitle()
|
Tool |
getDefaultTool()
|
Desktop |
getDesktop()
Get the component, in which the content is embedded. |
protected DesktopListener |
getDesktopListener()
|
protected java.lang.String |
getDrawingTitle()
Return the title of the currently selected drawing |
protected java.awt.Dimension |
getDrawingViewSize()
Override to define the dimensions of the drawing view. |
protected Iconkit |
getIconkit()
|
java.lang.String[] |
getRequiredVersions()
Subclasses should override this method to specify to which versions of JHotDraw they are compatible. |
protected javax.swing.JTextField |
getStatusLine()
|
StorageFormatManager |
getStorageFormatManager()
Return the StorageFormatManager for this application.The StorageFormatManager is used when storing and restoring Drawing from the file system. |
UndoManager |
getUndoManager()
|
protected VersionControlStrategy |
getVersionControlStrategy()
|
protected void |
loadDrawing(StorageFormat restoreFormat,
java.lang.String file)
Load a Drawing from a file |
void |
newView()
Open a new view for this application containing a view of the drawing of the currently activated window. |
void |
newWindow()
|
void |
newWindow(Drawing initialDrawing)
Open a new window for this application containing the passed in drawing, or a new drawing if the passed in drawing is null. |
void |
open()
Opens a new window |
protected void |
open(DrawingView newDrawingView)
Opens a new window with a drawing view. |
void |
paletteUserOver(PaletteButton paletteButton,
boolean inside)
Handles when the mouse enters or leaves a palette button. |
void |
paletteUserSelected(PaletteButton paletteButton)
Handles a user selection in the palette. |
void |
print()
Prints the drawing. |
void |
promptNew()
Resets the drawing to a new empty drawing. |
void |
promptOpen()
Shows a file dialog and opens a drawing. |
void |
promptSaveAs()
Shows a file dialog and saves drawing. |
void |
removeViewChangeListener(ViewChangeListener vsl)
Remove listener |
protected void |
saveDrawing(StorageFormat storeFormat,
java.lang.String file)
Save a Drawing in a file |
void |
setApplicationName(java.lang.String applicationName)
Set the name of the application build from this skeleton application |
protected void |
setDefaultTool(Tool newDefaultTool)
|
protected void |
setDesktop(Desktop newDesktop)
|
protected void |
setDesktopListener(DesktopListener desktopPaneListener)
|
protected void |
setDrawingTitle(java.lang.String drawingTitle)
Set the title of the currently selected drawing |
protected void |
setIconkit(Iconkit newIconkit)
|
protected void |
setStorageFormatManager(StorageFormatManager newStorageFormatManager)
Set the StorageFormatManager. |
void |
setTool(Tool t,
java.lang.String name)
Note: it is inconsistent to directly assign a variable but when using it use it from a method. |
protected void |
setUndoManager(UndoManager newUndoManager)
|
protected void |
setView(DrawingView newView)
|
void |
showStatus(java.lang.String string)
Shows a status message. |
Tool |
tool()
Gets the current tool. |
void |
toolDone()
Sets the default tool of the editor. |
DrawingView |
view()
Retrieve the active view from the window Gets the current drawing view. |
DrawingView[] |
views()
|
Methods inherited from class javax.swing.JFrame |
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update |
Methods inherited from class java.awt.Frame |
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated |
Methods inherited from class java.awt.Window |
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, 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, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, transferFocusBackward, 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, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, 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, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.awt.MenuContainer |
getFont, postEvent |
Field Detail |
protected static java.lang.String fgUntitled
public static final java.lang.String IMAGES
protected static int winCount
public static final int FILE_MENU
public static final int EDIT_MENU
public static final int ALIGNMENT_MENU
public static final int ATTRIBUTES_MENU
Constructor Detail |
public DrawApplication()
public DrawApplication(java.lang.String title)
Method Detail |
protected DrawApplication createApplication()
public void newView()
public void newWindow(Drawing initialDrawing)
public final void newWindow()
public void open()
protected void open(DrawingView newDrawingView)
protected void addListeners()
protected void createMenus(javax.swing.JMenuBar mb)
protected void addMenuIfPossible(javax.swing.JMenuBar mb, javax.swing.JMenu newMenu)
protected javax.swing.JMenu createFileMenu()
protected javax.swing.JMenu createEditMenu()
protected javax.swing.JMenu createAlignmentMenu()
protected javax.swing.JMenu createDebugMenu()
protected javax.swing.JMenu createAttributesMenu()
protected javax.swing.JMenu createColorMenu(java.lang.String title, FigureAttributeConstant attribute)
protected javax.swing.JMenu createArrowMenu()
protected javax.swing.JMenu createFontMenu()
protected javax.swing.JMenu createFontStyleMenu()
protected javax.swing.JMenu createFontSizeMenu()
public javax.swing.JMenu createLookAndFeelMenu()
protected javax.swing.JToolBar createToolPalette()
protected void createTools(javax.swing.JToolBar palette)
palette
- the palette where the tools are added.protected Tool createSelectionTool()
protected Tool createDefaultTool()
protected void setDefaultTool(Tool newDefaultTool)
public Tool getDefaultTool()
protected ToolButton createToolButton(java.lang.String iconName, java.lang.String toolName, Tool tool)
protected DrawingView createDrawingView()
protected DrawingView createDrawingView(Drawing newDrawing)
protected DrawingView createInitialDrawingView()
protected java.awt.Dimension getDrawingViewSize()
protected Drawing createDrawing()
protected Desktop createDesktop()
protected void setDesktop(Desktop newDesktop)
public Desktop getDesktop()
public StorageFormatManager createStorageFormatManager()
protected final void setStorageFormatManager(StorageFormatManager newStorageFormatManager)
public StorageFormatManager getStorageFormatManager()
protected java.awt.Dimension defaultSize()
protected javax.swing.JTextField createStatusLine()
protected javax.swing.JTextField getStatusLine()
public void paletteUserSelected(PaletteButton paletteButton)
paletteUserSelected
in interface PaletteListener
PaletteListener
public void paletteUserOver(PaletteButton paletteButton, boolean inside)
paletteUserOver
in interface PaletteListener
PaletteListener
public Tool tool()
tool
in interface DrawingEditor
DrawingEditor
public DrawingView view()
view
in interface DrawingEditor
DrawingEditor
protected void setView(DrawingView newView)
public DrawingView[] views()
views
in interface DrawingEditor
public void toolDone()
toolDone
in interface DrawingEditor
DrawingEditor
public void figureSelectionChanged(DrawingView view)
figureSelectionChanged
in interface DrawingEditor
DrawingEditor
protected void checkCommandMenus()
protected void checkCommandMenu(CommandMenu cm)
public void addViewChangeListener(ViewChangeListener vsl)
addViewChangeListener
in interface DrawingEditor
public void removeViewChangeListener(ViewChangeListener vsl)
removeViewChangeListener
in interface DrawingEditor
protected void fireViewSelectionChangedEvent(DrawingView oldView, DrawingView newView)
protected void fireViewCreatedEvent(DrawingView view)
protected void fireViewDestroyingEvent(DrawingView view)
public void showStatus(java.lang.String string)
showStatus
in interface DrawingEditor
DrawingEditor
public void setTool(Tool t, java.lang.String name)
public void exit()
protected boolean closeQuery()
protected void endApp()
protected void destroy()
public void promptNew()
public void promptOpen()
public void promptSaveAs()
protected javax.swing.JFileChooser createOpenFileChooser()
protected javax.swing.JFileChooser createSaveFileChooser()
public void print()
protected void saveDrawing(StorageFormat storeFormat, java.lang.String file)
protected void loadDrawing(StorageFormat restoreFormat, java.lang.String file)
protected void setDrawingTitle(java.lang.String drawingTitle)
protected java.lang.String getDrawingTitle()
public void setApplicationName(java.lang.String applicationName)
public java.lang.String getApplicationName()
protected void setUndoManager(UndoManager newUndoManager)
public UndoManager getUndoManager()
getUndoManager
in interface DrawingEditor
protected VersionControlStrategy getVersionControlStrategy()
public java.lang.String[] getRequiredVersions()
getRequiredVersions
in interface VersionRequester
public java.lang.String getDefaultDrawingTitle()
protected DesktopListener getDesktopListener()
protected void setDesktopListener(DesktopListener desktopPaneListener)
protected DesktopListener createDesktopListener()
protected Iconkit createIconkit()
protected void setIconkit(Iconkit newIconkit)
protected Iconkit getIconkit()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |