gs
The Graphics System for Erlang.
Warning!
GS is not recommended for use in new applications. Instead we recommend WX for applications that need a graphical user interface.
GS is not maintained and we plan to deprecate and remove it from the distribution as soon as possible, maybe already in the next major release (R15).
The Graphics System, GS, is easy to learn and designed to be portable to many different platforms.
In the description below, the type gsobj()
denotes a
reference to a graphical object created with GS. Such a reference
is either a GS object identifier or the name of the object (an atom),
if such a name exists.
The functions all return the specified values or {error,Reason}
if an error occurs.
Please refer to the GS User's Guide for a description of the different object types and possible options.
Functions
config(GSObj, Options) -> ok
GSOBj = gsobj()
Options = [Option] | Option
Option = {Key,Value}
Configures a graphical object according to the specified options.
create(ObjType, Parent) -> ObjId
create(ObjType, Parent, Options) -> ObjId
create(ObjType, Name, Parent, Options) -> ObjId
ObjType = atom()
Parent = gsobj()
Name = atom()
Options = [Option] | Option
Option = {Key,Value}
Creates a new graphical object of the specified type as a child to the specified parent object. The object is configured according to the options and its identifier is returned. If no options are provided, default option values are used.
If a name is provided, this name can be used to reference the object instead of the object identifier. The name is local to the process which creates the object.
The following object types exist: window | button | radiobutton | checkbutton | label | frame | entry | listbox | canvas | arc | image | line | oval | polygon | rectangle | text | menubar | menubutton | menu | menuitem | grid | gridline | editor | scale
create_tree(Parent, Tree) -> ok
Parent = gsobj()
Tree = [Object]
Object = {ObjType,Options} | {ObjType,Options,Tree} | {ObjType,Name,Options,Tree}
Creates a hierarchy of graphical objects.
destroy(GSObj) -> void()
GSObj = gsobj()
Destroys a graphical object and all its children.
ObjType(Parent)
ObjType(Parent, Options)
ObjType(Name, Parent, Options)
These functions are shorthand equivalents of create/2
,
create/3
, and create/4
, respectively.
read(GSObj, Key) -> Value
GSObj = gsobj()
Key = atom()
Value = term()
Returns the value of an option key for the specified graphical object.
start() -> ObjId
Starts GS, unless it is already started, and returns its object identifier.
stop() -> void()
Stops GS and closes all windows. This function is not the opposite
of start/0
as it will cause all applications
to lose their GS objects.