]> gitweb.factorcode.org Git - factor.git/commitdiff
curses: simplification, use wide character library to print utf8 strings
authorPhilipp Brüschweiler <blei42@gmail.com>
Thu, 25 Feb 2010 15:23:37 +0000 (16:23 +0100)
committerPhilipp Brüschweiler <blei42@gmail.com>
Sun, 3 Oct 2010 11:17:43 +0000 (13:17 +0200)
extra/curses/curses.factor
extra/curses/ffi/ffi.factor

index dce102b04e2b2e27d7f4fd3f4aae0010c693208f..7d3e4401d5e30d9e24be40e2c6edf673d5dd4f82 100644 (file)
@@ -407,8 +407,8 @@ TUPLE: mouse-event
 
 : button-n? ( bstate n -- ? ) substate-n 0 = not ; inline
 
-: fill-in-type ( mouse-event substate -- )
-    {
+: fill-in-type ( mouse-event bstate button -- )
+    substate-n {
         { BUTTON1_RELEASED       [ +released+ ] }
         { BUTTON1_PRESSED        [ +pressed+ ] }
         { BUTTON1_CLICKED        [ +clicked+ ] }
@@ -418,22 +418,10 @@ TUPLE: mouse-event
 
 : fill-in-bstate ( mouse-event bstate -- )
     2dup {
-        {
-            [ dup 1 button-n? ]
-            [ [ 1 >>button ] dip 1 substate-n fill-in-type ]
-        }
-        {
-            [ dup 2 button-n? ]
-            [ [ 2 >>button ] dip 2 substate-n fill-in-type ]
-        }
-        {
-            [ dup 3 button-n? ]
-            [ [ 3 >>button ] dip 3 substate-n fill-in-type ]
-        }
-        {
-            [ dup 4 button-n? ]
-            [ [ 4 >>button ] dip 4 substate-n fill-in-type ]
-        }
+        { [ dup 1 button-n? ] [ [ 1 >>button ] dip 1 fill-in-type ] }
+        { [ dup 2 button-n? ] [ [ 2 >>button ] dip 2 fill-in-type ] }
+        { [ dup 3 button-n? ] [ [ 3 >>button ] dip 3 fill-in-type ] }
+        { [ dup 4 button-n? ] [ [ 4 >>button ] dip 4 fill-in-type ] }
     } cond
     {
         [ BUTTON_CTRL  bitand 0 = not [ t >>ctrl  ] when drop ]
index dffdb37e2dee9a3b357fa3eca870219f0eb465dc..66fa511619aa19164dbd86effc3a137ab36a3617 100644 (file)
@@ -7,7 +7,7 @@ IN: curses.ffi
 << "curses" {
     { [ os winnt? ]  [ "libcurses.dll" ] }
     { [ os macosx? ] [ "libcurses.dylib" ] }
-    { [ os unix?  ]  [ "libncurses.so.5.7" ] }
+    { [ os unix?  ]  [ "libncursesw.so.5.7" ] }
 } cond cdecl add-library >>
 
 C-TYPE: WINDOW