Merge branch 'gtk' into gtk-image-loader

Conflicts:
	basis/glib/ffi/ffi.factor
	basis/ui/backend/gtk/gtk.factor
db4
Philipp Brüschweiler 2010-07-22 23:51:17 +02:00
commit 926d1540c5
53 changed files with 85 additions and 50 deletions

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.libraries alien.syntax combinators kernel
system
gir glib.ffi gobject.ffi ;
gobject-introspection glib.ffi gobject.ffi ;
IN: atk.ffi
<<

1
basis/atk/summary.txt Normal file
View File

@ -0,0 +1 @@
Atk binding

1
basis/atk/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -2,8 +2,8 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types alien.destructors alien.syntax
alien.libraries cairo.ffi combinators kernel system
gir gdk.pixbuf.ffi gio.ffi glib.ffi gmodule.ffi gobject.ffi
pango.ffi ;
gobject-introspection gdk.pixbuf.ffi gio.ffi glib.ffi gmodule.ffi
gobject.ffi pango.ffi ;
IN: gdk.ffi
<<

View File

@ -2,8 +2,8 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types alien.libraries combinators kernel
system vocabs.parser words
gir gdk.ffi gdk.pixbuf.ffi gio.ffi glib.ffi gmodule.ffi
gobject.ffi pango.ffi ;
gobject-introspection gdk.ffi gdk.pixbuf.ffi gio.ffi glib.ffi
gmodule.ffi gobject.ffi pango.ffi ;
IN: gdk.gl.ffi
<<

1
basis/gdk/gl/summary.txt Normal file
View File

@ -0,0 +1 @@
GdkGLExt binding

1
basis/gdk/gl/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -1,7 +1,7 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.libraries combinators kernel system
gir gio.ffi glib.ffi gmodule.ffi gobject.ffi ;
gobject-introspection gio.ffi glib.ffi gmodule.ffi gobject.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gdk.pixbuf.ffi

View File

@ -0,0 +1 @@
GdkPixbuf binding

1
basis/gdk/pixbuf/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

1
basis/gdk/summary.txt Normal file
View File

@ -0,0 +1 @@
Gdk binding

1
basis/gdk/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -1,7 +1,7 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.libraries combinators kernel system
gir glib.ffi gobject.ffi ;
gobject-introspection glib.ffi gobject.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gio.ffi

1
basis/gio/summary.txt Normal file
View File

@ -0,0 +1 @@
GIO binding

1
basis/gio/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -1,8 +1,9 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien alien.c-types alien.destructors
alien.libraries alien.strings alien.syntax combinators gir
io.encodings.utf8 kernel system vocabs.parser words ;
alien.libraries alien.strings alien.syntax combinators
gobject-introspection io.encodings.utf8 kernel system
vocabs.parser words ;
IN: glib.ffi
<<

1
basis/glib/summary.txt Normal file
View File

@ -0,0 +1 @@
GLib binding

1
basis/glib/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -1,7 +1,7 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.libraries combinators kernel system
gir glib.ffi ;
gobject-introspection glib.ffi ;
IN: gmodule.ffi
<<

View File

@ -0,0 +1 @@
GModule binding

1
basis/gmodule/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -1,7 +1,7 @@
! Copyright (C) 2010 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: assocs kernel namespaces ;
IN: gir.common
IN: gobject-introspection.common
CONSTANT: ffi-vocab "ffi"

View File

@ -1,11 +1,12 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien alien.c-types alien.parser arrays
classes.parser classes.struct combinators combinators.short-circuit
definitions effects fry gir.common gir.types kernel math.parser
namespaces parser quotations sequences sequences.generalizations words
words.constant ;
IN: gir.ffi
classes.parser classes.struct combinators
combinators.short-circuit definitions effects fry
gobject-introspection.common gobject-introspection.types kernel
math.parser namespaces parser quotations sequences
sequences.generalizations words words.constant ;
IN: gobject-introspection.ffi
: string>c-type ( str -- c-type )
parse-c-type ;

