OS4 DepotLogo by McFly 
(anonymous IP:,2202) 

   Bug tracker
   Locale browser


   o Audio (343)
   o Datatype (51)
   o Demo (203)
   o Development (596)
   o Document (22)
   o Driver (97)
   o Emulation (147)
   o Game (1005)
   o Graphics (498)
   o Library (115)
   o Network (232)
   o Office (66)
   o Utility (925)
   o Video (69)

Total files: 4369

Full index file
Recent index file



Support the site

 Readme for:  Development » Utility » visualguimaker.lha


Description: A GUI Maker and Command Window Creator
Download: visualguimaker.lha       (TIPS: Use the right click menu if your browser takes you back here all the time)
Size: 1Mb
Version: 1.0
Date: 05 Sep 2008
Author: PEB
Submitter: PEB
Email: revbloedel/gmail com
Requirements: reqtools for OS4, AISS 4.3 (or greater), and the SDK
Category: development/utility
License: Other
Distribute: yes
Min OS Version: 4.0
FileID: 4021
Comments: 7
Snapshots: 1
Videos: 0
Downloads: 355  (Current version)
355  (Accumulated)
Votes: 0 (0/0)  (30 days/7 days)

Show comments Show snapshots Show videos Show content Show crashlogs Replace file 
***** reqtools for OS4 and AISS (both available on OS4 Depot) are required to
use this program *****
Important: You must also have the SDK installed in order for Visual GUI Maker to
work properly.

"Visual GUI Maker" is another one of my 'bloated' programs that I made with
Hollywood 3.1. I hope you enjoy it!

What it does: Visual GUI Maker is an application that makes the creation of
Reaction windows with various GUI elements very easy. Visual GUI Maker creates
both a .c code file as well as a compiled tool file. The buttons of the created
GUI can be configured to send either ARexx or DOS commands. If you are familiar
with "Command Panel Creator" (CPC), another one of my "bloated" programs, then
you can think of this as the next generation of that application.

The Tool Window (from left to right):
*The Pointer: This tool simulates the usage of the GUI when it is compiled. (You
can test out the commands that you have assigned using this tool.)
*The Hand: This tool allows you to arrange (by drag and drop) the various
elements and their groups.
*Preferences: This tool allows you to customize various aspects of the window,
the groups, and the GUI elements.
*The Labeler: This tool allows you to add labels to the groups or any of the
*The Pipette: This tool is used to copy attributes from one GUI element or group
to another. (In order to empty the pipette so that new attributes can be given
to it, simply press the "E" key while the pipette is active.)
*The Remover: This tool allows you to delete any of the elements or groups. (You
can also delete items using the Hand Tool---dragging them onto the trash can in
the lower left-hand corner. Using the Hand Tool in this way is actually quicker
than the Remove Tool because you are not asked to confirm your action before the
deletion occurs.)
*Group Tools: With these three tools you can add new groups as well as add and
remove group columns.
*New: Pressing this button starts a new project.
*Open: Pressing this button loads a previously saved project.
*Save: Pressing this button saves the project in its current state.
*Compile: This Button will compile your project into an executable file as well
as generate the C-source code.
*Quit: Pressing this button will close Visual GUI Maker.

As of this version (1.0), the following six GUI Elements are supported: Buttons,
Sliders, Checkboxes, Integers, Strings, and GetFiles/GetDrawers. You will also
notice some other GUI elements in this window that are currently ghosted
(because they are not yet supported)---the plan is to add them (as well as
others) in future versions. Simply select whatever elements you want and arrange
them in any order in the Layout window. Most of these GUI elements receive user
input. Buttons send commands and can access the input from the other elements.
Checkboxes combine both the idea of receiving user input and sending commands.
Now you might simply want to use Visual GUI Maker to design GUIs and have no
desire to send DOS or ARexx commands. If that is the case, you can just ignore
the following explanation of the various command options.

The elements capable of sending commands (buttons and checkboxes) can send
either ARexx or DOS commands. If you want to send an ARexx command, you must
specify the port that you would like the command button to address. If you want
to execute a script or launch a program through DOS, then you must type "DOS"
(without the quotation marks) into the "Port" setting, then enter the path to
the program or script into the "Command" setting. In addition to whatever fixed
commands that you might want to send, variable user input from the other
elements can also be added by using a special code.

There are actually a number of different command codes (all of which must be
enclosed within {}) that can be used and combined in the command line. User
input from any of the other elements is retrieved by adding "{element}" (without
the quotation marks) followed by the element number. (If you are not sure about
an element's number, just hold down the right mouse button while over the
element in question.) If you want a *String* requester to pop up, simply add
"{string}" (without the quotation marks) to the command line. Likewise, if you
want a *File* requester to pop up, simply add "{file}" (again, without the
quotation marks) to the command line. To enable or disable other elements, add
"{enable}" or "{disable}" (respectively) followed by the number of the element
that you want to be effected. Use the special code "{end}" in the command line
if you want the GUI window to close itself after executing the assigned command.

BAR SYMBOL ("|"). For example, a DOS command string might look like this:
"{disable}4|wbrun|{file}|{element}3|{element}1|{end}" When executed, this
command line would disable element 4 and then launch the program chosen by the
user with the added parameters taken from elements 3 and 1, after which the
window would close itself. Check out the included sample project
("AmigaAmpControl"), and hold down the right mouse button over the different GUI
elements (especially the command-sending ones) to get a feel for the various
configuration options.

*Additional Note about CheckBoxes: A checkbox can be configured to send two
different commands (one at the time it is checked, and the other when it is
unchecked), as well as returning a specified string when it is called by another
button and if the box is checked (if the box is not checked, then no string
would be returned). Also, a checkbox can receive a special command (either from
a button or another checkbox) to be either checked or unchecked. So if element 3
is a checkbox, I can have another checkbox or button change its state (check or
uncheck it) by using the command code "{check}3" or "{uncheck}3".

Helpful Hints:
*If you want to use an AISS image instead of a text label on a button, simply
type "{aiss}" (without the quotation marks) and then the image name (like
"open," "zoom," etc.)---so you might type something like "{AISS}open" for the
button's name using the Preferences tool. (Visual GUI Maker will automatically
make use the selected image in the compiled GUI.)
*If you want to assign the buttons of your GUI to certain keys, put the "_"
symbol before the letter that you want to activate the button. For instance, if
you have a button called "Test", and you want to activate it when the "t" key is
pressed, name the button "_Test". If you want to activate it with the "e" key,
name the button "T_est". (It won't display correctly in the Layout window, but
it will look right and work correctly when the window is compiled.)
*The compiled windows can be set to appear at a specific location on screen
using XPOS and YPOS tooltypes (see sample).
*The reason for assigning an ARexx port name to your GUI window is so that it
can be quit from another program by sending the command 'QUIT' to its ARexx
*For those of you who want to make GUI windows to send ARexx commands to a
Hollywood app:
If you want the input of multiple elements to be added to a command line, you
need to send the whole command to the Hollywood app as one continuous string (if
there is a space in the ARexx command, it will not receive what comes after the
space). If you add the special command "{hollywood}" to your command string,
then all spaces will be removed and replaced with "*", that way the various
parts can be collected in a table using SplitStr() with "*" as the separator

Special thanks goes to Chris Young for his technical help, suggestions, and
Thanks also to Mason for his beautiful icons and AISS images.

Version 1.0 (9/5/08):
*First attempt

***********If you like this program and would like to drop me some e-mail or
PayPal encouragement (or if you have any suggestions to make this program
better) my e-mail address is: revbloedel()gmail.com***********

Copyright © 2004-2024 by Björn Hagström All Rights Reserved