Universal Configurator

Free Open Source software by Scriptol.com
Home page: http://www.scriptol.com/

Table of Contents

Overview

The universal configurator is provided to allow user of any program to configure it with a unique, easy to learn, tool. The program must be furnished with a ini or XML file that holds all the options.
And the programmer or a contributor must also provide a file of possible values.

Requirements

For Windows only, for now.
The sources are written in Scriptol for the algorithms, and require the scriptol compiler to be compiled into C++.
The C++ sources are compiled with C Builder along with the graphical user interface.
A XUL interface is planed.

Format of the configuration file

The extension may be ".ini" or any other one.
A configuration file is made of:

titles:
[titlename]

comments:
# comment
; comment

options:
name = value
name : value

inactive options:
;name = value
#name : value

The configuration may be taken from an XML file also.
An XML file has this format:

Title:
<title name="titlename" />
Option:
<option optioname=optionvalue active=true />
Comment:
<comment data="comment" />
Blank line:
<blank />

The XML file can be written manually or generated by the ini2dom program provided on scriptol.com.

Format of the file of values

It is near the ini file but each values of an option is replaced by the list of all possible values separated by commas.
The file of options is not used directly by the U.C. program.
You have to build an XML file instead and this may accomplished thank to the opt2XML program, furnished on scriptol.com also.

The program searches for the file of values in the directory of the configuration file first. If it is not found here, it is searched inside the directory of U.C.

The U.C. graphical program

The program is made of two parts:
- The algorithms to translate text files into XML, and to process XML, written in Scriptol, and compiled into C++.
- the interface, written with C Builder.
The user have only to deal with the interface, selecting panels and clicking on buttons...

The tool bar

The load button allows to load a configuration file, and the associated file of values (with extension uc or XML).
The compile button updates the configuration file after changes applied from the panel below.

The panels

The interface has five panels:

Configuration:
This panel displays the ini file in XML form.
Configuration source:
The content of the ini file.
Options editor:
The editable XML content of the file of values.
Options tree:
The XML view of the file of values.
U.C. setup:
Some preferences for the U.C. program itself.

The configuration panel

Left panel:

This is the list of ini files to edit.
You can add or remove a ini file (with the associated file of values) by the Add and Remove buttons above, and select one by a click on the name, and display it by a double-click on the name.

Middle panel:

This is the tree view of the ini file.
Comments are not displayed but if they were at end of the line in the original ini file.
Titles and options are displayed on the same level.
For each option:
- a pair: name = value.
- a pair: active = true or false.

Bottom fields:

- The first field displays an option.
Double-click on an option in the tree to select it and let it displayed in the first field.
- The second field is a list of values taken from the file of values.
When you (double) click on an option, the list of all possible values is taken from the file of values and fills the menu. Just click on the arrow at right to select a value.
- When a value is selected in the list or written directly into the first field, click on the update button to change the value for the selected option into the tree.

Right panel:

This is a list of buttons for predefined values or paths.
Select an option in the tree by a double-click and press the appropriate button:
- Yes: set a "yes" value.
- No: set a "no" value.
- Set Path: select a path and use it as value.
- More Path: an option may required a list of paths. Click on the button to add one.
- Activate: make the option active or not. In the ini file, it is made transformed into comment to be made not active. In this case the comment code is not followed by a blank space, as it must be in real comments.

The U.C. setup panel

This panel allows to define some elements of appearance and the way u.c. works.
The colors are for the list of configuration files.
The check box when checked allows for the first configuration file in the list loaded at start of the program and the file of values also.
This may cause a delay before the program appears on the screen.
A browser must be defined to display the html help file.

Editing the base of values

The third panel is a text editor that allows to edit the file of values.
Once modified, click on the "Save values from editor" item in the edit menu. Then click on the "Load file of values" item to update the tree of value into the fourth panel.