View File

@ -1,8 +1,9 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors assocs combinators gir.common gir.ffi gir.loader
USING: accessors assocs combinators gobject-introspection.common
gobject-introspection.ffi gobject-introspection.loader
kernel lexer locals math namespaces sequences vocabs.parser xml ;
IN: gir
IN: gobject-introspection
: with-child-vocab ( name quot -- )
swap current-vocab name>>

View File

@ -1,10 +1,11 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors ascii combinators fry gir.common gir.repository
gir.types kernel math.parser sequences splitting xml.data
xml.traversal ;
USING: accessors ascii combinators fry
gobject-introspection.common gobject-introspection.repository
gobject-introspection.types kernel math.parser sequences
splitting xml.data xml.traversal ;
FROM: namespaces => set get ;
IN: gir.loader
IN: gobject-introspection.loader
SYMBOL: namespace-prefix
SYMBOL: namespace-PREFIX
@ -221,7 +222,6 @@ SYMBOL: namespace-PREFIX
[ field new ] dip {
[ "name" attr >>name ]
[ "writable" attr "1" = >>writable? ]
! Для некоторых field есть callback в качестве типа, решить, как лучше сделать
[
first-child-tag dup name>> main>> "callback" =
[ drop "gpointer" ] [ "type" attr ] if

View File

@ -1,7 +1,7 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: ;
IN: gir.repository
IN: gobject-introspection.repository
TUPLE: node name ;

View File

@ -0,0 +1 @@
GObjectIntrospection support

View File

@ -1,8 +1,10 @@
! Copyright (C) 2009 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien alien.c-types assocs combinators.short-circuit
gir.common gir.repository kernel namespaces specialized-arrays ;
IN: gir.types
USING: accessors alien alien.c-types assocs
combinators.short-circuit gobject-introspection.common
gobject-introspection.repository kernel namespaces
specialized-arrays ;
IN: gobject-introspection.types
TUPLE: gwrapper { underlying alien } ;
TUPLE: grecord < gwrapper ;

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.syntax alien.destructors alien.libraries
combinators kernel literals math system
gir glib.ffi ;
gobject-introspection glib.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gobject.ffi

View File

@ -0,0 +1 @@
GObject binding

1
basis/gobject/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -2,12 +2,12 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.syntax alien.libraries combinators kernel
system
gir glib.ffi gmodule.ffi gobject.ffi ;
gobject-introspection glib.ffi gmodule.ffi gobject.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gst.ffi
IN: gstreamer.ffi
<<
"gst" {
"gstreamer" {
{ [ os winnt? ] [ drop ] }
{ [ os macosx? ] [ drop ] }
{ [ os unix? ] [ "libgstreamer-0.10.so" cdecl add-library ] }
@ -18,10 +18,10 @@ TYPEDEF: gpointer GstClockID
TYPEDEF: guint64 GstClockTime
TYPEDEF: gint64 GstClockTimeDiff
! Временное исправление отсутвующих типов libxml2
! types from libxml2
TYPEDEF: void* xmlNodePtr
TYPEDEF: void* xmlDocPtr
TYPEDEF: void* xmlNsPtr
GIR: vocab:gst/Gst-0.10.gir
GIR: vocab:gstreamer/Gst-0.10.gir

View File

@ -1,5 +1,5 @@
! Copyright (C) 2010 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: gst.ffi ;
IN: gst
USING: gstreamer.ffi ;
IN: gstreamer

View File

@ -0,0 +1 @@
GStreamer binding

1
basis/gstreamer/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -2,8 +2,8 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.syntax alien.destructors alien.libraries
cairo.ffi combinators kernel system
gir atk.ffi gdk.ffi gdk.pixbuf.ffi gio.ffi glib.ffi gmodule.ffi
gobject.ffi pango.ffi ;
gobject-introspection atk.ffi gdk.ffi gdk.pixbuf.ffi gio.ffi
glib.ffi gmodule.ffi gobject.ffi pango.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gtk.ffi

View File

@ -1,8 +1,8 @@
! Copyright (C) 2010 Anton Gorenko.
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.libraries combinators kernel system
gir gdk.ffi gdk.pixbuf.ffi gdk.gl.ffi gio.ffi glib.ffi
gmodule.ffi gobject.ffi gtk.ffi ;
gobject-introspection gdk.ffi gdk.pixbuf.ffi gdk.gl.ffi gio.ffi
glib.ffi gmodule.ffi gobject.ffi gtk.ffi ;
EXCLUDE: alien.c-types => pointer ;
IN: gtk.gl.ffi

1
basis/gtk/gl/summary.txt Normal file
View File

@ -0,0 +1 @@
GtkGLExt binding

1
basis/gtk/gl/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

1
basis/gtk/summary.txt Normal file
View File

@ -0,0 +1 @@
Gtk binding

1
basis/gtk/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types alien.libraries alien.syntax cairo.ffi
combinators kernel system
gir pango.ffi ;
gobject-introspection pango.ffi ;
IN: pango.cairo.ffi
<<

View File

@ -0,0 +1 @@
PangoCairo binding

1
basis/pango/cairo/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types alien.destructors alien.libraries
alien.syntax combinators kernel system
gir glib.ffi ;
gobject-introspection glib.ffi ;
IN: pango.ffi
<<
@ -13,7 +13,7 @@ IN: pango.ffi
} cond
>>
TYPEDEF: void PangoLayoutRun ! не совсем верно
TYPEDEF: void PangoLayoutRun
TYPEDEF: guint32 PangoGlyph
IMPLEMENT-STRUCTS: PangoRectangle ;

1
basis/pango/summary.txt Normal file
View File

@ -0,0 +1 @@
Pango binding

1
basis/pango/tags.txt Executable file
View File

@ -0,0 +1 @@
bindings

View File

@ -8,12 +8,9 @@ io.backend.unix.multiplexers io.encodings.utf8 io.thread kernel
libc literals locals math math.bitwise math.order math.vectors
namespaces sequences strings system threads ui ui.backend
ui.clipboards ui.commands ui.event-loop ui.gadgets
ui.gadgets.menus ui.gadgets.private ui.gadgets.worlds
ui.gestures ui.pixel-formats ui.pixel-formats.private
ui.private ;
RENAME: windows ui.private => ui:windows
EXCLUDE: ui.gadgets.editors => change-caret ;
RENAME: change-caret ui.gadgets.editors => editors:change-caret
ui.gadgets.editors ui.gadgets.menus ui.gadgets.private
ui.gadgets.worlds ui.gestures ui.pixel-formats
ui.pixel-formats.private ui.private ;
IN: ui.backend.gtk
SINGLETON: gtk-ui-backend
@ -231,7 +228,12 @@ CONSTANT: poll-fd-events
mx get fd>> >>fd
poll-fd-events >>events ;
: init-io-event-source ( -- )
HOOK: init-io-event-source io-backend ( -- )
M: c-io-backend init-io-event-source
;
M: object init-io-event-source
GSourceFuncs malloc-struct &free
[ io-source-prepare ] GSourceFuncsPrepareFunc >>prepare
[ io-source-check ] GSourceFuncsCheckFunc >>check

View File

@ -0,0 +1 @@
Gtk-based UI backend

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: alien.c-types alien.strings fry byte-arrays classes.struct
io.encodings.utf8 kernel locals math prettyprint
gst.ffi glib.ffi gobject.ffi gtk.ffi ;
gstreamer.ffi glib.ffi gobject.ffi gtk.ffi ;
IN: gir.samples.lowlevel.gstreamer
! CONSTANT: uri "http://www.xiph.org/vorbis/listen/compilation-ogg-q4.ogg"