MST Version 1.5
Copyright (C) 2002 by Markus Svensson <markus.svensson@linux.nu>
----------------------------------------------------------------------------------
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-----------------------------------------------------------------------------------

INTRODUCTION
============
This is a Java application for calculating a minimum spanning tree 
from a graph given in a text file. The program was initially written for a 
course in algorithmics at the university of Malm, Sweden, in May 2002.

CHANGES
========
Since V1.0:
--------------
* The program is now graphical rather than command line driven.

Since V1.1
-------------
* Added menu bar.
* Added about dialog.
* Added html help
* Added a quit button.
* Shifted control away from the GUI classes to a controller class.
* Added JavaDoc comments to all methods.

Since V1.2
-------------
* Implemented saving of the contents of the output window.
* Fixed a minor bug in the help viewer.
* Minor (esthetical) fixes to the GUI.

Since V1.3
-------------
* Added a pop up (right mouse button) menu.
* Multiple file selection allowed when loading graphs.
* Added internationalization support (English and Swedish currently)

Since V1.4
-------------
* Added the drawing functionality. It's far from perfect, and it currently     
  only works for graphs with less than 100 nodes. I wouldn't recommend using 
it    for any but the simplest graphs.

REQUIREMENTS
============
* The program is written in Java, and thus it requires a Java 2 compatible 
  Java Virtual Machine to be installed.
* The program has only been tested on Mandrake Linux 8.1 with Sun's JDK 1.3.1 
  installed, and on Windows NT 4.0 with JDK 1.3.0, but there is no reason to   
  suspect that it shouldn't run on any platform that has Java support.

INSTALLATION
============
* Place the JAR archive and the mst script file to the same directory.
* The src directory contains the source code of the program and can 
  be placed anywhere, or removed if you don't have any interest in the source  
  code.

USAGE (Linux / Unix)
=====================
* If the mst script and JAR are not on your path, cd to the directory where    
  these files  are located.
* At the command prompt, enter: "./mst". If you wish, you may list files to
  be processed on the command line for immediate processing.
  (./mst test.txt test1.txt)
* If you do not wish to use the script to run the program, do:
  "java -jar MST.jar" to get the same result.
* The program should start and show the GUI.
* To load a file, click the "Load" button, or select Load from the file menu.  
  Holding down <shift> or <ctrl> buttons allows you to select multiple files.
* The result is output to the text area.
* The "Clear" button or the clear menu clears the text area of any previous    
  output.
* The save button or the save menu entry saves ALL the contents of the output  
  area to a text file.
* The quit button or quit menu entry quits the program.
* The about menu entry shows a about dialog.
* The help menu entry shows a html help system.
* Pressing the right mouse button over the output area displays a pop up menu
  with the same items as the file menu.

TO DO
======
* Add more translations. Please help me with this.
  See MST/src/minimumspanningtree/gui/language/README.TXT
* Improve the graphic presentation of the graphs.
* Provide separate (translated) help files for the locales.

FILE STRUCTURE
==============
The graphs are represented as simple ASCII text files.They are organized as 
follows:
1 2 3
The first digit (1) is the starting vertex of the edge.
The second digit (2) is the end vertex of the edge.
The third digit (3) is the weight of the edge.
Each of these values are separated by a space.
There is one edge per line.
See test.txt and tree.txt (included in the distribution) for examples.

CONTACT
=======
Bug reports, feature requests and comments to: 
markus.svensson@linux.nu









