/[debian]/libjgraph-java/trunk/README
ViewVC logotype

Annotation of /libjgraph-java/trunk/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 443 - (hide annotations)
Sat Nov 25 17:52:34 2006 UTC (14 years, 5 months ago) by gregoa
File size: 9833 byte(s)
[svn-inject] Forking libjgraph-java source to Trunk
1 gregoa 441 JGraph - The JFC/Swing Graph Component (c)2001-2006
2    
3     A component to display and edit graphs (networks) with Java
4    
5     by Gaudenz Alder
6    
7    
8     TABLE OF CONTENTS
9     *****************
10    
11     1. Disclaimer
12     2. Installation
13     2.1 Requirements
14     2.2 Compiling
15     2.3 Obtaining a Java 1.3 Release
16     3. What is it?
17     3.1 Purpose
18     3.2 Features
19     3.3 History
20     4. Overview
21     4.1 Implementation
22     4.2 Architecture
23     5. Getting Help
24     5.1 Documentation
25     5.2 Support
26     6. Obtaining JGraph
27     6.1 Binaries
28     6.2 Source Code
29     7. Misc
30     7.1 Tips and tricks
31     7.2 Showcase
32     8. License
33     9. Contact Email
34    
35    
36    
37     1. Disclaimer
38     -------------
39     Please read the license under which your version of JGraph is licensed for any
40     warranty limitation.
41    
42    
43     2. Installation
44     ---------------
45    
46     2.1 Requirements
47     ----------------
48     o JGraph for Java 1.3 requires a Java 1.3 or later compatible virtual
49     machine for your operating system.
50     o JGraph for Java 1.4 requires a Java 1.4 or later compatible virtual
51     machine for your operating system.
52     Java 1.5.x is known to work correctly.
53     o Apache Ant.
54    
55     The most recent version of Java can be obtained from http://java.sun.com/j2se/
56     Compiling JGraph requires Ant. To obtain Ant go to http://ant.apache.org/
57     and select Binary Distributions of the left hand side navigation. Select the
58     nearest mirror then download the compressed file appropriate for your platform
59     (.zip for Windows and .tar.gz for UNIX). Then decompress the file into your
60     selected directory path for the Ant binaries.
61    
62     2.2 Compiling
63     -------------
64     The project has the following directory structure:
65    
66     src/ Source root
67     examples/ Examples root
68     build/ Build environment
69     dist-*/ Distributables
70    
71     The compilation of JGraph requires Ant and the build.xml file. The same build
72     file is used for all distributions. However, the binary and source distribution
73     are only compatible with certain versions of Java.
74    
75     o On Unix, type the following depending on the location of Java and Ant:
76     export JAVA_HOME=/usr/java/j2sdk1.4.1_02
77     export ANT_HOME=/usr/ant/ant-1.5.4
78     export PATH=$PATH:$JAVA_HOME/bin:$ANT_HOME/bin/
79    
80     o On Windows, type the following depending on the location of Java and Ant:
81     set JAVA_HOME=c:\jdk1.3.1_06
82     set ANT_HOME=c:\ant-1.5.4
83     set PATH=%PATH%;%JAVA_HOME%\bin;%ANT_HOME%\bin
84    
85     The build.xml file will automatically insert the TransferHandler.java file into
86     the source tree and modify a series of source files when used with Java 1.3.
87     (The TransferHandler ships with the Java 1.3-distribution of JGraph.)
88     You must use the Java 1.3-distribution in an IDE that runs on Java 1.3.
89    
90     The build.xml file offers the following targets:
91    
92     - all (*) --> Clean up and produce all distributions
93     - apidoc --> Generate the API specification (javadoc)
94     - build --> Run all tasks to completely populate the build directory
95     - clean --> Delete all generated files and directories
96     - compile --> Prepare (migrate) and compile the source tree
97     - migrate --> Migrate source code to Java 1.3
98     - prepare --> Copy source code to build directory
99     - dist --> Produce fresh distributions
100     - distclean --> Clean up the distribution files only
101     - doc --> Generate all documentation
102     - init --> Initialize the build; create directories, call tstamp
103     - jar --> Build all Java archives (JARs)
104     - make-example --> Compile the example tree
105     - example --> Run the main example UI
106    
107     (*) all is the default target.
108    
109     Target names may be appended to the above Java commands. For example,
110     to compile and run the example UI type the following:
111    
112     ant example
113    
114     2.3 Obtaining a Java 1.3 Release
115     --------------------------------
116     You must download a source distribution to create a Java 1.3 source tree.
117     The Java 1.3-compatible source code may be created using the build target
118     in a Java 1.3 environment. Make sure to use the source code from the build
119     directory in your development environment. The source code in the build
120     directory is a modified version of the original source tree. The original
121     source tree does not work with Java 1.3.
122    
123    
124     3. What is it?
125     --------------
126     The intention of this project is to provide a freely
127     available and fully Swing compliant implementation of a
128     graph component.
129    
130     3.1 Purpose
131     -----------
132     With the JGraph zoomable component, you can display objects
133     and relations (networks) in any Swing UI. JGraph can also be
134     used on the server-side, for example to read a GXL graph,
135     apply a custom layout algorithm, and return the result as an
136     SVG image.
137    
138     3.2 Features
139     ------------
140     o Edge Editing: Add/Remove/Edit Points; Connect, Disconnect; Labels
141     o Moving/Sizing: Transaction-Based, with Live-Preview
142     o Selection: Single-Cell and Marquee Selection.
143     o Zoom: Arbitrary Zoom; Uses JavaTM 2D
144     o Layering: View-Dependent Inter- and Intracell Layering
145     o Grouping: Children Selectable; Uses Tree-Interface
146     o Grid:Customizable Size, Color, Appearance
147     o In-Place Editing: Direct Text Editing for all Cells
148     o View Attributes: Cells have Separate Attributes for each attached View
149     o Ports: Multiple Connection Points for each Cell
150     o Handles: Flexible Interface for Cell-Modifications
151     o Drag and Drop: Between JGraphs, JVMs and other applications/OS
152     o Clipboard: Supports Multiple Transfer Formats
153     o Command History: Multi-View; for all available Operations
154     o Look-and-Feel: All Swing Pluggable Look-and-Feels
155     o Routing: Customizable Routing with default algorithms
156     o Visibility: Hide edges, vertices and groups
157     o Attribute-Split: Per attribute control of view-only attributes
158     o Clustering: Folding/Unfolding of groups into vertices
159     o Ant-based: Ant-based build environment
160     o Precision: Double precision coordinates
161     o Labels: Draws labels along edges
162    
163    
164    
165     4. Overview
166     -----------
167    
168     4.1 Implementation
169     ------------------
170     The following design principles guided the implementation
171     of JGraph:
172    
173     o Full Swing Compatibility
174     o Clear & Efficient Design
175     o Short Download Time
176     o 100 % Pure JavaTM
177    
178     4.2 Architecture
179     ----------------
180     No need to learn another complex product! JGraph integrates
181     nicely into the Swing component class hierarchy, because it
182     is based on the Swing MVC pattern. The API and implementation
183     complies with the JavaTM Code Conventions. All classes in
184     JGraph have their equivalents in Swing, and all features are
185     fully Swing compatible.
186    
187    
188    
189     5. Getting Help
190     ---------------
191     The FAQ is at http://www.jgraph.com/faq.html
192    
193     5.1 Documentation
194     -----------------
195     The API specification is included in this distribution and also available at
196     http://api.jgraph.com/. For additional information, updates, binaries and
197     source code see the Home Page of JGraph at http://www.jgraph.com/
198     A complete and up to date User Manual is available at
199     http://www.jgraph.com/downloads.html. The User Manual should be the next
200     document you read after this one.
201    
202     5.2 Support
203     -----------
204     Support is available through the Support section of the JGraph
205     web site at http://www.jgraph.com/support.html. On this page the process
206     of finding help is explained. Please note that no free support is provided
207     via email.
208    
209     JGraph Developers are available for contract work are reasonable rates.
210     Contact sales (at) jgraph (dot) com for more details.
211    
212     A number of more advanced examples at available for purchase from the
213     JGraph web site, see the products section.
214    
215     6. Obtaining JGraph
216     -------------------
217     The Home Page of JGraph can be found at http://www.jgraph.com/
218    
219     6.1 Binaries
220     ------------
221     The Binaries of JGraph are distributed on
222     http://www.jgraph.com/downloads.html
223    
224     6.2 Source code
225     ---------------
226     The sources of JGraph are placed under the LGPL and a commercially oriented
227     license, and the LGPL version is available via anonymous CVS or as zip files
228     via the download link at http://www.jgraph.com/downloads.html.
229    
230    
231     7. Misc
232     -------
233    
234     7.1 Tips and Tricks
235     -------------------
236     To create multiline labels you can use HTML. Here is an example:
237     <html>first line<br>second line</html>
238     The following key bindings are supported by default:
239     o Alt-Drag: Force marquee selection
240     o Shift-Select: Extend selection
241     o Control-Select: Toggle selection
242     o Control-Drag: Clones selection
243     o Shift-Drag: Constrained drag
244     To add and remove bends (edge points) you can press the right mouse button
245     while holding down the Shift key. To use the quadratic and bezier line style
246     the edge must have 1 and 2 intermediate points respectively.
247    
248     7.2 Showcase
249     ------------
250     Please send screenshots to info (at) jgraph (dot) com if you would like to
251     see your application on the JGraph web site.
252    
253     7.3 Other JGraph packages
254     -------------------------
255     Also available are JGraph Layout Pro and JGraphpad Pro.
256    
257     JGraph Layout Pro is a package of commercial-grade layout routines supporting
258     the full range of JGraph features. Layout Pro comes with example applications
259     that demonstrating features such as auto-layout, collapsing/expanding of
260     grouped cells, graph morphing and selective layouting of sub-graphs.
261    
262     JGraphpad Pro is a professional implementation of a complete JGraph application
263     framework. It provides a flexible document model and XML-configurable user
264     interface with pluggable actions, tools and custom components. It also provides
265     features such as a palette (library), overview panel (birds-eye view), rich-text
266     data in cells, movable ports, expanding/collapsing, drag and drop and standard
267     XML encoding i/o in a fully-plugable framework architecture.
268    
269    
270     8. License
271     ----------
272     For legal and licensing issues, please read the LICENSE file.
273     All source and binaries in this package remain copyrighted to Gaudenz Alder.
274    
275    
276    
277     9. Contact Email
278     ----------------
279     Sales sales (at) jgraph (dot) com
280     Commercial Support support (at) jgraph (dot) com
281    
282     For more information please visit
283     http://www.jgraph.com/
284    
285    
286     What's Next?
287     ------------
288    
289     Download and read the JGraph User Manual from http://www.jgraph.com/downloads.html.

  ViewVC Help
Powered by ViewVC 1.1.26