]> gitweb.factorcode.org Git - factor.git/commitdiff
move gtk samples from extra/gir/samples/lowlevel to gtk-samples;
authorAnton Gorenko <ex.rzrjck@gmail.com>
Sat, 20 Nov 2010 15:15:50 +0000 (21:15 +0600)
committerAnton Gorenko <ex.rzrjck@gmail.com>
Sat, 20 Nov 2010 15:20:47 +0000 (21:20 +0600)
fix gtk-samples;

extra/gir/samples/lowlevel/authors.txt [deleted file]
extra/gir/samples/lowlevel/hello-world/authors.txt [deleted file]
extra/gir/samples/lowlevel/hello-world/hello-world.factor [deleted file]
extra/gir/samples/lowlevel/lowlevel.factor [deleted file]
extra/gir/samples/lowlevel/opengl/authors.txt [deleted file]
extra/gir/samples/lowlevel/opengl/opengl.factor [deleted file]
extra/gtk-samples/hello-world/authors.txt [new file with mode: 0644]
extra/gtk-samples/hello-world/hello-world.factor [new file with mode: 0644]
extra/gtk-samples/opengl/authors.txt [new file with mode: 0644]
extra/gtk-samples/opengl/opengl.factor [new file with mode: 0644]

diff --git a/extra/gir/samples/lowlevel/authors.txt b/extra/gir/samples/lowlevel/authors.txt
deleted file mode 100644 (file)
index ce9bcc8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Anton Gorenko
\ No newline at end of file
diff --git a/extra/gir/samples/lowlevel/hello-world/authors.txt b/extra/gir/samples/lowlevel/hello-world/authors.txt
deleted file mode 100644 (file)
index ce9bcc8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Anton Gorenko
\ No newline at end of file
diff --git a/extra/gir/samples/lowlevel/hello-world/hello-world.factor b/extra/gir/samples/lowlevel/hello-world/hello-world.factor
deleted file mode 100644 (file)
index b1bcf02..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-! Copyright (C) 2010 Anton Gorenko.
-! See http://factorcode.org/license.txt for BSD license.
-USING: alien.strings gobject.ffi gtk.ffi io.encodings.utf8
-kernel locals ;
-IN: gir.samples.lowlevel.hello-world
-
-:: hello-world-win ( -- window )  
-    GTK_WINDOW_TOPLEVEL gtk_window_new :> window
-
-    window
-    [ "Hello world!" utf8 string>alien gtk_window_set_title ]
-    [ 300 200 gtk_window_set_default_size ]
-    [ GTK_WIN_POS_CENTER gtk_window_set_position ] tri
-
-    gtk_fixed_new :> frame
-    window frame gtk_container_add
-    
-    "Say 'Hello!'" utf8 string>alien gtk_button_new_with_label :> button
-    button 140 30 gtk_widget_set_size_request
-    frame button 80 60 gtk_fixed_put
-
-    "" utf8 string>alien gtk_label_new :> label
-    frame label 120 110 gtk_fixed_put
-
-    button "clicked" utf8 string>alien
-    [ nip "Hello! :)" utf8 string>alien gtk_label_set_text t ] GtkButton:clicked
-    label f 0 g_signal_connect_data drop
-    
-    window ;
-
-:: hello-world-main ( -- )
-    f f gtk_init
-    hello-world-win :> window
-
-    window "destroy" utf8 string>alien
-    [ 2drop gtk_main_quit ] GtkObject:destroy
-    f f 0 g_signal_connect_data drop
-
-    window gtk_widget_show_all
-    
-    gtk_main ;
-
-MAIN: hello-world-main
-
diff --git a/extra/gir/samples/lowlevel/lowlevel.factor b/extra/gir/samples/lowlevel/lowlevel.factor
deleted file mode 100644 (file)
index 795d3cf..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-! Copyright (C) 2010 Anton Gorenko.
-! See http://factorcode.org/license.txt for BSD license.
-USING: alien.c-types alien.strings byte-arrays classes.struct
-glib.ffi gobject.ffi gtk.ffi io.encodings.utf8 kernel
-literals locals make math prettyprint sequences specialized-arrays
-gir.samples.lowlevel.hello-world
-gir.samples.lowlevel.opengl
-gir.samples.lowlevel.gstreamer ;
-IN: gir.samples.lowlevel
-
-SPECIALIZED-ARRAY: ulong
-
-CONSTANT: samples {
-    { "hello-world" "Simple 'Hello world!' program" [ hello-world-win ] }
-    { "opengl" "GtkGLExt sample program" [ opengl-win ] }
-    { "gstreamer" "Small GStreamer-based multimedia player " [ gstreamer-win ] }
-}
-
-:: list-on-row-activited ( sender path column user_data -- )
-    path gtk_tree_path_get_indices *int samples nth last
-    call( -- win ) gtk_widget_show_all ;
-
-:: main ( -- )
-    f f gtk_init
-    
-    GTK_WINDOW_TOPLEVEL gtk_window_new :> window
-
-    window
-    [ "Low-level Gtk samples" utf8 string>alien gtk_window_set_title ]
-    [ 300 400 gtk_window_set_default_size ]
-    [ GTK_WIN_POS_CENTER gtk_window_set_position ] tri
-  
-    gtk_tree_view_new :> list
-    list f gtk_tree_view_set_headers_visible
-
-    gtk_cell_renderer_text_new :> renderer
-    gtk_tree_view_column_new :> column
-    column "Sample" utf8 string>alien gtk_tree_view_column_set_title
-    column renderer t gtk_tree_view_column_pack_start
-    column renderer "markup" utf8 string>alien 0 gtk_tree_view_column_add_attribute
-    list column gtk_tree_view_append_column drop
-
-    ulong-array{ $ G_TYPE_STRING }
-    [ length ] keep gtk_list_store_newv :> store
-
-    list store gtk_tree_view_set_model
-
-    store g_object_unref
-
-    GtkTreeIter <struct> :> iter
-    GValue <struct> :> value
-    value G_TYPE_STRING g_value_init drop
-    samples [
-        first2 swap [ "<big><b>" % % "</b></big>\n" % % ] "" make
-        value swap utf8 string>alien g_value_set_string
-        store iter gtk_list_store_append
-        store iter 0 value gtk_list_store_set_value
-    ] each
-  
-    list 300 300 gtk_widget_set_size_request
-
-    window list gtk_container_add
-
-    list "row-activated"
-    utf8 string>alien
-    [ list-on-row-activited ] GtkTreeView:row-activated
-    f f 0 g_signal_connect_data drop
-
-    window "destroy" utf8 string>alien
-    [ 2drop gtk_main_quit ] GtkObject:destroy
-    f f 0 g_signal_connect_data drop
-    
-    window gtk_widget_show_all
-
-    gtk_main ;
-
-MAIN: main
-
diff --git a/extra/gir/samples/lowlevel/opengl/authors.txt b/extra/gir/samples/lowlevel/opengl/authors.txt
deleted file mode 100644 (file)
index ce9bcc8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Anton Gorenko
\ No newline at end of file
diff --git a/extra/gir/samples/lowlevel/opengl/opengl.factor b/extra/gir/samples/lowlevel/opengl/opengl.factor
deleted file mode 100644 (file)
index 52d658c..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-! Copyright (C) 2010 Anton Gorenko.
-! See http://factorcode.org/license.txt for BSD license.
-USING: alien.strings gdk.gl.ffi gobject.ffi gtk.ffi gtk.gl.ffi
-io.encodings.utf8 kernel locals opengl.gl ;
-IN: gir.samples.lowlevel.opengl
-
-! This sample is based on
-! http://code.valaide.org/content/simple-opengl-sample-using-gtkglext
-
-:: on-configure ( sender event user-data -- result )
-    sender gtk_widget_get_gl_context :> gl-context
-    sender gtk_widget_get_gl_window :> gl-drawable
-
-    gl-drawable gl-context gdk_gl_drawable_gl_begin dup
-    [
-        0 0 200 200 glViewport
-        gl-drawable gdk_gl_drawable_gl_end
-    ] when ;
-
-:: on-expose ( sender event user-data -- result )
-    sender gtk_widget_get_gl_context :> gl-context
-    sender gtk_widget_get_gl_window :> gl-drawable
-
-    gl-drawable gl-context gdk_gl_drawable_gl_begin dup
-    [
-        GL_COLOR_BUFFER_BIT glClear
-
-        GL_TRIANGLES glBegin
-        1.0 0.0 0.0 glColor3f
-        0 1 glVertex2i
-        0.0 1.0 0.0 glColor3f
-        -1 -1 glVertex2i
-        0.0 0.0 1.0 glColor3f
-        1 -1 glVertex2i
-        glEnd
-        gl-drawable gdk_gl_drawable_is_double_buffered 1 =
-        [ gl-drawable gdk_gl_drawable_swap_buffers ]
-        [ glFlush ] if
-
-        gl-drawable gdk_gl_drawable_gl_end
-    ] when ;
-    
-:: opengl-win ( -- window )  
-    GTK_WINDOW_TOPLEVEL gtk_window_new :> window
-
-    window
-    [ "OpenGL" utf8 string>alien gtk_window_set_title ]
-    [ 200 200 gtk_window_set_default_size ]
-    [ GTK_WIN_POS_CENTER gtk_window_set_position ] tri
-
-    GDK_GL_MODE_RGBA gdk_gl_config_new_by_mode :> gl-config
-    
-    window gl-config f t GDK_GL_RGBA_TYPE
-    gtk_widget_set_gl_capability drop
-
-    window "configure-event" utf8 string>alien
-    [ on-configure ] GtkWidget:configure-event
-    f f 0 g_signal_connect_data drop
-
-    window "expose-event" utf8 string>alien
-    [ on-expose ] GtkWidget:expose-event
-    f f 0 g_signal_connect_data drop
-
-    window ;
-
-:: opengl-main ( -- )
-    f f gtk_init
-    f f gtk_gl_init
-    opengl-win :> window
-
-    window "destroy" utf8 string>alien
-    [ 2drop gtk_main_quit ] GtkObject:destroy
-    f f 0 g_signal_connect_data drop
-
-    window gtk_widget_show_all
-    
-    gtk_main ;
-
-MAIN: opengl-main
-
diff --git a/extra/gtk-samples/hello-world/authors.txt b/extra/gtk-samples/hello-world/authors.txt
new file mode 100644 (file)
index 0000000..ce9bcc8
--- /dev/null
@@ -0,0 +1 @@
+Anton Gorenko
\ No newline at end of file
diff --git a/extra/gtk-samples/hello-world/hello-world.factor b/extra/gtk-samples/hello-world/hello-world.factor
new file mode 100644 (file)
index 0000000..fd0b609
--- /dev/null
@@ -0,0 +1,47 @@
+! Copyright (C) 2010 Anton Gorenko.
+! See http://factorcode.org/license.txt for BSD license.
+USING: alien.strings gobject.ffi gtk.ffi io.encodings.utf8
+kernel locals ;
+IN: gtk-samples.hello-world
+
+: on-button-clicked ( button label-user-data -- )
+    nip "Hello! :)" utf8 string>alien gtk_label_set_text ;
+    
+:: hello-world-win ( -- window )  
+    GTK_WINDOW_TOPLEVEL gtk_window_new :> window
+
+    window
+    [ "Hello world!" utf8 string>alien gtk_window_set_title ]
+    [ 300 200 gtk_window_set_default_size ]
+    [ GTK_WIN_POS_CENTER gtk_window_set_position ] tri
+
+    gtk_fixed_new :> frame
+    window frame gtk_container_add
+    
+    "Say 'Hello!'" utf8 string>alien gtk_button_new_with_label :> button
+    button 140 30 gtk_widget_set_size_request
+    frame button 80 60 gtk_fixed_put
+
+    "" utf8 string>alien gtk_label_new :> label
+    frame label 120 110 gtk_fixed_put
+
+    button "clicked" utf8 string>alien
+    [ on-button-clicked ] GtkButton:clicked label
+    g_signal_connect drop
+    
+    window ;
+
+:: hello-world-main ( -- )
+    f f gtk_init
+    hello-world-win :> window
+
+    window "destroy" utf8 string>alien
+    [ 2drop gtk_main_quit ] GtkObject:destroy f
+    g_signal_connect drop
+
+    window gtk_widget_show_all
+    
+    gtk_main ;
+
+MAIN: hello-world-main
+
diff --git a/extra/gtk-samples/opengl/authors.txt b/extra/gtk-samples/opengl/authors.txt
new file mode 100644 (file)
index 0000000..ce9bcc8
--- /dev/null
@@ -0,0 +1 @@
+Anton Gorenko
\ No newline at end of file
diff --git a/extra/gtk-samples/opengl/opengl.factor b/extra/gtk-samples/opengl/opengl.factor
new file mode 100644 (file)
index 0000000..619e95e
--- /dev/null
@@ -0,0 +1,81 @@
+! Copyright (C) 2010 Anton Gorenko.
+! See http://factorcode.org/license.txt for BSD license.
+USING: alien.strings gdk.gl.ffi gobject.ffi gtk.ffi gtk.gl.ffi
+io.encodings.utf8 kernel locals opengl.gl ;
+IN: gtk-samples.opengl
+
+! This sample is based on
+! http://code.valaide.org/content/simple-opengl-sample-using-gtkglext
+
+:: on-configure ( sender event user-data -- result )
+    sender gtk_widget_get_gl_context :> gl-context
+    sender gtk_widget_get_gl_window :> gl-drawable
+
+    gl-drawable gl-context gdk_gl_drawable_gl_begin dup
+    [
+        0 0 200 200 glViewport
+        gl-drawable gdk_gl_drawable_gl_end
+    ] when ;
+
+:: on-expose ( sender event user-data -- result )
+    sender gtk_widget_get_gl_context :> gl-context
+    sender gtk_widget_get_gl_window :> gl-drawable
+
+    gl-drawable gl-context gdk_gl_drawable_gl_begin dup
+    [
+        GL_COLOR_BUFFER_BIT glClear
+
+        GL_TRIANGLES glBegin
+        1.0 0.0 0.0 glColor3f
+        0 1 glVertex2i
+        0.0 1.0 0.0 glColor3f
+        -1 -1 glVertex2i
+        0.0 0.0 1.0 glColor3f
+        1 -1 glVertex2i
+        glEnd
+        gl-drawable gdk_gl_drawable_is_double_buffered 1 =
+        [ gl-drawable gdk_gl_drawable_swap_buffers ]
+        [ glFlush ] if
+
+        gl-drawable gdk_gl_drawable_gl_end
+    ] when ;
+    
+:: opengl-win ( -- window )  
+    GTK_WINDOW_TOPLEVEL gtk_window_new :> window
+
+    window
+    [ "OpenGL" utf8 string>alien gtk_window_set_title ]
+    [ 200 200 gtk_window_set_default_size ]
+    [ GTK_WIN_POS_CENTER gtk_window_set_position ] tri
+
+    GDK_GL_MODE_RGBA gdk_gl_config_new_by_mode :> gl-config
+    
+    window gl-config f t GDK_GL_RGBA_TYPE
+    gtk_widget_set_gl_capability drop
+
+    window "configure-event" utf8 string>alien
+    [ on-configure ] GtkWidget:configure-event f
+    g_signal_connect drop
+
+    window "expose-event" utf8 string>alien
+    [ on-expose ] GtkWidget:expose-event f
+    g_signal_connect drop
+
+    window ;
+
+:: opengl-main ( -- )
+    f f gtk_init
+    f f gtk_gl_init
+    opengl-win :> window
+
+    window "destroy" utf8 string>alien
+    [ 2drop gtk_main_quit ] GtkObject:destroy
+    f f 0 g_signal_connect_data drop
+
+    window gtk_widget_show_all
+    
+    gtk_main ;
+
+MAIN: opengl-main
+