JHotDraw 7.6

org.jhotdraw.app
Interface ApplicationModel

All Known Implementing Classes:
AbstractApplicationModel, DefaultApplicationModel, DrawApplicationModel, EmptyApplicationModel, NetApplicationModel, ODGApplicationModel, PertApplicationModel, SVGApplicationModel, TeddyApplicationModel

public interface ApplicationModel

ApplicationModel provides meta-data for an Application, actions and factory methods for creating Views, toolbars and URIChoosers.


Design Patterns

Framework
The interfaces and classes listed below together with the Action classes in the org.jhotddraw.app.action package define the contracts of a framework for document oriented applications:
Contract: Application, ApplicationModel, View.


Version:
$Id: ApplicationModel.java 717 2010-11-21 12:30:57Z rawcoder $
Author:
Werner Randelshofer.

Method Summary
 javax.swing.ActionMap createActionMap(Application a, View v)
          Creates an action map.
 URIChooser createExportChooser(Application a, View v)
          Creates an export chooser.
 URIChooser createImportChooser(Application a, View v)
          Creates an import chooser.
 URIChooser createOpenChooser(Application a, View v)
          Creates an open chooser.
 URIChooser createOpenDirectoryChooser(Application a, View v)
          Creates an open chooser for directories.
 URIChooser createSaveChooser(Application a, View v)
          Creates a save chooser.
 java.util.List<javax.swing.JToolBar> createToolBars(Application a, View v)
          Creates tool bars.
 View createView()
          Creates a new view for the application.
 void destroyApplication(Application a)
          Destroys the application.
 void destroyView(Application a, View v)
          Destroys the supplied view.
 java.lang.String getCopyright()
          Returns the copyright of the application.
 MenuBuilder getMenuBuilder()
          Returns the abstract factory for building application menus.
 java.lang.String getName()
          Returns the name of the application.
 java.lang.String getVersion()
          Returns the version of the application.
 void initApplication(Application a)
          Inits the application.
 void initView(Application a, View v)
          Inits the supplied view for the application.
 

Method Detail

getName

java.lang.String getName()
Returns the name of the application.


getVersion

java.lang.String getVersion()
Returns the version of the application.


getCopyright

java.lang.String getCopyright()
Returns the copyright of the application.


createView

View createView()
Creates a new view for the application.


initApplication

void initApplication(Application a)
Inits the application.


destroyApplication

void destroyApplication(Application a)
Destroys the application.


initView

void initView(Application a,
              View v)
Inits the supplied view for the application.


destroyView

void destroyView(Application a,
                 View v)
Destroys the supplied view.


createActionMap

javax.swing.ActionMap createActionMap(Application a,
                                      @Nullable
                                      View v)
Creates an action map.

This method is invoked once for the application, and once for each created view.

The application adds the created map to a hierarchy of action maps. Thus actions created for the application are accessible from the action maps of the views.

Parameters:
a - Application.
v - The view for which the toolbars need to be created, or null if the actions are shared by multiple views.

createToolBars

java.util.List<javax.swing.JToolBar> createToolBars(Application a,
                                                    @Nullable
                                                    View v)
Creates tool bars.

Depending on the document interface of the application, this method may be invoked only once for the application, or for each opened view.

Parameters:
a - Application.
v - The view for which the toolbars need to be created, or null if the toolbars are shared by multiple views.

getMenuBuilder

MenuBuilder getMenuBuilder()
Returns the abstract factory for building application menus.


createOpenChooser

URIChooser createOpenChooser(Application a,
                             @Nullable
                             View v)
Creates an open chooser.

Parameters:
a - Application.
v - The view for which the chooser needs to be created, or null if the chooser is shared by multiple views.

createOpenDirectoryChooser

URIChooser createOpenDirectoryChooser(Application a,
                                      @Nullable
                                      View v)
Creates an open chooser for directories.

Parameters:
a - Application.
v - The view for which the chooser needs to be created, or null if the chooser is shared by multiple views.

createSaveChooser

URIChooser createSaveChooser(Application a,
                             @Nullable
                             View v)
Creates a save chooser.

Parameters:
a - Application.
v - The view for which the chooser needs to be created, or null if the chooser is shared by multiple views.

createImportChooser

URIChooser createImportChooser(Application a,
                               @Nullable
                               View v)
Creates an import chooser.

Parameters:
a - Application.
v - The view for which the chooser needs to be created, or null if the chooser is shared by multiple views.

createExportChooser

URIChooser createExportChooser(Application a,
                               @Nullable
                               View v)
Creates an export chooser.

Parameters:
a - Application.
v - The view for which the chooser needs to be created, or null if the chooser is shared by multiple views.

Copyright 1996-2010 (c) by the authors and contributors of the JHotDraw project.
Some rights reserved.