Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Caml-list] [ANN]Amthing - a multi-threaded GUI library

20 views
Skip to first unread message

Satoshi Ogasawara

unread,
Apr 14, 2009, 1:09:40 AM4/14/09
to caml...@inria.fr
Hello list,

I'm please to announce the first public release of Amthing, a multi-threaded
GUI library for OCaml.

Features are:

- Multi-threaded design using Concurrent ML style message passing.
- Time-line animation and functional reactive sprite system.
- X11 Binding.
- 2D vector rendering by cairo.

Here's a "Hello world" example of Amthing.

open Ccell
open Event
open Amthing.Util.Persavatives

module W = Amthing.Core.Window ( Amthing.XWindow )
module K = Amthing.KeyCode
module E = Amthing.WinEvent
module S = Amthing.Sprite
module C = Amthing.Component
let wh = W.make (Amthing.XWindow.default_parameter ())
let tc = lazy (W.make_text_context wh)

let _ =
W.resize wh {| x = 0; y = 0; w = 200; h = 200 |};
let hello =
new S.label !$tc "hello world!"
+> S.set (`X 55.)
+> S.set (`Y 90.)
+> S.set (`Color Amthing.Color.blue)
+> C.make
in
W.add_visible wh hello;
W.set_title wh "amthing hello world!";
W.show wh;
let main_loop () =
match select [ Bcast.receive (W.event wh) ] with
`KEY_PRESS input when E.key_code input = Some K._q ->
W.close wh;
exit 0
| #E.t -> ()
in
forever main_loop ()


you can clone the repository from OCamlForge subversion :

svn checkout svn://svn.forge.ocamlcore.org/svnroot/amthing

or view souce code on the web.

http://forge.ocamlcore.org/plugins/scmsvn/viewcvs.php/trunk/?root=amthing


have fun,

---
Ogasawara Satoshi
| - Email: ogas...@itpl.co.jp

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

David MENTRE

unread,
Apr 14, 2009, 3:58:33 AM4/14/09
to Satoshi Ogasawara, caml...@inria.fr
Hello,

On Tue, Apr 14, 2009 at 07:11, Satoshi Ogasawara <ogas...@itpl.co.jp> wrote:
> - Multi-threaded design using Concurrent ML style message passing.
> - Time-line animation and functional reactive sprite system.
> - X11 Binding.
> - 2D vector rendering by cairo.

1. Are there any screenshots?

2. Is there a widget system like in GTK/Qt?

3. What is the domain space covered by this library? Was it made for
a specific purpose? IT Planning, Inc. is apparently a Japanese company
using OCaml but the main software is using Java Swing GUI.

Sincerely yours,
david

Satoshi Ogasawara

unread,
Apr 14, 2009, 4:53:36 AM4/14/09
to David MENTRE, caml...@inria.fr
Hello,

On 2009/04/14, at 16:58, David MENTRE wrote:
> 1. Are there any screenshots?

I've just take it.
http://www.itpl.co.jp/amthing/concurrent_example.png

> 2. Is there a widget system like in GTK/Qt?

Widgets are under developing. We will support button, label, textbox,
checkbox, radio button, tab, listbox, tree, grid,..etc. We already supports
Pango and XIM for textbox.

> 3. What is the domain space covered by this library? Was it made for
> a specific purpose? IT Planning, Inc. is apparently a Japanese company
> using OCaml but the main software is using Java Swing GUI.

The main purpose is to develop an ordinary desktop application covered
by GTK/Qt. In addition, Amthing is applicable to rich client which access
to internet services. Animation makes application rich. Concurrent environment
helps us to write asynchronous communications.

best regards,


---
Ogasawara Satoshi
| - Email: ogas...@itpl.co.jp

_______________________________________________

Alp Mestan

unread,
Apr 14, 2009, 5:11:43 AM4/14/09
to Satoshi Ogasawara, caml...@inria.fr
Have you planned to write a little introductory tutorial so that we could do
some tests and give feedback about Amthing ?

Thanks.

--
Alp Mestan
In charge of the C++ section on Developpez.com.

Alp Mestan

unread,
Apr 14, 2009, 7:05:06 AM4/14/09
to Satoshi Ogasawara, caml...@inria.fr
On Tue, Apr 14, 2009 at 12:29 PM, Satoshi Ogasawara <ogas...@itpl.co.jp>wrote:

>
> On 2009/04/14, at 18:11, Alp Mestan wrote:
> > Have you planned to write a little introductory tutorial so that we could
> do some tests and give feedback about Amthing ?
>
>

> Thank you for your help.
> We plan for write some webpages including build sequence, tutorial and API
> document
> in a month.
>

Great. Keep us updated :-)

0 new messages