8 class tiframe ~(widget : GBin.frame) ~name ~parent_tree ~pos
9 ?(insert_evbox=true) parent_window =
12 inherit ticontainer ~name ~widget ~parent_tree ~pos
13 ~insert_evbox parent_window as container
15 method private class_name = "GBin.frame"
17 method private get_mandatory_props = [ "label" ]
22 proplist <- proplist @
24 new prop_string ~name:"label" ~init:name ~set:(ftrue frame#set_label);
26 new prop_float ~name:"label_xalign" ~init:"0.0" ~min:0. ~max:1.
27 ~set:(fun x -> frame#set_label_align ~x (); true);
29 new prop_shadow ~name:"shadow_type" ~init:"ETCHED_IN"
30 ~set:(ftrue frame#set_shadow_type) ]
33 let new_tiframe ~name ?(listprop = []) =
34 new tiframe ~widget:(GBin.frame ()) ~name
39 class tiaspect_frame ~(widget : GBin.aspect_frame) ~name ~parent_tree ~pos
40 ?(insert_evbox=true) parent_window =
42 val aspect_frame = widget
43 inherit tiframe ~name ~widget:(widget :> GBin.frame) ~parent_tree ~pos
44 ~insert_evbox parent_window
46 method private class_name = "GBin.aspect_frame"
49 classe <- "aspect_frame";
51 proplist <- proplist @
53 new prop_bool ~name:"obey_child" ~init:"true"
54 ~set:(ftrue aspect_frame#set_obey_child);
56 new prop_float ~name:"ratio" ~init:"1.0" ~min:0. ~max:1.
57 ~set:(ftrue aspect_frame#set_ratio)
61 let new_tiaspect_frame ~name ?(listprop = []) =
62 new tiaspect_frame ~widget:(GBin.aspect_frame ()) ~name
67 class tievent_box ~(widget : GBin.event_box) ~name ~parent_tree ~pos
68 ?(insert_evbox=true) parent_window =
70 val event_box = widget
71 inherit ticontainer ~name ~widget ~parent_tree ~pos
72 ~insert_evbox parent_window
74 method private class_name = "GBin.event_box"
79 let new_event_box ~name ?(listprop = []) =
80 new tievent_box ~widget:(GBin.event_box ()) ~name
85 class tihandle_box ~(widget : GBin.handle_box) ~name ~parent_tree ~pos
86 ?(insert_evbox=true) parent_window =
88 val handle_box = widget
89 inherit ticontainer ~name ~widget ~parent_tree ~pos
90 ~insert_evbox parent_window
92 method private class_name = "GBin.handle_box"
95 classe <- "handle_box";
96 proplist <- proplist @
98 new prop_shadow ~name:"shadow_type" ~init:"OUT"
99 ~set:(ftrue handle_box#set_shadow_type);
101 new prop_position ~name:"handle_position" ~init:"LEFT"
102 ~set:(ftrue handle_box#set_handle_position);
104 new prop_position ~name:"snap_edge" ~init:"TOP"
105 ~set:(ftrue handle_box#set_snap_edge)
109 let new_handle_box ~name ?(listprop = []) =
110 new tihandle_box ~widget:(GBin.handle_box ()) ~name
116 class tiviewport ~(widget : GBin.handle_box) ~name ~parent_tree ~pos
117 ?(insert_evbox=true) parent_window =
119 val viewport = widget
120 inherit ticontainer ~name ~widget ~parent_tree ~pos
121 ~insert_evbox parent_window
123 method private class_name = "GBin.viewport"
126 classe <- "viewport";
127 proplist <- proplist @
129 new prop_shadow ~name:"shadow_type" ~init:"OUT"
130 ~set:(ftrue viewport#set_shadow_type)
134 let new_viewport ~name ?(listprop = []) =
135 new tiviewport ~widget:(GBin.handle_box ()) ~name
141 class tiscrolled_window ~(widget : GBin.scrolled_window)
142 ~name ~parent_tree ~pos ?(insert_evbox=true) parent_window =
144 val scrolled_window = widget
145 inherit ticontainer ~name ~insert_evbox
146 ~parent_tree ~pos ~widget parent_window
148 method private class_name = "GBin.scrolled_window"
149 method private name_of_add_method = "#add_with_viewport"
151 method private add rw ~pos =
152 scrolled_window#add_with_viewport (rw#base);
153 children <- [ rw, `START];
154 self#set_full_menu false;
155 tree_item#drag#dest_unset ()
157 (* we must remove the child from the viewport,
158 not from the scrolled_window;
159 it is not mandatory to remove the viewport
160 from the scrolled_window *)
161 method remove child =
162 let viewport = (new GContainer.container (GtkBase.Container.cast (List.hd scrolled_window#children)#as_widget)) in
163 viewport#remove child#base;
164 (* scrolled_window#remove (List.hd scrolled_window#children); *)
166 self#set_full_menu true;
167 tree_item#drag#dest_set ~actions:[`COPY]
168 [ { target = "STRING"; flags = []; info = 0} ]
172 classe <- "scrolled_window";
173 proplist <- proplist @
174 [ "hscrollbar_policy",
175 new prop_policy ~name:"hscrollbar_policy" ~init:"ALWAYS"
176 ~set:(ftrue scrolled_window#set_hpolicy);
178 new prop_policy ~name:"vscrollbar_policy" ~init:"ALWAYS"
179 ~set:(ftrue scrolled_window#set_vpolicy) ]
182 let new_tiscrolled_window ~name ?(listprop = []) =
183 new tiscrolled_window ~widget:(GBin.scrolled_window ()) ~name