From a4817a0e1712f0b1c521dc3a22de84f45493398c Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Mon, 23 Feb 2009 08:37:38 -0600
Subject: [PATCH 1/4] dont run postgresql tests on win64

---
 basis/db/errors/postgresql/postgresql-tests.factor | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/basis/db/errors/postgresql/postgresql-tests.factor b/basis/db/errors/postgresql/postgresql-tests.factor
index 9dbebe0712..f6668031e5 100644
--- a/basis/db/errors/postgresql/postgresql-tests.factor
+++ b/basis/db/errors/postgresql/postgresql-tests.factor
@@ -5,7 +5,7 @@ db.errors.postgresql db.postgresql io.files.unique kernel namespaces
 tools.test db.tester continuations ;
 IN: db.errors.postgresql.tests
 
-postgresql-test-db [
+[
 
     [ "drop table foo;" sql-command ] ignore-errors
     [ "drop table ship;" sql-command ] ignore-errors
@@ -29,4 +29,4 @@ postgresql-test-db [
         sql-syntax-error?
     ] must-fail-with
 
-] with-db
+] test-postgresql

From c3ef25f81c1a8b0a11b8ad5ac5c214f482a30dfd Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Mon, 23 Feb 2009 10:35:42 -0600
Subject: [PATCH 2/4] made editors.emacs load windows file on windows

---
 basis/editors/emacs/emacs.factor | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/basis/editors/emacs/emacs.factor b/basis/editors/emacs/emacs.factor
index fa717a70fa..05b879770e 100644
--- a/basis/editors/emacs/emacs.factor
+++ b/basis/editors/emacs/emacs.factor
@@ -1,6 +1,6 @@
 USING: definitions io.launcher kernel parser words sequences math
 math.parser namespaces editors make system combinators.short-circuit
-fry threads ;
+fry threads vocabs.loader ;
 IN: editors.emacs
 
 SYMBOL: emacsclient-path
@@ -22,3 +22,5 @@ M: object default-emacsclient ( -- path ) "emacsclient" ;
     where first2 emacsclient ;
 
 [ emacsclient ] edit-hook set-global
+
+os windows? [ "editors.emacs.windows" require ] when

From ea851e3a3281db27f60ef3b1653738147435f7e4 Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Mon, 23 Feb 2009 16:47:07 -0600
Subject: [PATCH 3/4] refactor cairo-demo a bit

---
 extra/cairo-demo/cairo-demo.factor | 66 +++++++++++++++++-------------
 1 file changed, 38 insertions(+), 28 deletions(-)

diff --git a/extra/cairo-demo/cairo-demo.factor b/extra/cairo-demo/cairo-demo.factor
index cec6702ce0..29eb5f4986 100644
--- a/extra/cairo-demo/cairo-demo.factor
+++ b/extra/cairo-demo/cairo-demo.factor
@@ -7,17 +7,16 @@
 
 
 USING: cairo.ffi math math.constants byte-arrays kernel ui ui.render
-           ui.gadgets opengl.gl accessors ;
+combinators ui.gadgets opengl.gl accessors ;
 
 IN: cairo-demo
 
-
 : make-image-array ( -- array )
-  384 256 4 * * <byte-array> ;
+    384 256 4 * * <byte-array> ;
 
 : convert-array-to-surface ( array -- cairo_surface_t )
-  CAIRO_FORMAT_ARGB32 384 256 over 4 *
-  cairo_image_surface_create_for_data ;
+    CAIRO_FORMAT_ARGB32 384 256 over 4 *
+    cairo_image_surface_create_for_data ;
 
 
 TUPLE: cairo-demo-gadget < gadget image-array cairo-t ;
@@ -33,41 +32,52 @@ M: cairo-demo-gadget draw-gadget* ( gadget -- )
     convert-array-to-surface ;
 
 : init-cairo ( gadget -- cairo_t )
-   create-surface cairo_create ;
+    create-surface cairo_create ;
 
 M: cairo-demo-gadget pref-dim* drop { 384 256 0 } ;
 
+ERROR: no-cairo-t ;
+
+<PRIVATE
+
 : draw-hello-world ( gadget -- )
