SATGUI

NOTE: This site is still "Under Construction". However, I would welcome your comments and suggestions.

Lastest News (9th Feb 2001)

PLEASE NOTE:

ANNOUNCEMENT:

Coming soon...


What is SATGUI

SATGUI is a framework in which (Microsoft -or- X) Windows Client / Unix Server applications can be developed. SATGUI is intended for small/simple applications with a reletively small user base, where the heavy-weight development tools from the likes of Oracle/Ingres are too expensive/bloated/complex.

With this in mind SAT was developed using the following guidelines:-

No (Microsoft -or- X) Windows development skills are required. Any programmer with a reasonable grasp of Unix shell script can produce useful applications with the minimum of fuss. Take a look at the demo application to see just how easy SATGUI is.

SAT applications can be written in most Unix character based languages; C, Shell script, Perl etc. To produce SQL based database applications the SAT package includes a filter to simplify interfacing SAT with the MySQL database system.

The UNIX components of SATGUI are implemented as scripts for easy portability.

How SATGUI works

SATGUI uses a very thin client architecture similar in concept to the HTML Server/Browser, though to be honest, the actual inspiration came from the ultimate and earliest thin client implementation - The Mainframe.

SATGUI is intended to be used in a private network (intranet/dial-up) environment for the development of small scale (Microsoft -or X) Windows Client/Unix Server applications.

Why use SATGUI if the concept is so similar to the HTML Server/Browser?

HTML was designed as an environment in which to store and navigate hypertext documents. Over the years functionality has been added to HTML to enable it to be used as a client for interactive applicaions. However, the basic framework of HTML is still a hypertext system. The applications are, on the whole, obviously Web based and lack a native "look and feel".

SATGUI has been developed from the outset as an environment for creating applications. The SATGUI Display Language (SAT/DL) is very simple, and as with HTML applications, can be used in conjunction with back-end applications written in a variety of languages.

A SATGUI application is composed from a set of screens and processes. The screens define the layout of the window, while the processes are associated with the activation of certain screen Items (Buttons, Listbox selections etc). Screens/Processes are equivalent to HTML Documents/CGI Scipts.

Release Status

SATGUI is currently at release Alpha3

System Requirements

Client
The client executables have been tested under Windows 98, NT4 and Linux. The client source (which requires TCL/TK 8.3 or greater) has been tested under Windows 98, NT4, Solaris and AIX.

Server
The GUI server source code requires TCL 8.0 or greater.

NOTE: TCL is not required when using the Linux executables.

Tool
The client development tool executables have been tested under Windows 98, NT4 and Linux. The client source (which requires TCL/TK 8.3 or greater) has been tested under Windows 98, NT4, Solaris and AIX.

NOTE: TCL information and download can be found at Tcl Developer Xchange.

SATGUI Components

satgui (Linux)
satgui.exe (Windows)
satgui.tcl (Source)
SATGUI Client. Executes SATGUI Display Language (SAT/DL) commands to create user interface.

satguisvr (Linux)
satguisvr.tcl (Source)
SATGUI Server. Server to which SATGUI clients connect. The SATGUI server handles communication with all clients using a SAT application. Each SAT application requires its own copy of SATGUISVR to be running.

satguistart (Script) SATGUI Server startup script. Reads configuration file and starts SATGUISVR with the appropriate parameters.

satguitool (Linux)
satguitool.exe (Windows)
satguitool.tcl (Source)
SATGUI Client Development Tool. Interactive tool which executes SATGUI Display Language (SAT/DL) commands to create a sample user interface.

Installation

To extract the Unix "tar" files


Client
The directory location of the SAT GUI Client (satgui|satgui.exe|satgui.tcl) is not important, but it is suggested that it be placed in C:\Program Files\SATiSOFT (Windows) -or- /usr/local/bin (Unix).

If the source code version is to be used under Unix, the first line of satgui.tcl...

#!/usr/local/bin/wish8.3

Will probably need to be changed to reflect the location of the wish (TCL/TK) interpreter on your system.


Server
The directory location of the SAT Server files (satguisvr|satguisvr.tcl and satguistart) is not important, but it is suggested that they be placed in the /usr/local/bin directory.

If the source code version is to be used under Unix, the first line of satguisvr.tcl...

#!/usr/local/bin/tcl8.0

Will probably need to be changed to reflect the location of the tcl (TCL) interpreter on your system. Also, it will be be necessary to either: Rename satguisvr.tcl to satguisvr -or- Edit satguistart and change the reference to satguisvr to satguisvr.tcl.


Tool
The directory location of the SAT GUI Client Development Tool (satguitool|satguitool.exe|satguitool.tcl) is not important, but it is suggested that it be placed in C:\Program Files\SATiSOFT (Windows) -or- /usr/local/bin (Unix).

If the source code version is to be used under Unix, the first line of satguitool.tcl...

#!/usr/local/bin/wish8.3

Will probably need to be changed to reflect the location of the wish (TCL/TK) interpreter on your system.

Release History

Alpha3
02/2001
Adds Menubar support.
Alpha2
11/2000
Fixes addCheckButtons (Invalid command name "sey") bug.
Alpha1
10/2000
First public release. Due to lack of resources it has not been possible to perform thorough multi-user testing. I am therefore, very interested to hear from anybody who has tried SATGUI with a number of users, the good and the bad!

Known Bugs


Copyright © 2001
Adrian Davis.