X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Flablgtk%2Flablgtk_20000829-0.1.0%2FgWindow.ml;fp=helm%2FDEVEL%2Flablgtk%2Flablgtk_20000829-0.1.0%2FgWindow.ml;h=9ee313647d4b516baa03a9d5bc4fa980d6730f1a;hb=2ee84a2a641938988703e329aef9fc3c5eb5aacf;hp=0000000000000000000000000000000000000000;hpb=34d83812af9b7064cc8f735c2a78169881140010;p=helm.git diff --git a/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/gWindow.ml b/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/gWindow.ml new file mode 100644 index 000000000..9ee313647 --- /dev/null +++ b/helm/DEVEL/lablgtk/lablgtk_20000829-0.1.0/gWindow.ml @@ -0,0 +1,151 @@ +(* $Id$ *) + +open Gaux +open Gtk +open GtkBase +open GtkWindow +open GtkMisc +open GObj +open GContainer + +class ['a] window_skel obj = object + constraint 'a = _ #window_skel + inherit container obj + method event = new GObj.event_ops obj + method as_window = Window.coerce obj + method activate_focus () = Window.activate_focus obj + method activate_default () = Window.activate_default obj + method add_accel_group = Window.add_accel_group obj + method set_modal = Window.set_modal obj + method set_default_size = Window.set_default_size obj + method set_position = Window.set_position obj + method set_resize_mode = Container.set_resize_mode obj + method set_transient_for (w : 'a) = + Window.set_transient_for obj w#as_window + method set_title = Window.set_title obj + method set_wm_name name = Window.set_wmclass obj ~name + method set_wm_class cls = Window.set_wmclass obj ~clas:cls + method set_allow_shrink allow_shrink = Window.set_policy obj ~allow_shrink + method set_allow_grow allow_grow = Window.set_policy obj ~allow_grow + method set_auto_shrink auto_shrink = Window.set_policy obj ~auto_shrink + method show () = Widget.show obj +end + +class window obj = object + inherit [window] window_skel (Window.coerce obj) + method connect = new container_signals obj +end + +let window ?kind:(t=`TOPLEVEL) ?title ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y + ?border_width ?width ?height ?(show=false) () = + let w = Window.create t in + Window.set w ?title ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y; + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new window w + +class dialog obj = object + inherit [window] window_skel (Dialog.coerce obj) + method connect = new container_signals obj + method action_area = new GPack.box (Dialog.action_area obj) + method vbox = new GPack.box (Dialog.vbox obj) +end + +let dialog ?title ?wm_name ?wm_class ?position ?allow_shrink + ?allow_grow ?auto_shrink ?modal ?x ?y ?border_width ?width ?height + ?(show=false) () = + let w = Dialog.create () in + Window.set w ?title ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y; + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new dialog w + +class color_selection_dialog obj = object + inherit [window] window_skel (obj : Gtk.color_selection_dialog obj) + method connect = new container_signals obj + method ok_button = + new GButton.button (ColorSelection.ok_button obj) + method cancel_button = + new GButton.button (ColorSelection.cancel_button obj) + method help_button = + new GButton.button (ColorSelection.help_button obj) + method colorsel = + new GMisc.color_selection (ColorSelection.colorsel obj) +end + +let color_selection_dialog ?(title="Pick a color") + ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y + ?border_width ?width ?height ?(show=false) () = + let w = ColorSelection.create_dialog title in + Window.set w ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y; + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new color_selection_dialog w + +class file_selection obj = object + inherit [window] window_skel (obj : Gtk.file_selection obj) + method connect = new container_signals obj + method set_filename = FileSelection.set_filename obj + method get_filename = FileSelection.get_filename obj + method set_fileop_buttons = FileSelection.set_fileop_buttons obj + method ok_button = new GButton.button (FileSelection.get_ok_button obj) + method cancel_button = + new GButton.button (FileSelection.get_cancel_button obj) + method help_button = new GButton.button (FileSelection.get_help_button obj) +end + +let file_selection ?(title="Choose a file") ?filename + ?(fileop_buttons=false) + ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y + ?border_width ?width ?height ?(show=false) () = + let w = FileSelection.create title in + FileSelection.set w ?filename ~fileop_buttons; + Window.set w ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y; + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new file_selection w + +class font_selection_dialog obj = object + inherit [window] window_skel (obj : Gtk.font_selection_dialog obj) + method connect = new container_signals obj +(* + method font = FontSelectionDialog.get_font obj + method font_name = FontSelectionDialog.get_font_name obj + method set_font_name = FontSelectionDialog.set_font_name obj + method preview_text = FontSelectionDialog.get_preview_text obj + method set_preview_text = FontSelectionDialog.set_preview_text obj + method set_filter = FontSelectionDialog.set_filter obj +*) + method selection = + new GMisc.font_selection (FontSelectionDialog.font_selection obj) + method ok_button = new GButton.button (FontSelectionDialog.ok_button obj) + method apply_button = + new GButton.button (FontSelectionDialog.apply_button obj) + method cancel_button = + new GButton.button (FontSelectionDialog.cancel_button obj) +end + +let font_selection_dialog ?title ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y + ?border_width ?width ?height ?(show=false) () = + let w = FontSelectionDialog.create ?title () in + Window.set w ?wm_name ?wm_class ?position + ?allow_shrink ?allow_grow ?auto_shrink ?modal ?x ?y; + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new font_selection_dialog w + +class plug (obj : Gtk.plug obj) = window obj + +let plug ~window:xid ?border_width ?width ?height ?(show=false) () = + let w = Plug.create xid in + Container.set w ?border_width ?width ?height; + if show then Widget.show w; + new plug w