Blame support/widget.mli

Packit bd2e5d
(***********************************************************************)
Packit bd2e5d
(*                                                                     *)
Packit bd2e5d
(*                 MLTk, Tcl/Tk interface of OCaml                     *)
Packit bd2e5d
(*                                                                     *)
Packit bd2e5d
(*    Francois Rouaix, Francois Pessaux, Jun Furuse and Pierre Weis    *)
Packit bd2e5d
(*               projet Cristal, INRIA Rocquencourt                    *)
Packit bd2e5d
(*            Jacques Garrigue, Kyoto University RIMS                  *)
Packit bd2e5d
(*                                                                     *)
Packit bd2e5d
(*  Copyright 2002 Institut National de Recherche en Informatique et   *)
Packit bd2e5d
(*  en Automatique and Kyoto University.  All rights reserved.         *)
Packit bd2e5d
(*  This file is distributed under the terms of the GNU Library        *)
Packit bd2e5d
(*  General Public License, with the special exception on linking      *)
Packit bd2e5d
(*  described in file LICENSE found in the OCaml source tree.          *)
Packit bd2e5d
(*                                                                     *)
Packit bd2e5d
(***********************************************************************)
Packit bd2e5d
Packit bd2e5d
(* $Id$ *)
Packit bd2e5d
Packit bd2e5d
(* Support for widget manipulations *)
Packit bd2e5d
Packit bd2e5d
type 'a widget = 'a Rawwidget.raw_widget
Packit bd2e5d
  (* widget is an abstract type *)
Packit bd2e5d
Packit bd2e5d
type any = Rawwidget.raw_any
Packit bd2e5d
and button
Packit bd2e5d
and canvas
Packit bd2e5d
and checkbutton
Packit bd2e5d
and entry
Packit bd2e5d
and frame
Packit bd2e5d
and label
Packit bd2e5d
and listbox
Packit bd2e5d
and menu
Packit bd2e5d
and menubutton
Packit bd2e5d
and message
Packit bd2e5d
and radiobutton
Packit bd2e5d
and scale
Packit bd2e5d
and scrollbar
Packit bd2e5d
and text
Packit bd2e5d
and toplevel
Packit bd2e5d
and ttk_labelframe
Packit bd2e5d
Packit bd2e5d
val forget_type : 'a widget -> any widget
Packit bd2e5d
val coe : 'a widget -> any widget
Packit bd2e5d
Packit bd2e5d
val default_toplevel : toplevel widget
Packit bd2e5d
  (* [default_toplevel] is "." in Tk, the toplevel widget that is
Packit bd2e5d
     always existing during a Tk session. Destroying [default_toplevel]
Packit bd2e5d
     ends the main loop
Packit bd2e5d
   *)
Packit bd2e5d
Packit bd2e5d
val atom : parent: 'a widget -> name: string -> any widget
Packit bd2e5d
  (* [atom parent name] returns the widget [parent.name]. The widget is
Packit bd2e5d
     not created. Only its name is returned. In a given parent, there may
Packit bd2e5d
     only exist one children for a given name.
Packit bd2e5d
     This function should only be used to check the existence of a widget
Packit bd2e5d
     with a known name. It doesn't add the widget to the internal tables
Packit bd2e5d
     of CamlTk.
Packit bd2e5d
   *)
Packit bd2e5d
Packit bd2e5d
val name : 'a widget -> string
Packit bd2e5d
  (* [name w] returns the name (tk "path") of a widget *)
Packit bd2e5d
Packit bd2e5d
(*--*)
Packit bd2e5d
(* The following functions are used internally.
Packit bd2e5d
   There is normally no need for them in users programs
Packit bd2e5d
 *)
Packit bd2e5d
Packit bd2e5d
val known_class : 'a widget -> string
Packit bd2e5d
  (* [known_class w] returns the class of a widget (e.g. toplevel, frame),
Packit bd2e5d
     as known by the CamlTk interface.
Packit bd2e5d
     Not equivalent to "winfo w" in Tk.
Packit bd2e5d
   *)
Packit bd2e5d
Packit bd2e5d
val dummy : any widget
Packit bd2e5d
  (* [dummy] is a widget used as context when we don't have any.
Packit bd2e5d
     It is *not* a real widget.
Packit bd2e5d
   *)
Packit bd2e5d
Packit bd2e5d
val new_atom : parent:'a widget -> ?name: string -> string -> 'b widget
Packit bd2e5d
Packit bd2e5d
val get_atom : string -> any widget
Packit bd2e5d
  (* [get_atom path] returns the widget with Tk path [path] *)
Packit bd2e5d
Packit bd2e5d
val remove : 'a widget -> unit
Packit bd2e5d
  (* [remove w] removes widget from the internal tables *)
Packit bd2e5d
Packit bd2e5d
(* Subtypes tables *)
Packit bd2e5d
val widget_any_table : string list
Packit bd2e5d
val widget_button_table : string list
Packit bd2e5d
val widget_canvas_table : string list
Packit bd2e5d
val widget_checkbutton_table : string list
Packit bd2e5d
val widget_entry_table : string list
Packit bd2e5d
val widget_frame_table : string list
Packit bd2e5d
val widget_label_table : string list
Packit bd2e5d
val widget_listbox_table : string list
Packit bd2e5d
val widget_menu_table : string list
Packit bd2e5d
val widget_menubutton_table : string list
Packit bd2e5d
val widget_message_table : string list
Packit bd2e5d
val widget_radiobutton_table : string list
Packit bd2e5d
val widget_scale_table : string list
Packit bd2e5d
val widget_scrollbar_table : string list
Packit bd2e5d
val widget_text_table : string list
Packit bd2e5d
val widget_toplevel_table : string list
Packit bd2e5d
val widget_ttk_labelframe_table : string list
Packit bd2e5d
Packit bd2e5d
val chk_sub : string -> 'a list -> 'a -> unit
Packit bd2e5d
val check_class : 'a widget -> string list -> unit
Packit bd2e5d
      (* Widget subtyping *)
Packit bd2e5d
Packit bd2e5d
exception IllegalWidgetType of string
Packit bd2e5d
      (* Raised when widget command applied illegally*)