| ... |
... |
@@ -34,8 +34,46 @@ |
| 34 |
34 |
|
| 35 |
35 |
= Introduction = |
| 36 |
36 |
|
|
37 |
+KIML offers interfaces to connect layout algorithms to diagram editors and viewers. The focus is on flexible configurability, which is a crucial issue for creating good layouts for different graphical languages and in different circumstances. |
|
38 |
+ |
| 37 |
37 |
=== Terminology === |
| 38 |
38 |
|
|
41 |
+//**Layout Graph**// |
|
42 |
+ |
|
43 |
+* Internal representation of the graph structure of the current diagram, built on the [[KGraph>>doc:KGraph Meta Model]] model. |
|
44 |
+ |
|
45 |
+**//Layout Algorithm//** |
|
46 |
+ |
|
47 |
+* An algorithm that takes a layout graph as input and computes positions for all elements of the graph. |
|
48 |
+ |
|
49 |
+**//Layout Provider//** |
|
50 |
+ |
|
51 |
+* A component that provides one or more layout algorithms to KIML. |
|
52 |
+ |
|
53 |
+**//Layout Option//** |
|
54 |
+ |
|
55 |
+* A customization point for layout algorithms, with a specific data type and optionally a default value. |
|
56 |
+ |
|
57 |
+**//Layout Configurator//** |
|
58 |
+ |
|
59 |
+* A component that is responsible for retrieving specific layout option values for each model element. |
|
60 |
+ |
|
61 |
+**//Layout Data//** |
|
62 |
+ |
|
63 |
+* Concrete layout data (position and size) and abstract layout data (layout options) attached to elements of the layout graph using the [[KLayoutData>>doc:KLayoutData Meta Model]] model. |
|
64 |
+ |
|
65 |
+**//Layout Type//** |
|
66 |
+ |
|
67 |
+* Classification of layout algorithms depending on their basic approach (e.g. layered, force, etc.). |
|
68 |
+ |
|
69 |
+**//Diagram Type//** |
|
70 |
+ |
|
71 |
+* Classification of graphical diagrams used to set default layout option values for all diagrams of a specific type (e.g. state machines, data flow diagrams, etc.). |
|
72 |
+ |
|
73 |
+**//Diagram Layout Manager//** |
|
74 |
+ |
|
75 |
+* The central interface for connecting diagram editors with layout algorithms. |
|
76 |
+ |
| 39 |
39 |
= User Interface[[url:http://trac.rtsys.informatik.uni-kiel.de/trac/kieler/wiki/Projects/KIML#UserInterface||style="text-decoration: none;" title="Link to this section" shape="rect" class="anchor"]] = |
| 40 |
40 |
|
| 41 |
41 |
The main user interface element of KIML is the command to layout the current diagram. This command is availabe in the main KIELER menu, in the toolbar ([[image:attach:kieler-arrange.gif]]), or using the Ctrl+R L shortcut. Additionally, an entry in the context menu allows to layout only a selected part of the diagram. |