diff --git a/src/plugins/gui/wbox.ml b/src/plugins/gui/wbox.ml index a00525e95e893cc36e7b9bfa9744eb98a11f75a7..575431003da55661039bfcaf562aac8c86edebc1 100644 --- a/src/plugins/gui/wbox.ml +++ b/src/plugins/gui/wbox.ml @@ -110,3 +110,11 @@ let split ~dir ?get ?set w1 w2 = ignore (pane#event#connect#button_release ~callback) ; end ; new Wutil.gobj_widget pane + +let scroll ?(hpolicy=`AUTOMATIC) ?(vpolicy=`AUTOMATIC) w = + let scrolled = GBin.scrolled_window ~vpolicy ~hpolicy () in + scrolled#add_with_viewport w#coerce ; + new Wutil.gobj_widget scrolled + +let hscroll w = scroll ~vpolicy:`NEVER w +let vscroll w = scroll ~hpolicy:`NEVER w diff --git a/src/plugins/gui/wbox.mli b/src/plugins/gui/wbox.mli index b0b3c142f4439a605b9f3c2b4b8aa5174a4b2c06..b9e2912d6c4889dd5a1b4dc1ffab5cacd05a8ea0 100644 --- a/src/plugins/gui/wbox.mli +++ b/src/plugins/gui/wbox.mli @@ -87,3 +87,15 @@ val split : ?get:(unit -> float) -> ?set:(float -> unit) -> widget -> widget -> widget + +(** default policy is AUTOMATIC *) +val scroll: + ?hpolicy:[`AUTOMATIC|`ALWAYS|`NEVER] -> + ?vpolicy:[`AUTOMATIC|`ALWAYS|`NEVER] -> + widget -> widget + +(** Same as [scroll ~vpolicy:`NEVER] *) +val hscroll : widget -> widget + +(** Same as [scroll ~volicy:`NEVER] *) +val vscroll : widget -> widget