- Purpose
- to provide the entry point when starting ArgoUML. Responsibility to start the ball rolling.
- Located
org.argouml.application
- Layer
Public API
The entry point is called org.argouml.application.Main.
Design of the subsystem
What is loaded/initialized?
It all begins in org.argouml.application.Main: set up main application frame (org.argouml.ui.ProjectBrowser), the project (org.argouml.kernel.Project), numerous classes, and finally as a background thread: cognitive support (org.argouml.cognitive.Designer) and some more classes.
The ProjectBrowser initializes the menu, tool-bar, status bar and the four main areas: navigation pane (org.argouml.ui.NavigatorPane), editor pane (org.argouml.ui.MultiEditorPane), to do pane (org.argouml.cognitive.ui.ToDoPane), and details pane (org.argouml.ui.DetailsPane). Then, the actual project is set to either a read from project file or a create newly generated project.
Details pane
The Details pane contains several tabs: Property Panels (See <<Subsystem>> Property panels, Critics explanations and wizards (belonging to the Critics subsystem) (See <<Subsystem>> Critics and other cognitive tools), Documentation, Style, Source, Constraints (OCL constraints on the current object. See <<Subsystem>> OCL), and Tagged values.
It is not clear in what subsystem Documentation, Style, Source, and Tagged values belong.
How do I ...?
...add a tab in the Details Panel?
Create your TabXXX class in org.argouml.uml.ui by copying from another TabYYY.java (e.g. TabSrc, TabStyle). Then register your TabXXX in org/argouml/argo.ini by adding a line giving the compass point to place the tab. Like -
south: TabXXX
...remove a tab from the Details Panel?
Remove the line for the tab from org/argouml/argo.ini.