1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
(**************************************************************************)
(* Lablgtk - Examples *)
(* *)
(* This code is in the public domain. *)
(* You may freely copy parts of it in your application. *)
(* *)
(**************************************************************************)
(* $Id$ *)
(* Embedding xpm data into an ML file *)
let openfile = [|
(* width height num_colors chars_per_pixel *)
" 20 19 5 1";
(* colors *)
". c None";
"# c #000000";
"i c #ffffff";
"s c #7f7f00";
"y c #ffff00";
(* pixels *)
"....................";
"....................";
"....................";
"...........###......";
"..........#...#.#...";
"...............##...";
"...###........###...";
"..#yiy#######.......";
"..#iyiyiyiyi#.......";
"..#yiyiyiyiy#.......";
"..#iyiy###########..";
"..#yiy#sssssssss#...";
"..#iy#sssssssss#....";
"..#y#sssssssss#.....";
"..##sssssssss#......";
"..###########.......";
"....................";
"....................";
"...................." |]
let main () =
GMain.init ();
let w = GWindow.window ~border_width:2 () in
w#misc#realize ();
let hbox = GPack.hbox ~spacing:10 ~packing:w#add () in
let pm = GDraw.pixmap_from_xpm_d ~data:openfile ~window:w () in
GMisc.pixmap pm ~packing:hbox#add ();
GMisc.label ~text:"Embedded xpm" ~packing:hbox#add ();
w#show ();
w#connect#destroy ~callback:GMain.quit;
GMain.main ()
let () = main ()
|