home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 February / CMCD0205.ISO / Software / Freeware / Programare / jgraph / jgraph-5.2.1-java1.4-open-src.jar / README < prev   
Encoding:
Text File  |  2004-12-20  |  8.3 KB  |  261 lines

  1. JGraph - The JFC/Swing Graph Component (c)2001-2004
  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. 3. What is it?
  16.    3.1 Purpose
  17.    3.2 Features
  18.    3.3 History
  19. 4. Overview
  20.    4.1 Implementation
  21.    4.2 Architecture
  22. 5. Getting Help
  23.    5.1 Documentation
  24.    5.2 Support
  25. 6. Obtaining JGraph
  26.    6.1 Binaries
  27.    6.2 Source Code
  28. 7. Misc
  29.    7.1 Tips and tricks
  30.    7.2 Showcase
  31. 8. License
  32. 9. Contact Email
  33.  
  34.  
  35.  
  36. 1. Disclaimer
  37. -------------
  38. I am not liable for any damage caused by the use of this program.
  39.  
  40.  
  41.  
  42. 2. Installation
  43. ---------------
  44.  
  45. 2.1 Requirements
  46. ----------------
  47. o  JGraph for Java 1.3 requires a Java 1.3 or later compatible virtual 
  48.    machine for your operating system. (Java 1.4.1 is recommended.)
  49. o  JGraph for Java 1.4 requires a Java 1.4 or later compatible virtual 
  50.    machine for your operating system. (Java 1.4.1 is recommended.)
  51. The most recent version of Java can be obtained from http://java.sun.com/j2se/
  52. Compiling JGraph requires Ant, which may be obtained from http://ant.apache.org/
  53.  
  54. 2.2 Compiling
  55. -------------
  56. The project has the following directory structure:
  57.  
  58. src/      Source root
  59. examples/ Examples root
  60. build/    Build environment
  61. dist-*/   Distributables
  62.  
  63. The compilation of JGraph requires Ant and the build.xml file. The same build
  64. file is used for all distributions. However, the CVS distribution compiles
  65. with both versions of Java, whereas the binary and source distribution are
  66. only compatible with certain versions of Java. In all cases, the sequence 
  67. of commands is the same, and independent of the Java version.
  68. All distributions require Ant for compilation. Ant requires ant.jar, 
  69. xercesImpl.jar, xml-apis.jar and tools.jar from Java. (Note: Do not type
  70. the newline inside the classpath declarations below!)
  71.  
  72. o On Unix, type the following depending on the location of Java and Ant:
  73.      export JAVA_HOME=/usr/java/j2sdk1.4.1_02
  74.      export ANT_HOME=/usr/ant/ant-1.5.4
  75.      export CLASSPATH=$JAVA_HOME/lib/tools.jar:$ANT_HOME/lib/ant.jar:
  76.                       $ANT_HOME/lib/xercesImpl.jar:$ANT_HOME/lib/xml-apis.jar
  77.      $JAVA_HOME/bin/java org.apache.tools.ant.Main
  78.  
  79. o On Windows, type the following depending on the location of Java and Ant:
  80.      set JAVA_HOME=c:\jdk1.3.1_06
  81.      set ANT_HOME=c:\ant-1.5.4
  82.      set CLASSPATH=%JAVA_HOME%\lib\tools.jar;%ANT_HOME%\lib\ant.jar;
  83.                    %ANT_HOME%\lib\xercesImpl.jar;%ANT_HOME%\lib\xml-apis.jar
  84.      %JAVA_HOME%\bin\java org.apache.tools.ant.Main
  85.  
  86. The build.xml file will automatically insert the TransferHandler.java file into 
  87. the source tree and modify a series of source files when used with Java 1.3.
  88. (The TransferHandler ships with the CVS- and Java 1.3-distribution of JGraph.)
  89. This means that you cannot use the CVS-distribution in an IDE that runs on
  90. Java 1.3. You must use the Java 1.3-distribution in this case.
  91.  
  92. The build.xml file offers the following targets:
  93.  
  94. - all (*)      --> Clean up and produce all distributions
  95. - apidoc       --> Generate the API specification (javadoc)
  96. - build        --> Run all tasks to completely populate the build directory
  97. - clean        --> Delete all generated files and directories
  98. - compile      --> Prepare (migrate) and compile the source tree
  99.   - migrate    --> Migrate source code to Java 1.3
  100.   - prepare    --> Copy source code to build directory
  101. - dist         --> Produce fresh distributions
  102. - distclean    --> Clean up the distribution files only
  103. - doc          --> Generate all documentation
  104. - init         --> Initialize the build; create directories, call tstamp
  105. - jar          --> Build all Java archives (JARs)
  106. - make-example --> Compile the example tree
  107. - example      --> Run the main example UI
  108.  
  109. (*) all is the default target.
  110.  
  111. Target names may be appended to the above Java commands. For example,
  112. to compile and run the example UI type the following:
  113.  
  114. o On Unix:
  115.      $JAVA_HOME/bin/java org.apache.tools.ant.Main example
  116.  
  117. o On Windows:
  118.      %JAVA_HOME%\bin\java org.apache.tools.ant.Main example
  119.  
  120.  
  121.  
  122. 3. What is it?
  123. --------------
  124. The intention of this project is to provide a freely
  125. available and fully Swing compliant implementation of a
  126. graph component.
  127.  
  128. 3.1 Purpose
  129. -----------
  130. With the JGraph zoomable component, you can display objects
  131. and relations (networks) in any Swing UI. JGraph can also be
  132. used on the server-side, for example to read a GXL graph,
  133. apply a custom layout algorithm, and return the result as an
  134. SVG image.
  135.  
  136. 3.2 Features
  137. ------------
  138. o Edge Editing: Add/Remove/Edit Points; Connect, Disconnect; Labels
  139. o Moving/Sizing: Transaction-Based, with Live-Preview
  140. o Selection: Single-Cell and Marquee Selection.
  141. o Zoom: Arbitrary  Zoom; Uses JavaTM 2D
  142. o Layering: View-Dependent Inter- and Intracell Layering
  143. o Grouping: Children Selectable; Uses Tree-Interface
  144. o Grid:Customizable Size, Color, Appearance
  145. o In-Place Editing: Direct Text Editing for all Cells
  146. o View Attributes: Cells have Separate Attributes for each attached View
  147. o Ports: Multiple Connection Points for each Cell
  148. o Handles: Flexible Interface for Cell-Modifications
  149. o Drag and Drop: Between JGraphs, JVMs and other applications/OS
  150. o Clipboard: Supports Multiple Transfer Formats
  151. o Command History: Multi-View; for all available Operations
  152. o Look-and-Feel: All Swing Pluggable Look-and-Feels
  153. o Routing: Customizable Routing with default algorithms
  154. o Visibility: Hide edges, vertices and groups
  155. o Attribute-Split: Per attribute control of view-only attributes
  156. o Clustering: Folding/Unfolding of groups into vertices
  157. o Ant-based: Ant-based build environment
  158. o Precision: Double precision coordinates
  159. o Labels: Draws labels along edges
  160.  
  161.  
  162.  
  163. 4. Overview
  164. -----------
  165.  
  166. 4.1 Implementation
  167. ------------------
  168. The following design principles guided the implementation
  169. of JGraph:
  170.   
  171. o Full Swing Compatibility
  172. o Clear & Efficient Design
  173. o Short Download Time
  174. o 100 % Pure JavaTM
  175.  
  176. 4.2 Architecture
  177. ----------------
  178. No need to learn another complex product! JGraph integrates
  179. nicely into the Swing component class hierarchy, because it
  180. is based on the Swing MVC pattern. The API and implementation
  181. complies with the JavaTM Code Conventions. All classes in
  182. JGraph have their equivalents in Swing, and all features are
  183. fully Swing compatible.
  184.  
  185.  
  186.  
  187. 5. Getting Help
  188. ---------------
  189. The FAQ is at http://jgraph.sourceforge.net/faq.html
  190.  
  191. 5.1 Documentation
  192. -----------------
  193. The API specification is included in this distribution and also available at 
  194. http://api.jgraph.com/. For additional information, updates, binaries and 
  195. source code see the Home Page of JGraph at http://www.jgraph.com/
  196. A paper is available at http://www.jgraph.com/doc/paper/t1.html, a 
  197. tutorial is available at http://www.jgraph.com/doc/tutorial/t1.html.
  198.  
  199. 5.2 Support
  200. -----------
  201. Support is provided via the Home Page at http://www.jgraph.com/
  202. and Sourceforge project page at http://sourceforge.net/projects/jgraph/
  203. Please review the FAQ and forums before submitting a request.
  204. No support is provided via Email.
  205.  
  206.  
  207.  
  208. 6. Obtaining JGraph
  209. -------------------
  210. The Home Page of JGraph can be found at http://www.jgraph.com/
  211.  
  212. 6.1 Binaries
  213. ------------
  214. The Binaries of JGraph are distributed on
  215. http://sourceforge.net/projects/jgraph/
  216.  
  217. 6.2 Source code
  218. ---------------
  219. The sources of JGraph and JGraphpad are placed under the LGPL, MPL and a
  220. commercial license, and are available via anonymous CVS or as zip files at 
  221. http://sourceforge.net/projects/jgraph/ and http://www.jgraph.com/.
  222.  
  223.  
  224.  
  225. 7. Misc
  226. -------
  227.  
  228. 7.1 Tips and Tricks
  229. -------------------
  230. To create multiline labels you can use HTML. Here is an example:
  231. <html>first line<br>second line</html>
  232. The following key bindings are supported by default: 
  233. o Alt-Drag: Force marquee selection
  234. o Shift-Select: Extend selection
  235. o Control-Select: Toggle selection
  236. o Control-Drag: Clones selection
  237. o Shift-Drag: Constrained drag
  238. To add and remove bends (edge points) you can press the right mouse button 
  239. while holding down the Shift key. To use the quadratic and bezier line style 
  240. the edge must have 1 and 2 intermediate points respectively.
  241.  
  242. 7.2 Showcase
  243. ------------
  244. Please send screenshots to showcase@jgraph.com.
  245.  
  246.  
  247.  
  248. 8. License
  249. ----------
  250. For legal and licensing issues, please read the LICENSE or LICENSE2 file if
  251. available.
  252.  
  253.  
  254.  
  255. 9. Contact Email
  256. ----------------
  257. Gaudenz Alder                          gaudenz (at) jgraph (dot) com
  258.  
  259. For more information please visit
  260. http://www.jgraph.com/
  261.