X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2FmatitaGtkMisc.mli;h=32b1fe53b945c600d801cac670348def88fee90c;hb=acf29bdbdcdc6ad8c2d9d27e8a47500981b605cd;hp=8c45d4d59372e8a04ea8583207f921a2f6892bee;hpb=afd3b379d4959e4a18c1f26f25e4a9c14997866f;p=helm.git diff --git a/helm/matita/matitaGtkMisc.mli b/helm/matita/matitaGtkMisc.mli index 8c45d4d59..32b1fe53b 100644 --- a/helm/matita/matitaGtkMisc.mli +++ b/helm/matita/matitaGtkMisc.mli @@ -1,4 +1,4 @@ -(* Copyright (C) 2004, HELM Team. +(* Copyright (C) 2004-2005, HELM Team. * * This file is part of HELM, an Hypertextual, Electronic * Library of Mathematics, developed at the Computer Science @@ -35,6 +35,33 @@ val toggle_win: val add_key_binding: Gdk.keysym -> (unit -> 'a) -> GBin.event_box -> unit +(** Connect a callback to the clicked signal of a button, ignoring its return + * value *) +val connect_button: #GButton.button -> (unit -> unit) -> unit + + +(** Connect a callback to the toggled signal of a button, ignoring its return + * value *) +val connect_toggle_button: #GButton.toggle_button -> (unit -> unit) -> unit + +(** Like connect_button above, but connects a callback to the activate signal of + * a menu item *) +val connect_menu_item: #GMenu.menu_item -> (unit -> unit) -> unit + + (** connect a unit -> unit callback to a particular key press event. Event can + * be specified using its keysym and a list of modifiers which must be in + * effect for the callback to be executed. Further signal processing of other + * key press events remains unchanged; further signal processing of the + * specified key press depends on the stop parameter *) +val connect_key: + GObj.event_ops -> + ?modifiers:Gdk.Tags.modifier list -> + ?stop:bool -> (* stop signal handling when the given key has been pressed? + * Defaults to false *) + Gdk.keysym -> (* (= int) the key, see GdkKeysyms.ml *) + (unit -> unit) -> (* callback *) + unit + (** single string column list *) class stringListModel: GTree.view -> @@ -46,27 +73,39 @@ class stringListModel: method easy_selection: unit -> string list end + (** as above with Pixbuf associated to each row. Each time an insert is + * performed a string tag should be specified, the corresponding pixbuf in the + * tags associative list will be shown on the left of the inserted row *) +class taggedStringListModel: + tags:((string * GdkPixbuf.pixbuf) list) -> + GTree.view -> + object + method list_store: GTree.list_store (** list_store forwarding *) + + method easy_append: tag:string -> string -> unit + method easy_insert: int -> tag:string -> string -> unit + method easy_selection: unit -> string list + end + (** {2 Matita GUI components} *) class type gui = object (* minimal gui object requirements *) - method newUriDialog: unit -> MatitaGeneratedGui.uriChoiceDialog + method newUriDialog: unit -> MatitaGeneratedGui.uriChoiceDialog + method newInterpDialog: unit -> MatitaGeneratedGui.interpChoiceDialog method newConfirmationDialog: unit -> MatitaGeneratedGui.confirmationDialog - method newEmptyDialog: unit -> MatitaGeneratedGui.emptyDialog + method newEmptyDialog: unit -> MatitaGeneratedGui.emptyDialog end (** {3 Dialogs} *) -exception Cancel (* raised when no answer is given by the user *) - - (** @raise Cancel *) -val interactive_user_uri_choice: gui:#gui -> MatitaTypes.choose_uris_callback - - (** @raise Cancel *) -val interactive_interp_choice: gui:#gui -> MatitaTypes.choose_interp_callback - - (** @return true if user hit "ok" button, false if user hit "cancel" button *) -val ask_confirmation: gui:#gui -> ?title:string -> ?msg:string -> unit -> bool + (** @return true if user hit "ok" button, false if user hit "cancel" button + * @param cancel if set to true a cancel button is shown to the user, otherwise + * it is not (and indeed the function will return true). Defaults to true *) +val ask_confirmation: + gui:#gui -> + ?cancel:bool -> ?title:string -> ?msg:string -> unit -> + bool (** @param multiline (default: false) if true a TextView widget will be used * for prompting the user otherwise a TextEntry widget will be