From af7c4de023980c3098f2b2c740dbdcbe8abdbdcc Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sun, 20 Apr 2008 23:09:00 -0500 Subject: [PATCH] Remove world size limitation --- extra/ui/gadgets/scrollers/scrollers.factor | 21 +++++++++++++++------ extra/ui/gadgets/worlds/worlds.factor | 3 --- extra/ui/tools/listener/listener.factor | 13 ++----------- extra/ui/tools/workspace/workspace.factor | 7 +++++-- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/extra/ui/gadgets/scrollers/scrollers.factor b/extra/ui/gadgets/scrollers/scrollers.factor index 396a494ef3..ce2bf40db8 100755 --- a/extra/ui/gadgets/scrollers/scrollers.factor +++ b/extra/ui/gadgets/scrollers/scrollers.factor @@ -1,10 +1,9 @@ -! Copyright (C) 2005, 2007 Slava Pestov. +! Copyright (C) 2005, 2008 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. -USING: arrays ui.gadgets -ui.gadgets.viewports ui.gadgets.frames ui.gadgets.grids -ui.gadgets.theme ui.gadgets.sliders ui.gestures kernel math -namespaces sequences models combinators math.vectors -classes.tuple ; +USING: accessors arrays ui.gadgets ui.gadgets.viewports +ui.gadgets.frames ui.gadgets.grids ui.gadgets.theme +ui.gadgets.sliders ui.gestures kernel math namespaces sequences +models combinators math.vectors classes.tuple ; IN: ui.gadgets.scrollers TUPLE: scroller viewport x y follows ; @@ -133,3 +132,13 @@ M: scroller focusable-child* M: scroller model-changed nip f swap set-scroller-follows ; + +TUPLE: limited-scroller dim ; + +: ( gadget -- scroller ) + + limited-scroller new + [ set-gadget-delegate ] keep ; + +M: limited-scroller pref-dim* + dim>> ; diff --git a/extra/ui/gadgets/worlds/worlds.factor b/extra/ui/gadgets/worlds/worlds.factor index 8ee64b58be..b63e7f9d2e 100755 --- a/extra/ui/gadgets/worlds/worlds.factor +++ b/extra/ui/gadgets/worlds/worlds.factor @@ -48,9 +48,6 @@ M: world request-focus-on ( child gadget -- ) M: world hashcode* drop world hashcode* ; -M: world pref-dim* - delegate pref-dim* [ >fixnum ] map { 1024 768 } vmin ; - M: world layout* dup delegate layout* dup world-glass [ diff --git a/extra/ui/tools/listener/listener.factor b/extra/ui/tools/listener/listener.factor index 8e28739ccd..d96270075f 100755 --- a/extra/ui/tools/listener/listener.factor +++ b/extra/ui/tools/listener/listener.factor @@ -24,19 +24,10 @@ TUPLE: listener-gadget input output stack ; : ( listener -- gadget ) listener-gadget-output ; -TUPLE: input-scroller ; - -: ( interactor -- scroller ) - - input-scroller new - [ set-gadget-delegate ] keep ; - -M: input-scroller pref-dim* - drop { 0 100 } ; - : listener-input, ( -- ) g g-> set-listener-gadget-input - "Input" f track, ; + { 0 100 } >>dim + "Input" f track, ; : welcome. ( -- ) "If this is your first time with Factor, please read the " print diff --git a/extra/ui/tools/workspace/workspace.factor b/extra/ui/tools/workspace/workspace.factor index d79fa92f54..5a334ab56b 100755 --- a/extra/ui/tools/workspace/workspace.factor +++ b/extra/ui/tools/workspace/workspace.factor @@ -5,7 +5,7 @@ sequences ui ui.backend ui.tools.debugger ui.gadgets ui.gadgets.books ui.gadgets.buttons ui.gadgets.labelled ui.gadgets.panes ui.gadgets.scrollers ui.gadgets.tracks ui.gadgets.worlds ui.gadgets.presentations ui.gadgets.status-bar -ui.commands ui.gestures assocs arrays namespaces ; +ui.commands ui.gestures assocs arrays namespaces accessors ; IN: ui.tools.workspace TUPLE: workspace book listener popup ; @@ -49,7 +49,10 @@ M: gadget tool-scroller drop f ; get-workspace find-tool nip ; : help-window ( topic -- ) - [ [ [ help ] with-pane ] keep ] keep + [ + [ [ help ] with-pane ] keep + { 550 700 } >>dim + ] keep article-title open-window ; : hide-popup ( workspace -- )