Blame builtin/optionmenu.ml

Packit bd2e5d
##ifdef CAMLTK
Packit bd2e5d
Packit bd2e5d
open Protocol;;
Packit bd2e5d
(* Implementation of the tk_optionMenu *)
Packit bd2e5d
Packit bd2e5d
let create ?name parent variable values =
Packit bd2e5d
  let w = Widget.new_atom "menubutton" ~parent ?name in
Packit bd2e5d
  let mw = Widget.new_atom "menu" ~parent:w ~name:"menu" in
Packit bd2e5d
  let res =
Packit bd2e5d
    tkEval [|TkToken "tk_optionMenu";
Packit bd2e5d
             TkToken (Widget.name w);
Packit bd2e5d
             cCAMLtoTKtextVariable variable;
Packit bd2e5d
             TkTokenList (List.map (function x -> TkToken x) values)|] in
Packit bd2e5d
  if res <> Widget.name mw then
Packit bd2e5d
    raise (TkError "internal error in Optionmenu.create")
Packit bd2e5d
  else
Packit bd2e5d
    w,mw
Packit bd2e5d
;;
Packit bd2e5d
Packit bd2e5d
let create_named parent name variable values =
Packit bd2e5d
  let w = Widget.new_atom "menubutton" ~parent ~name in
Packit bd2e5d
  let mw = Widget.new_atom "menu" ~parent:w ~name: "menu" in
Packit bd2e5d
  let res =
Packit bd2e5d
    tkEval [|TkToken "tk_optionMenu";
Packit bd2e5d
             TkToken (Widget.name w);
Packit bd2e5d
             cCAMLtoTKtextVariable variable;
Packit bd2e5d
             TkTokenList (List.map (function x -> TkToken x) values)|] in
Packit bd2e5d
  if res <> Widget.name mw then
Packit bd2e5d
    raise (TkError "internal error in Optionmenu.create")
Packit bd2e5d
  else
Packit bd2e5d
    w,mw
Packit bd2e5d
;;
Packit bd2e5d
Packit bd2e5d
##else
Packit bd2e5d
Packit bd2e5d
open Protocol;;
Packit bd2e5d
(* Implementation of the tk_optionMenu *)
Packit bd2e5d
Packit bd2e5d
let create ~parent ~variable ?name values =
Packit bd2e5d
  let w = Widget.new_atom "menubutton" ~parent ?name in
Packit bd2e5d
  let mw = Widget.new_atom "menu" ~parent:w ~name:"menu" in
Packit bd2e5d
  (* assumes .menu naming *)
Packit bd2e5d
  let res =
Packit bd2e5d
    tkEval [|TkToken "tk_optionMenu";
Packit bd2e5d
             TkToken (Widget.name w);
Packit bd2e5d
             cCAMLtoTKtextVariable variable;
Packit bd2e5d
             TkTokenList (List.map ~f:(fun x -> TkToken x) values)|] in
Packit bd2e5d
  if res <> Widget.name mw then
Packit bd2e5d
    raise (TkError "internal error in Optionmenu.create")
Packit bd2e5d
  else
Packit bd2e5d
    w, mw
Packit bd2e5d
;;
Packit bd2e5d
Packit bd2e5d
##endif