4,225 bytes added
, 18:33, 12 June 2009
<center>
<adsense>
google_ad_client = 'pub-1200304577225263';
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = '468x60_as';
google_ad_type = 'text_image';//2006-12-28: MWB Directory space
google_ad_channel = '2388332058';
google_color_border = '6699CC';
google_color_bg = '003366';
google_color_link = 'FFFFFF';
google_color_text = 'AECCEB';
google_color_url = 'AECCEB';
</adsense>
</center>
[[Image:G4cpreview.jpg|thumb|right|Various guis all running together.]]
[[Graphical user interface|'''Gui''']]4[[Command line interface|'''Cli''']] is a simple, freeware, [[Event-driven programming|event-driven]] [[scripting language]] with which you can easily create and control many types of [[Graphical user interface|GUI]] to use as stand-alone applications or as interfaces for other programs. It has many powerful commands and capabilities and a simple intuitive structure.
[[Image:Gcview.png|thumb|right|A simple file explorer done in Gui4Cli]]
Gui4Cli works on '''Windows''' (all versions from 95 and NT4 upwards).
Gui4Cli can be extended via [[Dynamic-link library|DLLs]], using which you can add new Events, Commands and Variables. These are loaded at run time, if and when needed. There is also a DLL version of Gui4Cli itself, so you can load it from other programs and manipulate it to easily provide GUIs and various other services. A rich C/C++ [[Application programming interface|API]] is also provided.
Gui4Cli scripts cannot be [[Compiler|compiled]], but they can be bundled into executables that look and behave just like real executables.
== Features ==
Gui4Cli scripts use an easy event driven structure. Events can be thought of as starting points where code to do various things can be attached. When a window is opened, for example, an event called "xOnOpen" will be triggered, if it exists in the script whose window opened, and commands attached to this event will be executed. Similarly, if a listview is double-clicked, the listview will be triggered and any commands you might have given there will be run. And so on..
Apart from the common programming language statements (like if, else, ifexists, do, for, while, docase, etc), Gui4Cli has powerful commands to control listviews, treeviews and all other types of controls, as well as commands to handle:
[[Image:Gui4Cli owner-drawn listviews screenshot.png|thumb|right|Owner-drawn listviews]]
* many kinds of [[windows]], normal or irregularly shaped.;
* and all types of [[Widget (computing)|controls]] (listviews, browsers, treeviews, etc);
* many commands to handle the above controls;
* various custom [[widgets]] like border-buttons, icon-buttons etc (more can be added);
* powerful owner-drawn multicolumn listviews that can have other controls in them;
* text handling commands;
* [[fonts]], [[image]]s, [[icon]]s,[[ MCI]], [[sound]], etc;
* full drag/drop and re-arranging of items on listviews, treeviews, etc;
* internet and [[ftp]] commands;
* extensive printing command, with preview gui;
* registry handling;
* file handling, searching, enumeration, read/writing, etc;
* commands for running programs synchronously or asynchronously;
* more stuff...
[[Image:SciEd in Gui4Cli screenshot.png|thumb|right|The Gui4Cli script editor (using the Scintilla dll)]]
A full-fledged ''editor'' for editing its [[script]]s is included. It uses a [[dll]] extension to add the [http://scintilla.org scintilla] editor to Gui4Cli as just another event. The rest of the gui is written in Gui4Cli itself.
== Licence ==
'''Gui4Cli''' is freeware. That means it can be used free of charge. There are NO limitations on distribution on any 'Guis' you make.
== External links ==
* [http://www.gui4cli.com The main Gui4Cli homepage]
[[Category:Scripting languages]]
<center>
<adsense>
google_ad_client = 'pub-1200304577225263';
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = '468x60_as';
google_ad_type = 'text_image';//2006-12-28: MWB Directory space
google_ad_channel = '2388332058';
google_color_border = '6699CC';
google_color_bg = '003366';
google_color_link = 'FFFFFF';
google_color_text = 'AECCEB';
google_color_url = 'AECCEB';
</adsense>
</center>