|
JHotDraw 7.4.1 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface Application
An application handles the lifecycle of View objects and
provides windows to present them on screen.
An application owns a ApplicationModel which provides meta-data about
the application, actions and factory methods for creating the views.
Depending on the document interface style used by the application, an application can handle multiple views at the same time, or only one.
Typical document interface styles are the Single Document Interface (SDI),
the Multiple Document Interface (MDI) and the Mac OS X Application Document
Interface (OSX). Typically, for each of these styles an implementation of
Application exists.
Typical usage of this class:
public class MyMainClass {
public static void main(String[] args) {
Application app = new SDIApplication(); // or OSXApplication(), MDIApplication().
DefaultApplicationModel model = new DefaultApplicationModel();
model.setName("MyApplication");
model.setVersion("1.0");
model.setCopyright("Copyright 2006 (c) Werner Randelshofer. All Rights Reserved.");
model.setViewClassName("org.jhotdraw.myapplication.MyView");
app.setModel(model);
app.launch(args);
}
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.
| Field Summary | |
|---|---|
static java.lang.String |
ACTIVE_VIEW_PROPERTY
The property name of the activeView property. |
static java.lang.String |
RECENT_URIS_PROPERTY
The property name of the recentURIs property. |
| Method Summary | |
|---|---|
void |
add(View p)
Adds a view to this application. |
void |
addPalette(java.awt.Window palette)
Adds a palette window to the application. |
void |
addPropertyChangeListener(java.beans.PropertyChangeListener l)
Adds a property change listener. |
void |
addRecentURI(java.net.URI uri)
Appends a URI to the list of recent URIs. |
void |
addWindow(java.awt.Window window,
View view)
Adds a (non-palette) window to the application. |
void |
clearRecentURIs()
Clears the list of recent URIs. |
void |
configure(java.lang.String[] args)
Configures the application using the provided arguments array. |
javax.swing.JMenu |
createEditMenu(View v)
Creates an edit menu for the specified view. |
javax.swing.JMenu |
createFileMenu(View v)
Creates a file menu for the specified view. |
javax.swing.JMenu |
createHelpMenu(View v)
Creates a help menu for the specified view. |
View |
createView()
Creates a new view for this application and initializes it, by calling View.init(). |
javax.swing.JMenu |
createViewMenu(View v)
Creates a view menu for the specified view. |
javax.swing.JMenu |
createWindowMenu(View v)
Creates a window menu for the specified view. |
void |
destroy()
Destroys the application and calls System.exit(0). |
void |
dispose(View p)
This is a convenience method for removing a view and disposing it. |
javax.swing.ActionMap |
getActionMap(View v)
Gets the action map. |
View |
getActiveView()
Returns the active view. |
java.awt.Component |
getComponent()
Returns the application component. |
java.lang.String |
getCopyright()
Returns the copyright of the application. |
URIChooser |
getExportChooser(View v)
Gets the export chooser. |
URIChooser |
getImportChooser(View v)
Gets the import chooser. |
ApplicationModel |
getModel()
Returns the application model. |
java.lang.String |
getName()
Returns the name of the application. |
URIChooser |
getOpenChooser(View v)
Gets the open chooser. |
java.util.List<java.net.URI> |
getRecentURIs()
Returns the recently opened URIs. |
URIChooser |
getSaveChooser(View v)
Gets the save chooser. |
java.lang.String |
getVersion()
Returns the version of the application. |
void |
hide(View p)
Hides a view. |
void |
init()
Initializes the application. |
boolean |
isEnabled()
Returns the enabled state of the application. |
boolean |
isSharingToolsAmongViews()
Returns true, if this application shares tools among multiple views. |
void |
launch(java.lang.String[] args)
Launches the application from the main method. |
void |
remove(View p)
Removes a view from this application and removes it from the users view. |
void |
removePalette(java.awt.Window palette)
Removes a palette window from the application. |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener l)
Removes a property change listener. |
void |
removeWindow(java.awt.Window window)
Removes a (non-palette) window from the application. |
void |
setEnabled(boolean newValue)
Sets the enabled state of the application. |
void |
setModel(ApplicationModel newValue)
Sets the application model. |
void |
show(View p)
Shows a view. |
void |
start()
Starts the application. |
void |
stop()
Stops the application without saving any unsaved views. |
java.util.Collection<View> |
views()
Returns a read only collection view of the views of this application. |
| Field Detail |
|---|
static final java.lang.String ACTIVE_VIEW_PROPERTY
static final java.lang.String RECENT_URIS_PROPERTY
| Method Detail |
|---|
void launch(java.lang.String[] args)
void configure(java.lang.String[] args)
void init()
configure() should have been invoked before the application
is inited. Alternatively an application can be configured using setter
methods.
void start()
init() must have been invoked before the application is started.
void stop()
init() must have been invoked before the application is stopped.
void destroy()
View createView()
View.init().
void add(View p)
void remove(View p)
void show(View p)
void hide(View p)
void dispose(View p)
java.util.Collection<View> views()
View getActiveView()
This is a bound property.
boolean isEnabled()
void setEnabled(boolean newValue)
void addPropertyChangeListener(java.beans.PropertyChangeListener l)
void removePropertyChangeListener(java.beans.PropertyChangeListener l)
java.lang.String getName()
java.lang.String getVersion()
java.lang.String getCopyright()
void setModel(ApplicationModel newValue)
ApplicationModel getModel()
boolean isSharingToolsAmongViews()
java.awt.Component getComponent()
void addPalette(java.awt.Window palette)
void removePalette(java.awt.Window palette)
void addWindow(java.awt.Window window,
View view)
window - The window.view - The View to which this window is associated, or null
if the window is associated to the application.void removeWindow(java.awt.Window window)
java.util.List<java.net.URI> getRecentURIs()
void addRecentURI(java.net.URI uri)
void clearRecentURIs()
javax.swing.JMenu createFileMenu(View v)
javax.swing.JMenu createEditMenu(View v)
javax.swing.JMenu createViewMenu(View v)
javax.swing.JMenu createWindowMenu(View v)
javax.swing.JMenu createHelpMenu(View v)
URIChooser getOpenChooser(View v)
v - View or null for application-wide chooser.URIChooser getSaveChooser(View v)
v - View or null for application-wide chooser.URIChooser getExportChooser(View v)
v - View or null for application-wide chooser.URIChooser getImportChooser(View v)
v - View or null for application-wide chooser.javax.swing.ActionMap getActionMap(View v)
v - View or null for application-wide action map.
|
Copyright 1996-2010 (c) by the authors and contributors of the JHotDraw project. Some rights reserved. |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||