JHotDraw 7.0.9

org.jhotdraw.samples.svg
Class SVGProject

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.jhotdraw.app.AbstractProject
                      extended by org.jhotdraw.samples.svg.SVGProject
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, ExportableProject, Project

public class SVGProject
extends AbstractProject
implements ExportableProject

A drawing project.

Version:
1.2 2006-12-10 Used SVGStorage for reading SVG drawing (experimental).
1.1 2006-06-10 Extended to support DefaultDrawApplicationModel.
1.0 2006-02-07 Created.
Author:
Werner Randelshofer
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JFileChooser exportChooser
           
 
Fields inherited from class org.jhotdraw.app.AbstractProject
executor, file, openChooser, saveChooser
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SVGProject()
          Creates a new Project.
 
Method Summary
 void clear()
          Clears the project.
protected  Drawing createDrawing()
          Creates a new Drawing for this Project.
protected  javax.swing.JFileChooser createExportChooser()
           
protected  javax.swing.JFileChooser createOpenChooser()
           
 java.awt.print.Pageable createPageable()
          Creates a Pageable object for printing the project.
protected  javax.swing.JFileChooser createSaveChooser()
           
 void export(java.io.File f, javax.swing.filechooser.FileFilter filter, java.awt.Component accessory)
          Exports the project.
 Drawing getDrawing()
           
 DrawingEditor getDrawingEditor()
          Gets the drawing editor of the project.
 DrawingEditor getEditor()
           
 javax.swing.JFileChooser getExportChooser()
          Gets the file chooser for exporting the project.
 double getScaleFactor()
           
 void init()
          Initializes the project.
 boolean isGridVisible()
           
 boolean isPropertiesPanelVisible()
           
 void read(java.io.File f)
          Reads the project from the specified file.
 void setEditor(DrawingEditor newValue)
           
 void setEnabled(boolean newValue)
          Sets the enabled state of the project.
 void setGridVisible(boolean newValue)
           
protected  void setHasUnsavedChanges(boolean newValue)
           
 void setPropertiesPanelVisible(boolean newValue)
           
 void setScaleFactor(double newValue)
           
 void write(java.io.File f)
          Writes the project to the specified file.
 
Methods inherited from class org.jhotdraw.app.AbstractProject
dispose, execute, getAction, getApplication, getComponent, getFile, getMultipleOpenId, getOpenChooser, getSaveChooser, hasUnsavedChanges, isShowing, markChangesAsSaved, putAction, setApplication, setFile, setMultipleOpenId, setShowing
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, 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, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jhotdraw.app.Project
addPropertyChangeListener, dispose, execute, getAction, getApplication, getComponent, getFile, getMultipleOpenId, getOpenChooser, getSaveChooser, hasUnsavedChanges, isEnabled, isShowing, markChangesAsSaved, putAction, removePropertyChangeListener, setApplication, setFile, setMultipleOpenId, setShowing
 

Field Detail

exportChooser

protected javax.swing.JFileChooser exportChooser
Constructor Detail

SVGProject

public SVGProject()
Creates a new Project.

Method Detail

init

public void init()
Initializes the project.

Specified by:
init in interface Project
Overrides:
init in class AbstractProject

createDrawing

protected Drawing createDrawing()
Creates a new Drawing for this Project.


createPageable

public java.awt.print.Pageable createPageable()
Creates a Pageable object for printing the project.


getEditor

public DrawingEditor getEditor()

setEditor

public void setEditor(DrawingEditor newValue)

setHasUnsavedChanges

protected void setHasUnsavedChanges(boolean newValue)
Overrides:
setHasUnsavedChanges in class AbstractProject

write

public void write(java.io.File f)
           throws java.io.IOException
Writes the project to the specified file.

Specified by:
write in interface Project
Throws:
java.io.IOException

read

public void read(java.io.File f)
          throws java.io.IOException
Reads the project from the specified file.

Specified by:
read in interface Project
Throws:
java.io.IOException

getDrawingEditor

public DrawingEditor getDrawingEditor()
Gets the drawing editor of the project.


getDrawing

public Drawing getDrawing()

setEnabled

public void setEnabled(boolean newValue)
Description copied from interface: Project
Sets the enabled state of the project. The enabled state is used to prevent parallel invocation of actions on the project. If an action consists of a sequential part and a concurrent part, it must disable the project only for the sequential part. Actions that act on the project must check in their actionPerformed method whether the project is enabled. If the project is disabled, they must do nothing. If the project is enabled, they must disable the project, perform the action and then enable the project again. This is a bound property.

Specified by:
setEnabled in interface Project
Overrides:
setEnabled in class javax.swing.JComponent

setPropertiesPanelVisible

public void setPropertiesPanelVisible(boolean newValue)

isPropertiesPanelVisible

public boolean isPropertiesPanelVisible()

clear

public void clear()
Clears the project.

Specified by:
clear in interface Project

createOpenChooser

protected javax.swing.JFileChooser createOpenChooser()
Overrides:
createOpenChooser in class AbstractProject

createSaveChooser

protected javax.swing.JFileChooser createSaveChooser()
Overrides:
createSaveChooser in class AbstractProject

createExportChooser

protected javax.swing.JFileChooser createExportChooser()

getExportChooser

public javax.swing.JFileChooser getExportChooser()
Description copied from interface: ExportableProject
Gets the file chooser for exporting the project.

Specified by:
getExportChooser in interface ExportableProject

export

public void export(java.io.File f,
                   javax.swing.filechooser.FileFilter filter,
                   java.awt.Component accessory)
            throws java.io.IOException
Description copied from interface: ExportableProject
Exports the project. By convention this method is never invoked on the AWT Event Dispatcher Thread.

Specified by:
export in interface ExportableProject
Parameters:
f - The file to which export the project.
filter - The FileFilter that was used to choose the file. This can be null.
accessory - The Accessory used by the JFileChooser. This can be null.
Throws:
java.io.IOException

setGridVisible

public void setGridVisible(boolean newValue)

isGridVisible

public boolean isGridVisible()

getScaleFactor

public double getScaleFactor()

setScaleFactor

public void setScaleFactor(double newValue)

Copyright 1996-2007 (c) JHotDraw.org.
Some rights reserved.