]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/ui/gadgets/worlds/worlds.factor
Merge branch 'master' of git://repo.or.cz/factor/jcg
[factor.git] / basis / ui / gadgets / worlds / worlds.factor
index 3b9b2fa1f374157b15ef922675539140d032d0ca..9290af1f6426b012bc77d4a23f4888a60e97342e 100644 (file)
@@ -13,6 +13,8 @@ title status
 fonts handle
 window-loc ;
 
+TUPLE: offscreen-world < world ;
+
 : find-world ( gadget -- world/f ) [ world? ] find-parent ;
 
 : show-status ( string/f gadget -- )
@@ -38,8 +40,8 @@ M: world request-focus-on ( child gadget -- )
     2dup eq?
     [ 2drop ] [ dup focused?>> (request-focus) ] if ;
 
-: <world> ( gadget title status -- world )
-    { 0 1 } world new-track
+: new-world ( gadget title status class -- world )
+    { 0 1 } swap new-track
         t >>root?
         t >>active?
         H{ } clone >>fonts
@@ -49,6 +51,11 @@ M: world request-focus-on ( child gadget -- )
         swap 1 track-add
     dup request-focus ;
 
+: <world> ( gadget title status -- world )
+    world new-world ;
+: <offscreen-world> ( gadget title status -- world )
+    offscreen-world new-world ;
+
 M: world layout*
     dup call-next-method
     dup glass>> [