-  cairo-t>>
-  dup "Sans" CAIRO_FONT_SLANT_NORMAL CAIRO_FONT_WEIGHT_BOLD cairo_select_font_face
-  dup 90.0 cairo_set_font_size
-  dup 10.0 135.0 cairo_move_to
-  dup "Hello" cairo_show_text
-  dup 70.0 165.0 cairo_move_to
-  dup "World" cairo_text_path
-  dup 0.5 0.5 1 cairo_set_source_rgb
-  dup cairo_fill_preserve
-  dup 0 0 0 cairo_set_source_rgb
-  dup 2.56 cairo_set_line_width
-  dup cairo_stroke
-  dup 1 0.2 0.2 0.6 cairo_set_source_rgba
-  dup 10.0 135.0 5.12 0 pi 2 * cairo_arc
-  dup cairo_close_path
-  dup 70.0 165.0 5.12 0 pi 2 * cairo_arc
-  cairo_fill ;
+    cairo-t>> [ no-cairo-t ] unless*
+    {
+        [
+            "Sans" CAIRO_FONT_SLANT_NORMAL CAIRO_FONT_WEIGHT_BOLD
+            cairo_select_font_face
+        ]
+        [ 90.0 cairo_set_font_size ]
+        [ 10.0 135.0 cairo_move_to ]
+        [ "Hello" cairo_show_text ]
+        [ 70.0 165.0 cairo_move_to ]
+        [ "World" cairo_text_path ]
+        [ 0.5 0.5 1 cairo_set_source_rgb ]
+        [ cairo_fill_preserve ]
+        [ 0 0 0 cairo_set_source_rgb ]
+        [ 2.56 cairo_set_line_width ]
+        [ cairo_stroke ]
+        [ 1 0.2 0.2 0.6 cairo_set_source_rgba ]
+        [ 10.0 135.0 5.12 0 pi 2 * cairo_arc ]
+        [ cairo_close_path ]
+        [ 70.0 165.0 5.12 0 pi 2 * cairo_arc ]
+        [ cairo_fill ]
+    } cleave ;
+
+PRIVATE>
 
 M: cairo-demo-gadget graft* ( gadget -- )
-  dup dup init-cairo swap (>>cairo-t) draw-hello-world ;
+    dup dup init-cairo swap (>>cairo-t) draw-hello-world ;
 
 M: cairo-demo-gadget ungraft* ( gadget -- )
-   cairo-t>> cairo_destroy ;
+    cairo-t>> cairo_destroy ;
 
 : <cairo-demo-gadget> ( -- gadget )
-  cairo-demo-gadget new-gadget ;
+    cairo-demo-gadget new-gadget ;
 
 : run ( -- )
-  [
+    [
         <cairo-demo-gadget> "Hello World from Factor!" open-window
-  ] with-ui ;
+    ] with-ui ;
 
 MAIN: run

From f32f94c763a5192f94a4a04d6b6f134b75807722 Mon Sep 17 00:00:00 2001
From: Doug Coleman <doug.coleman@gmail.com>
Date: Mon, 23 Feb 2009 16:53:05 -0600
Subject: [PATCH 4/4] fix cairo-demo drawing

---
 extra/cairo-demo/cairo-demo.factor | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/extra/cairo-demo/cairo-demo.factor b/extra/cairo-demo/cairo-demo.factor
index 29eb5f4986..da744e1d53 100644
--- a/extra/cairo-demo/cairo-demo.factor
+++ b/extra/cairo-demo/cairo-demo.factor
@@ -6,8 +6,9 @@
 !  http://cairographics.org/samples/text/
 
 
-USING: cairo.ffi math math.constants byte-arrays kernel ui ui.render
-combinators ui.gadgets opengl.gl accessors ;
+USING: cairo.ffi math math.constants byte-arrays kernel ui
+ui.render combinators ui.gadgets opengl.gl accessors
+namespaces opengl ;
 
 IN: cairo-demo
 
@@ -18,14 +19,15 @@ IN: cairo-demo
     CAIRO_FORMAT_ARGB32 384 256 over 4 *
     cairo_image_surface_create_for_data ;
 
-
 TUPLE: cairo-demo-gadget < gadget image-array cairo-t ;
 
 M: cairo-demo-gadget draw-gadget* ( gadget -- )
-    0 0 glRasterPos2i
-    1.0 -1.0 glPixelZoom
-    [ 384 256 GL_RGBA GL_UNSIGNED_BYTE ] dip
-    image-array>> glDrawPixels ;
+    origin get [
+        0 0 glRasterPos2i
+        1.0 -1.0 glPixelZoom
+        [ 384 256 GL_RGBA GL_UNSIGNED_BYTE ] dip
+        image-array>> glDrawPixels
+    ] with-translation ;
 
 : create-surface ( gadget -- cairo_surface_t )
     make-image-array [ swap (>>image-array) ] keep
@@ -34,7 +36,7 @@ M: cairo-demo-gadget draw-gadget* ( gadget -- )
 : init-cairo ( gadget -- cairo_t )
     create-surface cairo_create ;
 
-M: cairo-demo-gadget pref-dim* drop { 384 256 0 } ;
+M: cairo-demo-gadget pref-dim* drop { 384 256 } ;
 
 ERROR: no-cairo-t ;