~ubuntu-branches/debian/squeeze/erlang/squeeze

« back to all changes in this revision

Viewing changes to lib/gs/doc/src/examples/ex14.erl

  • Committer: Bazaar Package Importer
  • Author(s): Sergei Golovan
  • Date: 2009-05-07 15:07:37 UTC
  • mfrom: (1.2.1 upstream) (5.1.2 sid)
  • Revision ID: james.westby@ubuntu.com-20090507150737-i4yb5elwinm7r0hc
Tags: 1:13.b-dfsg1-1
* Removed another bunch of non-free RFCs from original tarball
  (closes: #527053).
* Fixed build-dependencies list by adding missing comma. This requires
  libsctp-dev again. Also, added libsctp1 dependency to erlang-base and
  erlang-base-hipe packages because the shared library is loaded via
  dlopen now and cannot be added using dh_slibdeps (closes: #526682).
* Weakened dependency of erlang-webtool on erlang-observer to recommends
  to avoid circular dependencies (closes: #526627).
* Added solaris-i386 to HiPE enabled architectures.
* Made script sources in /usr/lib/erlang/erts-*/bin directory executable,
  which is more convenient if a user wants to create a target Erlang system.
* Shortened extended description line for erlang-dev package to make it
  fit 80x25 terminals.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
-module(ex14).
 
2
-copyright('Copyright (c) 1991-97 Ericsson Telecom AB').
 
3
-vsn('$Revision: /main/release/2 $ ').
 
4
 
 
5
-export([start/0,init/0]).
 
6
 
 
7
start() -> spawn(ex14, init, []).
 
8
 
 
9
init() ->
 
10
    Y = [{y,0},{height, 30},{width, 90}],
 
11
    R=[{window, [{width, 400},{height, 300}, {title,"editor"},{map, true}],
 
12
       [{editor,editor,[{x,0},{y, 35},{width,300},{height,250},
 
13
                        {insert,{'end',"Edit this text!"}},{vscroll,right}]},
 
14
        {button, clear, [{label, {text, "Clear"}},{x,0} | Y]},
 
15
        {checkbutton,enable,[{label,{text,"Enable"}},{select,false},{x,100}|Y]},
 
16
        {button, time, [{label, {text, "Insert Time"}},{x,200} | Y]},
 
17
        {button, quit,  [{label, {text, "Quit"}},{x,300} | Y]}]}],
 
18
    gs:create_tree(gs:start(),R),
 
19
    gs:config(editor,{enable,false}),
 
20
    loop().
 
21
 
 
22
loop() ->
 
23
    receive
 
24
        {gs, clear, _, _, _} ->
 
25
            io:format("clear editor~n"),
 
26
            Enable = gs:read(editor, enable),
 
27
            gs:config(editor,{enable, true}),
 
28
            gs:config(editor,clear),
 
29
            gs:config(editor,{enable, Enable});
 
30
        {gs, enable, _, _, [_Txt, _Grp, Enable|_]} ->
 
31
            io:format("Enable: ~w~n", [Enable]),
 
32
            gs:config(editor,{enable, Enable});
 
33
        {gs, time, _, _, _} ->
 
34
            TimeStr = io_lib:format("Hr:Min:Sec is now ~w:~w:~w~n",
 
35
                                    tuple_to_list(time())),
 
36
            io:format("Insert Time: ~s~n", [TimeStr]),
 
37
            Enable = gs:read(editor, enable),
 
38
            gs:config(editor,{enable, true}),
 
39
            gs:config(editor,{insert, {insert, TimeStr}}),
 
40
            gs:config(editor,{enable, Enable});
 
41
        {gs, quit, _, _, _} ->
 
42
            exit(normal);
 
43
        Other ->
 
44
            io:format("Other:~w~n",[Other])
 
45
    end,
 
46
    loop().