Program design: Difference between revisions

From FreeMind
Jump to navigationJump to search
No edit summary
(Sections defined)
Line 3: Line 3:
'''Note''': Someone should review this page every couple of versions and bring it up-to-date. This version of the page is based on the 0.9.0 code base.
'''Note''': Someone should review this page every couple of versions and bring it up-to-date. This version of the page is based on the 0.9.0 code base.


==Design Goals==
==Architecture Design==


The purpose of FreeMind is to provide an easy-to-use [http://en.wikipedia.org/wiki/Mind_map Mind Mapping] application. It is important to make the users experience with the program as easy, natural, and intuitive as possible. The interface should be uncluttered and easy to navigate.
FreeMind is a Java application that uses the Java Swing library. The basic design is based on the [http://en.wikipedia.org/wiki/Model-view-controller Model-View-Controller] model.


Need more on this from people who know more about the program.
=== Model ===
==== MindMap ====
==== MindMapNode ====
===== Filtering ====
==== Edge Models====
==== Links ====
==== Clouds ====
==== Atributes ====
===== Attribute Registry =====
==== Model Events ====


==Basic Architecture==
=== View ===
==== Components ====
===== MapView =====
===== NodeView =====
====== Edges =====
====== Link Views =====
====== Clouds =====
====== Filtered Nodes =====
====== Attribute Table ======
==== Layout Managers ====


FreeMind is a Java application that uses the Java Swing library. The basic design is based on the [http://en.wikipedia.org/wiki/Model-view-controller Model-View-Controller] model.
=== Controller ===
==== Modes ====
==== Actions ====
===== Undo Implementation =====
===== XML-Serialization =====
==== Listeners ====
==== Controller Events ====
==== Filter Controller ====


=== Configuration (Preferences) ===
=== Plug-Ins===


==GUI Design Principles==


The purpose of FreeMind is to provide an easy-to-use [http://en.wikipedia.org/wiki/Mind_map Mind Mapping] application. It is important to make the users experience with the program as easy, natural, and intuitive as possible. The interface should be uncluttered and easy to navigate.


Need more on this from people who know more about the program.


[[Category:Development]]
[[Category:Development]]

Revision as of 10:17, 11 October 2007

This page describes the current program design.

Note: Someone should review this page every couple of versions and bring it up-to-date. This version of the page is based on the 0.9.0 code base.

Architecture Design

FreeMind is a Java application that uses the Java Swing library. The basic design is based on the Model-View-Controller model.

Model

MindMap

MindMapNode

= Filtering

Edge Models

Links

Clouds

Atributes

Attribute Registry

Model Events

View

Components

MapView
NodeView
= Edges
= Link Views
= Clouds
= Filtered Nodes
Attribute Table

Layout Managers

Controller

Modes

Actions

Undo Implementation
XML-Serialization

Listeners

Controller Events

Filter Controller

Configuration (Preferences)

Plug-Ins

GUI Design Principles

The purpose of FreeMind is to provide an easy-to-use Mind Mapping application. It is important to make the users experience with the program as easy, natural, and intuitive as possible. The interface should be uncluttered and easy to navigate.

Need more on this from people who know more about the program.