]> gitweb.factorcode.org Git - factor.git/commitdiff
Tweak inspector and profiler tools so that the preferred size is computed from layout...
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 16 Feb 2009 10:34:22 +0000 (04:34 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 16 Feb 2009 10:34:22 +0000 (04:34 -0600)
basis/ui/tools/common/common.factor
basis/ui/tools/inspector/inspector.factor
basis/ui/tools/profiler/profiler.factor

index 6d40acbdd3683b988cac316fcca5dc6a7f6952fe..e581e72e24856a6cfd468756e6f4ea92e33fdcaf 100644 (file)
@@ -1,7 +1,8 @@
 ! Copyright (C) 2009 Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors assocs classes classes.mixin kernel namespaces
-parser ui.gadgets ui.gadgets.scrollers ui.gadgets.tracks ;
+parser ui.gadgets ui.gadgets.scrollers ui.gadgets.tracks
+combinators.short-circuit ;
 IN: ui.tools.common
 
 SYMBOL: tool-dims
@@ -11,7 +12,7 @@ tool-dims global [ H{ } clone or ] change-at
 TUPLE: tool < track ;
 
 M: tool pref-dim*
-    class tool-dims get at ;
+    { [ class tool-dims get at ] [ call-next-method ] } 1|| ;
 
 M: tool layout*
     [ call-next-method ]
index 29eafb1401032ce8094e0699590640517ceca526..dfff7cbf42805128902e8f8f2b928175458087bd 100644 (file)
@@ -12,8 +12,6 @@ IN: ui.tools.inspector
 
 TUPLE: inspector-gadget < tool table ;
 
-{ 500 300 } inspector-gadget set-tool-dim
-
 TUPLE: slot-description key key-string value value-string ;
 
 : <slot-description> ( key value -- slot-description )
@@ -65,7 +63,11 @@ M: hashtable make-slot-descriptions
 : <inspector-table> ( model -- table )
     [ make-slot-descriptions ] <filter> inspector-renderer <table>
         [ dup primary-operation invoke-command ] >>action
-        monospace-font >>font ;
+        monospace-font >>font
+        15 >>min-rows
+        15 >>max-rows
+        40 >>min-cols
+        40 >>max-cols ;
 
 : <inspector-gadget> ( model -- gadget )
     vertical inspector-gadget new-track
index 0e785303a4a0dc30a5ac2bb751ce5e9f4086ff3f..71c931e7e5e637c853533f446779574d4db83ab3 100644 (file)
@@ -20,8 +20,6 @@ words
 methods
 generic class ;
 
-{ 700 400 } profiler-gadget set-tool-dim
-
 SINGLETONS: word-renderer vocab-renderer ;
 UNION: profiler-renderer word-renderer vocab-renderer ;
 
@@ -126,9 +124,13 @@ M: method-renderer column-titles drop { "Method" "Count" } ;
         { 3 3 } >>gap
         profiler vocabs>> vocab-renderer <profiler-table>
             profiler vocab>> >>selected-value
+            10 >>min-rows
+            10 >>max-rows
         "Vocabularies" <labeled-gadget>
     1/2 track-add
         profiler <words-model> word-renderer <profiler-table>
+            10 >>min-rows
+            10 >>max-rows
         "Words" <labeled-gadget>
     1/2 track-add ;
 
@@ -147,6 +149,9 @@ M: method-renderer column-titles drop { "Method" "Count" } ;
         1/2 track-add
     1/2 track-add
         profiler methods>> method-renderer <profiler-table>
+            5 >>min-rows
+            5 >>max-rows
+            40 >>min-cols
         "Methods" <labeled-gadget>
     1/2 track-add ;