Initial commit.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Antialias.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,56 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Antialias
+ instanceVariableNames:''
+ classVariableNames:'ANTIALIAS_DEFAULT ANTIALIAS_NONE ANTIALIAS_GRAY
+ ANTIALIAS_SUBPIXEL'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Antialias class methodsFor:'initialization'!
+
+initialize
+
+ ANTIALIAS_DEFAULT := 0.
+ ANTIALIAS_NONE := 1.
+ ANTIALIAS_GRAY := 2.
+ ANTIALIAS_SUBPIXEL := 3.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Antialias class methodsFor:'constants'!
+
+ANTIALIAS_DEFAULT
+
+ ^ANTIALIAS_DEFAULT
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+ANTIALIAS_GRAY
+
+ ^ANTIALIAS_GRAY
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+ANTIALIAS_NONE
+
+ ^ANTIALIAS_NONE
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+ANTIALIAS_SUBPIXEL
+
+ ^ANTIALIAS_SUBPIXEL
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Antialias initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Content.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,47 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Content
+ instanceVariableNames:''
+ classVariableNames:'CONTENT_COLOR CONTENT_ALPHA CONTENT_COLOR_ALPHA'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Content class methodsFor:'initialization'!
+
+initialize
+
+ CONTENT_COLOR := 4096.
+ CONTENT_ALPHA := 8192.
+ CONTENT_COLOR_ALPHA := 12288.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Content class methodsFor:'constants'!
+
+CONTENT_ALPHA
+
+ ^CONTENT_ALPHA
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+CONTENT_COLOR
+
+ ^CONTENT_COLOR
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+CONTENT_COLOR_ALPHA
+
+ ^CONTENT_COLOR_ALPHA
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Content initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Extend.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,55 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Extend
+ instanceVariableNames:''
+ classVariableNames:'EXTEND_NONE EXTEND_REPEAT EXTEND_REFLECT EXTEND_PAD'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Extend class methodsFor:'initialization'!
+
+initialize
+
+ EXTEND_NONE := 0.
+ EXTEND_REPEAT := 1.
+ EXTEND_REFLECT := 2.
+ EXTEND_PAD := 3.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Extend class methodsFor:'constants'!
+
+EXTEND_NONE
+
+ ^EXTEND_NONE
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+EXTEND_PAD
+
+ ^EXTEND_PAD
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+EXTEND_REFLECT
+
+ ^EXTEND_REFLECT
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+EXTEND_REPEAT
+
+ ^EXTEND_REPEAT
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Extend initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FillRule.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,39 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#FillRule
+ instanceVariableNames:''
+ classVariableNames:'FILL_RULE_WINDING FILL_RULE_EVEN_ODD'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!FillRule class methodsFor:'initialization'!
+
+initialize
+
+ FILL_RULE_WINDING := 0.
+ FILL_RULE_EVEN_ODD := 1.
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FillRule class methodsFor:'constants'!
+
+FILL_RULE_EVEN_ODD
+
+ ^FILL_RULE_EVEN_ODD
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILL_RULE_WINDING
+
+ ^FILL_RULE_WINDING
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+FillRule initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Filter.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,72 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Filter
+ instanceVariableNames:''
+ classVariableNames:'FILTER_FAST FILTER_GOOD FILTER_BEST FILTER_NEAREST
+ FILTER_BILINEAR FILTER_GAUSSIAN'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Filter class methodsFor:'initialization'!
+
+initialize
+
+ FILTER_FAST := 0.
+ FILTER_GOOD := 1.
+ FILTER_BEST := 2.
+ FILTER_NEAREST := 3.
+ FILTER_BILINEAR := 4.
+ FILTER_GAUSSIAN := 5.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Filter class methodsFor:'constants'!
+
+FILTER_BEST
+
+ ^FILTER_BEST
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILTER_BILINEAR
+
+ ^FILTER_BILINEAR
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILTER_FAST
+
+ ^FILTER_FAST
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILTER_GAUSSIAN
+
+ ^FILTER_GAUSSIAN
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILTER_GOOD
+
+ ^FILTER_GOOD
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FILTER_NEAREST
+
+ ^FILTER_NEAREST
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Filter initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontExtents.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,96 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#FontExtents
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!FontExtents class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontExtents methodsFor:'accessing - primitives'!
+
+primAscent
+
+ self doubleAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primAscent: value
+
+ self doubleAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDescent
+
+ self doubleAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDescent: value
+
+ self doubleAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHeight
+
+ self doubleAt:1 + 16
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHeight: value
+
+ self doubleAt:1 + 16 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMaxXAdvance
+
+ self doubleAt:1 + 24
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMaxXAdvance: value
+
+ self doubleAt:1 + 24 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMaxYAdvance
+
+ self doubleAt:1 + 32
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMaxYAdvance: value
+
+ self doubleAt:1 + 32 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontFace.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,82 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#FontFace
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!FontFace class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontFace class methodsFor:'primitives'!
+
+primDestroy: font_face
+
+ <cdecl: void "cairo_font_face_destroy" ( Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetReferenceCount: font_face
+
+ <cdecl: uint32 "cairo_font_face_get_reference_count" ( Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetType: font_face
+
+ <cdecl: int32 "cairo_font_face_get_type" ( Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetUserData: font_face key: key
+
+ <cdecl: pointer "cairo_font_face_get_user_data" ( Cairo::FontFace Cairo::UserDataKey ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primReference: font_face
+
+ <cdecl: Cairo::FontFace "cairo_font_face_reference" ( Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetUserData: font_face key: key userData: user_data destroy: destroy
+
+ <cdecl: int32 "cairo_font_face_set_user_data" ( Cairo::FontFace Cairo::UserDataKey pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: font_face
+
+ <cdecl: int32 "cairo_font_face_status" ( Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontOptions.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,146 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#FontOptions
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!FontOptions class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontOptions class methodsFor:'primitives'!
+
+primCopy: original
+
+ <cdecl: Cairo::FontOptions "cairo_font_options_copy" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDestroy: options
+
+ <cdecl: void "cairo_font_options_destroy" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primEqual: options other: other
+
+ <cdecl: int32 "cairo_font_options_equal" ( Cairo::FontOptions Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFontOptionsCreate
+
+ <cdecl: Cairo::FontOptions "cairo_font_options_create" ( ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetAntialias: options
+
+ <cdecl: int32 "cairo_font_options_get_antialias" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetHintMetrics: options
+
+ <cdecl: int32 "cairo_font_options_get_hint_metrics" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetHintStyle: options
+
+ <cdecl: int32 "cairo_font_options_get_hint_style" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetSubpixelOrder: options
+
+ <cdecl: int32 "cairo_font_options_get_subpixel_order" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHash: options
+
+ <cdecl: int32 "cairo_font_options_hash" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMerge: options other: other
+
+ <cdecl: void "cairo_font_options_merge" ( Cairo::FontOptions Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetAntialias: options antialias: antialias
+
+ <cdecl: void "cairo_font_options_set_antialias" ( Cairo::FontOptions int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetHintMetrics: options hintMetrics: hint_metrics
+
+ <cdecl: void "cairo_font_options_set_hint_metrics" ( Cairo::FontOptions int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetHintStyle: options hintStyle: hint_style
+
+ <cdecl: void "cairo_font_options_set_hint_style" ( Cairo::FontOptions int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetSubpixelOrder: options subpixelOrder: subpixel_order
+
+ <cdecl: void "cairo_font_options_set_subpixel_order" ( Cairo::FontOptions int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: options
+
+ <cdecl: int32 "cairo_font_options_status" ( Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontSlant.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,47 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#FontSlant
+ instanceVariableNames:''
+ classVariableNames:'FONT_SLANT_NORMAL FONT_SLANT_ITALIC FONT_SLANT_OBLIQUE'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!FontSlant class methodsFor:'initialization'!
+
+initialize
+
+ FONT_SLANT_NORMAL := 0.
+ FONT_SLANT_ITALIC := 1.
+ FONT_SLANT_OBLIQUE := 2.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontSlant class methodsFor:'constants'!
+
+FONT_SLANT_ITALIC
+
+ ^FONT_SLANT_ITALIC
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_SLANT_NORMAL
+
+ ^FONT_SLANT_NORMAL
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_SLANT_OBLIQUE
+
+ ^FONT_SLANT_OBLIQUE
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+FontSlant initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontType.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,55 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#FontType
+ instanceVariableNames:''
+ classVariableNames:'FONT_TYPE_TOY FONT_TYPE_FT FONT_TYPE_WIN32 FONT_TYPE_QUARTZ'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!FontType class methodsFor:'initialization'!
+
+initialize
+
+ FONT_TYPE_TOY := 0.
+ FONT_TYPE_FT := 1.
+ FONT_TYPE_WIN32 := 2.
+ FONT_TYPE_QUARTZ := 3.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontType class methodsFor:'constants'!
+
+FONT_TYPE_FT
+
+ ^FONT_TYPE_FT
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_TYPE_QUARTZ
+
+ ^FONT_TYPE_QUARTZ
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_TYPE_TOY
+
+ ^FONT_TYPE_TOY
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_TYPE_WIN32
+
+ ^FONT_TYPE_WIN32
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+FontType initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__FontWeight.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,39 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#FontWeight
+ instanceVariableNames:''
+ classVariableNames:'FONT_WEIGHT_NORMAL FONT_WEIGHT_BOLD'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!FontWeight class methodsFor:'initialization'!
+
+initialize
+
+ FONT_WEIGHT_NORMAL := 0.
+ FONT_WEIGHT_BOLD := 1.
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!FontWeight class methodsFor:'constants'!
+
+FONT_WEIGHT_BOLD
+
+ ^FONT_WEIGHT_BOLD
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FONT_WEIGHT_NORMAL
+
+ ^FONT_WEIGHT_NORMAL
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+FontWeight initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Format.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,55 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Format
+ instanceVariableNames:''
+ classVariableNames:'FORMAT_ARGB32 FORMAT_RGB24 FORMAT_A8 FORMAT_A1'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Format class methodsFor:'initialization'!
+
+initialize
+
+ FORMAT_ARGB32 := 0.
+ FORMAT_RGB24 := 1.
+ FORMAT_A8 := 2.
+ FORMAT_A1 := 3.
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Format class methodsFor:'constants'!
+
+FORMAT_A1
+
+ ^FORMAT_A1
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FORMAT_A8
+
+ ^FORMAT_A8
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FORMAT_ARGB32
+
+ ^FORMAT_ARGB32
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+FORMAT_RGB24
+
+ ^FORMAT_RGB24
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Format initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Glyph.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,61 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Glyph
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Glyph class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Glyph methodsFor:'accessing - primitives'!
+
+primIndex
+
+ self longAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primX
+
+ self doubleAt:1 + 4
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primX: value
+
+ self doubleAt:1 + 4 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY
+
+ self doubleAt:1 + 12
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY: value
+
+ self doubleAt:1 + 12 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__GraphicsContext.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,958 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#GraphicsContext
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!GraphicsContext class methodsFor:'instance creation'!
+
+on: surface
+
+ self
+ assert: (surface isKindOf: Surface)
+ message: 'surface is not valid Cairo surface'.
+
+ ^(self primCreate: surface)
+ registerForFinalization;
+ yourself
+
+ "Created: / 10-07-2008 / 09:37:57 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext class methodsFor:'primitives'!
+
+primAppendPath: cr path: path
+
+ <cdecl: void "cairo_append_path" ( Cairo::GraphicsContext Cairo::Path ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primArc: cr xc: xc yc: yc radius: radius angle1: angle1 angle2: angle2
+
+ <cdecl: void "cairo_arc" ( Cairo::GraphicsContext double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primArcNegative: cr xc: xc yc: yc radius: radius angle1: angle1 angle2: angle2
+
+ <cdecl: void "cairo_arc_negative" ( Cairo::GraphicsContext double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primClip: cr
+
+ <cdecl: void "cairo_clip" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primClipExtents: cr x1: x1 y1: y1 x2: x2 y2: y2
+
+ <cdecl: void "cairo_clip_extents" ( Cairo::GraphicsContext pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primClipPreserve: cr
+
+ <cdecl: void "cairo_clip_preserve" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primClosePath: cr
+
+ <cdecl: void "cairo_close_path" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCopyClipRectangleList: cr
+
+ <cdecl: Cairo::RectangleList "cairo_copy_clip_rectangle_list" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCopyPage: cr
+
+ <cdecl: void "cairo_copy_page" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCopyPath: cr
+
+ <cdecl: Cairo::Path "cairo_copy_path" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCopyPathFlat: cr
+
+ <cdecl: Cairo::Path "cairo_copy_path_flat" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCreate: target
+
+ <cdecl: Cairo::GraphicsContext "cairo_create" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCurveTo: cr x1: x1 y1: y1 x2: x2 y2: y2 x3: x3 y3: y3
+
+ <cdecl: void "cairo_curve_to" ( Cairo::GraphicsContext double double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDestroy: cr
+
+ <cdecl: void "cairo_destroy" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDeviceToUser: cr x: x y: y
+
+ <cdecl: void "cairo_device_to_user" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDeviceToUserDistance: cr dx: dx dy: dy
+
+ <cdecl: void "cairo_device_to_user_distance" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFill: cr
+
+ <cdecl: void "cairo_fill" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFillExtents: cr x1: x1 y1: y1 x2: x2 y2: y2
+
+ <cdecl: void "cairo_fill_extents" ( Cairo::GraphicsContext pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFillPreserve: cr
+
+ <cdecl: void "cairo_fill_preserve" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFontExtents: cr extents: extents
+
+ <cdecl: void "cairo_font_extents" ( Cairo::GraphicsContext Cairo::FontExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetAntialias: cr
+
+ <cdecl: int32 "cairo_get_antialias" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetCurrentPoint: cr x: x y: y
+
+ <cdecl: void "cairo_get_current_point" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetDash: cr dashes: dashes offset: offset
+
+ <cdecl: void "cairo_get_dash" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetDashCount: cr
+
+ <cdecl: int32 "cairo_get_dash_count" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFillRule: cr
+
+ <cdecl: int32 "cairo_get_fill_rule" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontFace: cr
+
+ <cdecl: Cairo::FontFace "cairo_get_font_face" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontMatrix: cr matrix: matrix
+
+ <cdecl: void "cairo_get_font_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontOptions: cr options: options
+
+ <cdecl: void "cairo_get_font_options" ( Cairo::GraphicsContext Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetGroupTarget: cr
+
+ <cdecl: Cairo::Surface "cairo_get_group_target" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetLineCap: cr
+
+ <cdecl: int32 "cairo_get_line_cap" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetLineJoin: cr
+
+ <cdecl: int32 "cairo_get_line_join" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetLineWidth: cr
+
+ <cdecl: double "cairo_get_line_width" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetMatrix: cr matrix: matrix
+
+ <cdecl: void "cairo_get_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetMiterLimit: cr
+
+ <cdecl: double "cairo_get_miter_limit" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetOperator: cr
+
+ <cdecl: int32 "cairo_get_operator" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetReferenceCount: cr
+
+ <cdecl: uint32 "cairo_get_reference_count" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetScaledFont: cr
+
+ <cdecl: Cairo::ScaledFont "cairo_get_scaled_font" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetSource: cr
+
+ <cdecl: Cairo::Pattern "cairo_get_source" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetTarget: cr
+
+ <cdecl: Cairo::Surface "cairo_get_target" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetTolerance: cr
+
+ <cdecl: double "cairo_get_tolerance" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetUserData: cr key: key
+
+ <cdecl: pointer "cairo_get_user_data" ( Cairo::GraphicsContext Cairo::UserDataKey ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGlyphExtents: cr glyphs: glyphs numGlyphs: num_glyphs extents: extents
+
+ <cdecl: void "cairo_glyph_extents" ( Cairo::GraphicsContext Cairo::Glyph int32 Cairo::TextExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGlyphPath: cr glyphs: glyphs numGlyphs: num_glyphs
+
+ <cdecl: void "cairo_glyph_path" ( Cairo::GraphicsContext Cairo::Glyph int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHasCurrentPoint: cr
+
+ <cdecl: int32 "cairo_has_current_point" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primIdentityMatrix: cr
+
+ <cdecl: void "cairo_identity_matrix" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInFill: cr x: x y: y
+
+ <cdecl: int32 "cairo_in_fill" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInStroke: cr x: x y: y
+
+ <cdecl: int32 "cairo_in_stroke" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primLineTo: cr x: x y: y
+
+ <cdecl: void "cairo_line_to" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMask: cr pattern: pattern
+
+ <cdecl: void "cairo_mask" ( Cairo::GraphicsContext Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMaskSurface: cr surface: surface surfaceX: surface_x surfaceY: surface_y
+
+ <cdecl: void "cairo_mask_surface" ( Cairo::GraphicsContext Cairo::Surface double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMoveTo: cr x: x y: y
+
+ <cdecl: void "cairo_move_to" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primNewPath: cr
+
+ <cdecl: void "cairo_new_path" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primNewSubPath: cr
+
+ <cdecl: void "cairo_new_sub_path" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPaint: cr
+
+ <cdecl: void "cairo_paint" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPaintWithAlpha: cr alpha: alpha
+
+ <cdecl: void "cairo_paint_with_alpha" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPathExtents: cr x1: x1 y1: y1 x2: x2 y2: y2
+
+ <cdecl: void "cairo_path_extents" ( Cairo::GraphicsContext pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPopGroup: cr
+
+ <cdecl: Cairo::Pattern "cairo_pop_group" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPopGroupToSource: cr
+
+ <cdecl: void "cairo_pop_group_to_source" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPushGroup: cr
+
+ <cdecl: void "cairo_push_group" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPushGroupWithContent: cr content: content
+
+ <cdecl: void "cairo_push_group_with_content" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRectangle: cr x: x y: y width: width height: height
+
+ <cdecl: void "cairo_rectangle" ( Cairo::GraphicsContext double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primReference: cr
+
+ <cdecl: Cairo::GraphicsContext "cairo_reference" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRelCurveTo: cr dx1: dx1 dy1: dy1 dx2: dx2 dy2: dy2 dx3: dx3 dy3: dy3
+
+ <cdecl: void "cairo_rel_curve_to" ( Cairo::GraphicsContext double double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRelLineTo: cr dx: dx dy: dy
+
+ <cdecl: void "cairo_rel_line_to" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRelMoveTo: cr dx: dx dy: dy
+
+ <cdecl: void "cairo_rel_move_to" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primResetClip: cr
+
+ <cdecl: void "cairo_reset_clip" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRestore: cr
+
+ <cdecl: void "cairo_restore" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRotate: cr angle: angle
+
+ <cdecl: void "cairo_rotate" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSave: cr
+
+ <cdecl: void "cairo_save" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primScale: cr sx: sx sy: sy
+
+ <cdecl: void "cairo_scale" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSelectFontFace: cr family: family slant: slant weight: weight
+
+ <cdecl: void "cairo_select_font_face" ( Cairo::GraphicsContext charPointer int32 int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetAntialias: cr antialias: antialias
+
+ <cdecl: void "cairo_set_antialias" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetDash: cr dashes: dashes numDashes: num_dashes offset: offset
+
+ <cdecl: void "cairo_set_dash" ( Cairo::GraphicsContext pointer int32 double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFillRule: cr fillRule: fill_rule
+
+ <cdecl: void "cairo_set_fill_rule" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFontFace: cr fontFace: font_face
+
+ <cdecl: void "cairo_set_font_face" ( Cairo::GraphicsContext Cairo::FontFace ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFontMatrix: cr matrix: matrix
+
+ <cdecl: void "cairo_set_font_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFontOptions: cr options: options
+
+ <cdecl: void "cairo_set_font_options" ( Cairo::GraphicsContext Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFontSize: cr size: size
+
+ <cdecl: void "cairo_set_font_size" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetLineCap: cr lineCap: line_cap
+
+ <cdecl: void "cairo_set_line_cap" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetLineJoin: cr lineJoin: line_join
+
+ <cdecl: void "cairo_set_line_join" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetLineWidth: cr width: width
+
+ <cdecl: void "cairo_set_line_width" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetMatrix: cr matrix: matrix
+
+ <cdecl: void "cairo_set_matrix" ( Cairo::GraphicsContext Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetMiterLimit: cr limit: limit
+
+ <cdecl: void "cairo_set_miter_limit" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetOperator: cr op: op
+
+ <cdecl: void "cairo_set_operator" ( Cairo::GraphicsContext int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetScaledFont: cr scaledFont: scaled_font
+
+ <cdecl: void "cairo_set_scaled_font" ( Cairo::GraphicsContext Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetSource: cr source: source
+
+ <cdecl: void "cairo_set_source" ( Cairo::GraphicsContext Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetSourceRgb: cr red: red green: green blue: blue
+
+ <cdecl: void "cairo_set_source_rgb" ( Cairo::GraphicsContext double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetSourceRgba: cr red: red green: green blue: blue alpha: alpha
+
+ <cdecl: void "cairo_set_source_rgba" ( Cairo::GraphicsContext double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetSourceSurface: cr surface: surface x: x y: y
+
+ <cdecl: void "cairo_set_source_surface" ( Cairo::GraphicsContext Cairo::Surface double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetTolerance: cr tolerance: tolerance
+
+ <cdecl: void "cairo_set_tolerance" ( Cairo::GraphicsContext double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetUserData: cr key: key userData: user_data destroy: destroy
+
+ <cdecl: int32 "cairo_set_user_data" ( Cairo::GraphicsContext Cairo::UserDataKey pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primShowGlyphs: cr glyphs: glyphs numGlyphs: num_glyphs
+
+ <cdecl: void "cairo_show_glyphs" ( Cairo::GraphicsContext Cairo::Glyph int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primShowPage: cr
+
+ <cdecl: void "cairo_show_page" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primShowText: cr utf8: utf8
+
+ <cdecl: void "cairo_show_text" ( Cairo::GraphicsContext charPointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: cr
+
+ <cdecl: int32 "cairo_status" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStroke: cr
+
+ <cdecl: void "cairo_stroke" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStrokeExtents: cr x1: x1 y1: y1 x2: x2 y2: y2
+
+ <cdecl: void "cairo_stroke_extents" ( Cairo::GraphicsContext pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStrokePreserve: cr
+
+ <cdecl: void "cairo_stroke_preserve" ( Cairo::GraphicsContext ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTextExtents: cr utf8: utf8 extents: extents
+
+ <cdecl: void "cairo_text_extents" ( Cairo::GraphicsContext charPointer Cairo::TextExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTextPath: cr utf8: utf8
+
+ <cdecl: void "cairo_text_path" ( Cairo::GraphicsContext charPointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTransform: cr matrix: matrix
+
+ <cdecl: void "cairo_transform" ( Cairo::GraphicsContext Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTranslate: cr tx: tx ty: ty
+
+ <cdecl: void "cairo_translate" ( Cairo::GraphicsContext double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primUserToDevice: cr x: x y: y
+
+ <cdecl: void "cairo_user_to_device" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primUserToDeviceDistance: cr dx: dx dy: dy
+
+ <cdecl: void "cairo_user_to_device_distance" ( Cairo::GraphicsContext pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext methodsFor:'accessing'!
+
+paint: aColor
+
+ ^self
+ paintRed: (aColor red / 100) asDouble
+ green: (aColor green / 100) asDouble
+ blue: (aColor blue / 100) asDouble
+ alpha: aColor alpha
+
+ "Created: / 10-07-2008 / 11:18:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+referenceCount
+
+ ^self class primGetReferenceCount: self
+
+ "Created: / 10-07-2008 / 10:28:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+surface
+
+ ^self class primGetTarget: self
+
+ "Created: / 10-07-2008 / 10:33:59 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext methodsFor:'cairo - paints'!
+
+paintRed: red green: green blue: blue alpha: alpha
+
+ ^self class
+ primSetSourceRgba: self red: red green: green blue: blue alpha: alpha
+
+ "Created: / 10-07-2008 / 11:10:45 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext methodsFor:'cairo - paths'!
+
+rectangleX: x y: y width: width height: height
+
+ ^self class
+ primRectangle: self
+ x: x asDouble
+ y: y asDouble
+ width: width asDouble
+ height: height asDouble
+
+ "Created: / 10-07-2008 / 09:41:50 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext methodsFor:'cairo - stroke & fill'!
+
+fill
+
+ ^self class primFill: self
+
+ "Created: / 10-07-2008 / 09:42:50 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+stroke
+
+ ^self class primStroke: self
+
+ "Created: / 10-07-2008 / 09:42:43 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!GraphicsContext methodsFor:'initialization & release'!
+
+finalize
+
+ Transcript showCR:'Cairo [INFO]: Finalizing GC ' ,self address hexPrintString, ' ref count: ', self referenceCount printString.
+ (self class primGetTarget: self) flush.
+ self class primDestroy: self
+
+ "Created: / 10-07-2008 / 09:43:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+reference
+
+ ^self class primReference: self
+
+ "Created: / 10-07-2008 / 10:27:53 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__HintMetrics.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,47 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#HintMetrics
+ instanceVariableNames:''
+ classVariableNames:'HINT_METRICS_DEFAULT HINT_METRICS_OFF HINT_METRICS_ON'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!HintMetrics class methodsFor:'initialization'!
+
+initialize
+
+ HINT_METRICS_DEFAULT := 0.
+ HINT_METRICS_OFF := 1.
+ HINT_METRICS_ON := 2.
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!HintMetrics class methodsFor:'constants'!
+
+HINT_METRICS_DEFAULT
+
+ ^HINT_METRICS_DEFAULT
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_METRICS_OFF
+
+ ^HINT_METRICS_OFF
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_METRICS_ON
+
+ ^HINT_METRICS_ON
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+HintMetrics initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__HintStyle.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,64 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#HintStyle
+ instanceVariableNames:''
+ classVariableNames:'HINT_STYLE_DEFAULT HINT_STYLE_NONE HINT_STYLE_SLIGHT
+ HINT_STYLE_MEDIUM HINT_STYLE_FULL'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!HintStyle class methodsFor:'initialization'!
+
+initialize
+
+ HINT_STYLE_DEFAULT := 0.
+ HINT_STYLE_NONE := 1.
+ HINT_STYLE_SLIGHT := 2.
+ HINT_STYLE_MEDIUM := 3.
+ HINT_STYLE_FULL := 4.
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!HintStyle class methodsFor:'constants'!
+
+HINT_STYLE_DEFAULT
+
+ ^HINT_STYLE_DEFAULT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_STYLE_FULL
+
+ ^HINT_STYLE_FULL
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_STYLE_MEDIUM
+
+ ^HINT_STYLE_MEDIUM
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_STYLE_NONE
+
+ ^HINT_STYLE_NONE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+HINT_STYLE_SLIGHT
+
+ ^HINT_STYLE_SLIGHT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+HintStyle initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__LineCap.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,47 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#LineCap
+ instanceVariableNames:''
+ classVariableNames:'LINE_CAP_BUTT LINE_CAP_ROUND LINE_CAP_SQUARE'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!LineCap class methodsFor:'initialization'!
+
+initialize
+
+ LINE_CAP_BUTT := 0.
+ LINE_CAP_ROUND := 1.
+ LINE_CAP_SQUARE := 2.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!LineCap class methodsFor:'constants'!
+
+LINE_CAP_BUTT
+
+ ^LINE_CAP_BUTT
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+LINE_CAP_ROUND
+
+ ^LINE_CAP_ROUND
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+LINE_CAP_SQUARE
+
+ ^LINE_CAP_SQUARE
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+LineCap initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__LineJoin.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,47 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#LineJoin
+ instanceVariableNames:''
+ classVariableNames:'LINE_JOIN_MITER LINE_JOIN_ROUND LINE_JOIN_BEVEL'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!LineJoin class methodsFor:'initialization'!
+
+initialize
+
+ LINE_JOIN_MITER := 0.
+ LINE_JOIN_ROUND := 1.
+ LINE_JOIN_BEVEL := 2.
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!LineJoin class methodsFor:'constants'!
+
+LINE_JOIN_BEVEL
+
+ ^LINE_JOIN_BEVEL
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+LINE_JOIN_MITER
+
+ ^LINE_JOIN_MITER
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+LINE_JOIN_ROUND
+
+ ^LINE_JOIN_ROUND
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+LineJoin initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Matrix.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,208 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Matrix
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Matrix class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Matrix class methodsFor:'primitives'!
+
+primInit: matrix xx: xx yx: yx xy: xy yy: yy x0: x0 y0: y0
+
+ <cdecl: void "cairo_matrix_init" ( Cairo::Matrix double double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInitIdentity: matrix
+
+ <cdecl: void "cairo_matrix_init_identity" ( Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInitRotate: matrix radians: radians
+
+ <cdecl: void "cairo_matrix_init_rotate" ( Cairo::Matrix double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInitScale: matrix sx: sx sy: sy
+
+ <cdecl: void "cairo_matrix_init_scale" ( Cairo::Matrix double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInitTranslate: matrix tx: tx ty: ty
+
+ <cdecl: void "cairo_matrix_init_translate" ( Cairo::Matrix double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primInvert: matrix
+
+ <cdecl: int32 "cairo_matrix_invert" ( Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMultiply: result a: a b: b
+
+ <cdecl: void "cairo_matrix_multiply" ( Cairo::Matrix Cairo::Matrix Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRotate: matrix radians: radians
+
+ <cdecl: void "cairo_matrix_rotate" ( Cairo::Matrix double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primScale: matrix sx: sx sy: sy
+
+ <cdecl: void "cairo_matrix_scale" ( Cairo::Matrix double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTransformDistance: matrix dx: dx dy: dy
+
+ <cdecl: void "cairo_matrix_transform_distance" ( Cairo::Matrix pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTransformPoint: matrix x: x y: y
+
+ <cdecl: void "cairo_matrix_transform_point" ( Cairo::Matrix pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTranslate: matrix tx: tx ty: ty
+
+ <cdecl: void "cairo_matrix_translate" ( Cairo::Matrix double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Matrix methodsFor:'accessing - primitives'!
+
+primX0
+
+ self doubleAt:1 + 32
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primX0: value
+
+ self doubleAt:1 + 32 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXx
+
+ self doubleAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXx: value
+
+ self doubleAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXy
+
+ self doubleAt:1 + 16
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXy: value
+
+ self doubleAt:1 + 16 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY0
+
+ self doubleAt:1 + 40
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY0: value
+
+ self doubleAt:1 + 40 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYx
+
+ self doubleAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYx: value
+
+ self doubleAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYy
+
+ self doubleAt:1 + 24
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYy: value
+
+ self doubleAt:1 + 24 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Operator.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,138 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Operator
+ instanceVariableNames:''
+ classVariableNames:'OPERATOR_CLEAR OPERATOR_SOURCE OPERATOR_OVER OPERATOR_IN
+ OPERATOR_OUT OPERATOR_ATOP OPERATOR_DEST OPERATOR_DEST_OVER
+ OPERATOR_DEST_IN OPERATOR_DEST_OUT OPERATOR_DEST_ATOP
+ OPERATOR_XOR OPERATOR_ADD OPERATOR_SATURATE'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Operator class methodsFor:'initialization'!
+
+initialize
+
+ OPERATOR_CLEAR := 0.
+ OPERATOR_SOURCE := 1.
+ OPERATOR_OVER := 2.
+ OPERATOR_IN := 3.
+ OPERATOR_OUT := 4.
+ OPERATOR_ATOP := 5.
+ OPERATOR_DEST := 6.
+ OPERATOR_DEST_OVER := 7.
+ OPERATOR_DEST_IN := 8.
+ OPERATOR_DEST_OUT := 9.
+ OPERATOR_DEST_ATOP := 10.
+ OPERATOR_XOR := 11.
+ OPERATOR_ADD := 12.
+ OPERATOR_SATURATE := 13.
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Operator class methodsFor:'constants'!
+
+OPERATOR_ADD
+
+ ^OPERATOR_ADD
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_ATOP
+
+ ^OPERATOR_ATOP
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_CLEAR
+
+ ^OPERATOR_CLEAR
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_DEST
+
+ ^OPERATOR_DEST
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_DEST_ATOP
+
+ ^OPERATOR_DEST_ATOP
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_DEST_IN
+
+ ^OPERATOR_DEST_IN
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_DEST_OUT
+
+ ^OPERATOR_DEST_OUT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_DEST_OVER
+
+ ^OPERATOR_DEST_OVER
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_IN
+
+ ^OPERATOR_IN
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_OUT
+
+ ^OPERATOR_OUT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_OVER
+
+ ^OPERATOR_OVER
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_SATURATE
+
+ ^OPERATOR_SATURATE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_SOURCE
+
+ ^OPERATOR_SOURCE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+OPERATOR_XOR
+
+ ^OPERATOR_XOR
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Operator initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Path.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,78 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Path
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Path class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Path class methodsFor:'primitives'!
+
+primDestroy: path
+
+ <cdecl: void "cairo_path_destroy" ( Cairo::Path ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Path methodsFor:'accessing - primitives'!
+
+primData
+
+ self doubleWordAt:1 + 4
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primData: value
+
+ self doubleWordAt:1 + 4 put:value
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primNumData
+
+ self doubleWordAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primNumData: value
+
+ self doubleWordAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus
+
+ self doubleWordAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: value
+
+ self doubleWordAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__PathData.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,54 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#PathData
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!PathData class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!PathData methodsFor:'accessing - primitives'!
+
+primHeader
+
+ self at:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHeader: value
+
+ self at:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPoint
+
+ self at:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPoint: value
+
+ self at:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__PathDataType.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,55 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#PathDataType
+ instanceVariableNames:''
+ classVariableNames:'PATH_MOVE_TO PATH_LINE_TO PATH_CURVE_TO PATH_CLOSE_PATH'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!PathDataType class methodsFor:'initialization'!
+
+initialize
+
+ PATH_MOVE_TO := 0.
+ PATH_LINE_TO := 1.
+ PATH_CURVE_TO := 2.
+ PATH_CLOSE_PATH := 3.
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!PathDataType class methodsFor:'constants'!
+
+PATH_CLOSE_PATH
+
+ ^PATH_CLOSE_PATH
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATH_CURVE_TO
+
+ ^PATH_CURVE_TO
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATH_LINE_TO
+
+ ^PATH_LINE_TO
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATH_MOVE_TO
+
+ ^PATH_MOVE_TO
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+PathDataType initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Pattern.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,234 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Pattern
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Pattern class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Pattern class methodsFor:'primitives'!
+
+primAddColorStopRgb: pattern offset: offset red: red green: green blue: blue
+
+ <cdecl: void "cairo_pattern_add_color_stop_rgb" ( Cairo::Pattern double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primAddColorStopRgba: pattern offset: offset red: red green: green blue: blue alpha: alpha
+
+ <cdecl: void "cairo_pattern_add_color_stop_rgba" ( Cairo::Pattern double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDestroy: pattern
+
+ <cdecl: void "cairo_pattern_destroy" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetColorStopCount: pattern count: count
+
+ <cdecl: int32 "cairo_pattern_get_color_stop_count" ( Cairo::Pattern pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetColorStopRgba: pattern index: index offset: offset red: red green: green blue: blue alpha: alpha
+
+ <cdecl: int32 "cairo_pattern_get_color_stop_rgba" ( Cairo::Pattern int32 pointer pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetExtend: pattern
+
+ <cdecl: int32 "cairo_pattern_get_extend" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFilter: pattern
+
+ <cdecl: int32 "cairo_pattern_get_filter" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetLinearPoints: pattern x0: x0 y0: y0 x1: x1 y1: y1
+
+ <cdecl: int32 "cairo_pattern_get_linear_points" ( Cairo::Pattern pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetMatrix: pattern matrix: matrix
+
+ <cdecl: void "cairo_pattern_get_matrix" ( Cairo::Pattern Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetRadialCircles: pattern x0: x0 y0: y0 r0: r0 x1: x1 y1: y1 r1: r1
+
+ <cdecl: int32 "cairo_pattern_get_radial_circles" ( Cairo::Pattern pointer pointer pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetReferenceCount: pattern
+
+ <cdecl: uint32 "cairo_pattern_get_reference_count" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetRgba: pattern red: red green: green blue: blue alpha: alpha
+
+ <cdecl: int32 "cairo_pattern_get_rgba" ( Cairo::Pattern pointer pointer pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetSurface: pattern surface: surface
+
+ <cdecl: int32 "cairo_pattern_get_surface" ( Cairo::Pattern pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetType: pattern
+
+ <cdecl: int32 "cairo_pattern_get_type" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetUserData: pattern key: key
+
+ <cdecl: pointer "cairo_pattern_get_user_data" ( Cairo::Pattern Cairo::UserDataKey ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPatternCreateForSurface: surface
+
+ <cdecl: Cairo::Pattern "cairo_pattern_create_for_surface" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPatternCreateLinear: x0 y0: y0 x1: x1 y1: y1
+
+ <cdecl: Cairo::Pattern "cairo_pattern_create_linear" ( double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPatternCreateRadial: cx0 cy0: cy0 radius0: radius0 cx1: cx1 cy1: cy1 radius1: radius1
+
+ <cdecl: Cairo::Pattern "cairo_pattern_create_radial" ( double double double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPatternCreateRgb: red green: green blue: blue
+
+ <cdecl: Cairo::Pattern "cairo_pattern_create_rgb" ( double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPatternCreateRgba: red green: green blue: blue alpha: alpha
+
+ <cdecl: Cairo::Pattern "cairo_pattern_create_rgba" ( double double double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primReference: pattern
+
+ <cdecl: Cairo::Pattern "cairo_pattern_reference" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetExtend: pattern extend: extend
+
+ <cdecl: void "cairo_pattern_set_extend" ( Cairo::Pattern int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFilter: pattern filter: filter
+
+ <cdecl: void "cairo_pattern_set_filter" ( Cairo::Pattern int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetMatrix: pattern matrix: matrix
+
+ <cdecl: void "cairo_pattern_set_matrix" ( Cairo::Pattern Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetUserData: pattern key: key userData: user_data destroy: destroy
+
+ <cdecl: int32 "cairo_pattern_set_user_data" ( Cairo::Pattern Cairo::UserDataKey pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: pattern
+
+ <cdecl: int32 "cairo_pattern_status" ( Cairo::Pattern ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__PatternType.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,56 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#PatternType
+ instanceVariableNames:''
+ classVariableNames:'PATTERN_TYPE_SOLID PATTERN_TYPE_SURFACE PATTERN_TYPE_LINEAR
+ PATTERN_TYPE_RADIAL'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!PatternType class methodsFor:'initialization'!
+
+initialize
+
+ PATTERN_TYPE_SOLID := 0.
+ PATTERN_TYPE_SURFACE := 1.
+ PATTERN_TYPE_LINEAR := 2.
+ PATTERN_TYPE_RADIAL := 3.
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!PatternType class methodsFor:'constants'!
+
+PATTERN_TYPE_LINEAR
+
+ ^PATTERN_TYPE_LINEAR
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATTERN_TYPE_RADIAL
+
+ ^PATTERN_TYPE_RADIAL
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATTERN_TYPE_SOLID
+
+ ^PATTERN_TYPE_SOLID
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+PATTERN_TYPE_SURFACE
+
+ ^PATTERN_TYPE_SURFACE
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+PatternType initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Rectangle.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,82 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Rectangle
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Rectangle class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Rectangle methodsFor:'accessing - primitives'!
+
+primHeight
+
+ self doubleAt:1 + 24
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHeight: value
+
+ self doubleAt:1 + 24 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWidth
+
+ self doubleAt:1 + 16
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWidth: value
+
+ self doubleAt:1 + 16 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primX
+
+ self doubleAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primX: value
+
+ self doubleAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY
+
+ self doubleAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primY: value
+
+ self doubleAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__RectangleList.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,78 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#RectangleList
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!RectangleList class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!RectangleList class methodsFor:'primitives'!
+
+primDestroy: rectangle_list
+
+ <cdecl: void "cairo_rectangle_list_destroy" ( Cairo::RectangleList ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!RectangleList methodsFor:'accessing - primitives'!
+
+primNumRectangles
+
+ self doubleWordAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primNumRectangles: value
+
+ self doubleWordAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRectangles
+
+ self doubleWordAt:1 + 4
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primRectangles: value
+
+ self doubleWordAt:1 + 4 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus
+
+ self doubleWordAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: value
+
+ self doubleWordAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__ScaledFont.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,146 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#ScaledFont
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!ScaledFont class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!ScaledFont class methodsFor:'primitives'!
+
+primDestroy: scaled_font
+
+ <cdecl: void "cairo_scaled_font_destroy" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primExtents: scaled_font extents: extents
+
+ <cdecl: void "cairo_scaled_font_extents" ( Cairo::ScaledFont Cairo::FontExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetCtm: scaled_font ctm: ctm
+
+ <cdecl: void "cairo_scaled_font_get_ctm" ( Cairo::ScaledFont Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontFace: scaled_font
+
+ <cdecl: Cairo::FontFace "cairo_scaled_font_get_font_face" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontMatrix: scaled_font fontMatrix: font_matrix
+
+ <cdecl: void "cairo_scaled_font_get_font_matrix" ( Cairo::ScaledFont Cairo::Matrix ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontOptions: scaled_font options: options
+
+ <cdecl: void "cairo_scaled_font_get_font_options" ( Cairo::ScaledFont Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetReferenceCount: scaled_font
+
+ <cdecl: uint32 "cairo_scaled_font_get_reference_count" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetType: scaled_font
+
+ <cdecl: int32 "cairo_scaled_font_get_type" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetUserData: scaled_font key: key
+
+ <cdecl: pointer "cairo_scaled_font_get_user_data" ( Cairo::ScaledFont Cairo::UserDataKey ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGlyphExtents: scaled_font glyphs: glyphs numGlyphs: num_glyphs extents: extents
+
+ <cdecl: void "cairo_scaled_font_glyph_extents" ( Cairo::ScaledFont Cairo::Glyph int32 Cairo::TextExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primReference: scaled_font
+
+ <cdecl: Cairo::ScaledFont "cairo_scaled_font_reference" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primScaledFontCreate: font_face fontMatrix: font_matrix ctm: ctm options: options
+
+ <cdecl: Cairo::ScaledFont "cairo_scaled_font_create" ( Cairo::FontFace Cairo::Matrix Cairo::Matrix Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetUserData: scaled_font key: key userData: user_data destroy: destroy
+
+ <cdecl: int32 "cairo_scaled_font_set_user_data" ( Cairo::ScaledFont Cairo::UserDataKey pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: scaled_font
+
+ <cdecl: int32 "cairo_scaled_font_status" ( Cairo::ScaledFont ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primTextExtents: scaled_font utf8: utf8 extents: extents
+
+ <cdecl: void "cairo_scaled_font_text_extents" ( Cairo::ScaledFont charPointer Cairo::TextExtents ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Status.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,233 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#Status
+ instanceVariableNames:''
+ classVariableNames:'STATUS_SUCCESS STATUS_NO_MEMORY STATUS_INVALID_RESTORE
+ STATUS_INVALID_POP_GROUP STATUS_NO_CURRENT_POINT
+ STATUS_INVALID_MATRIX STATUS_INVALID_STATUS STATUS_NULL_POINTER
+ STATUS_INVALID_STRING STATUS_INVALID_PATH_DATA STATUS_READ_ERROR
+ STATUS_WRITE_ERROR STATUS_SURFACE_FINISHED
+ STATUS_SURFACE_TYPE_MISMATCH STATUS_PATTERN_TYPE_MISMATCH
+ STATUS_INVALID_CONTENT STATUS_INVALID_FORMAT
+ STATUS_INVALID_VISUAL STATUS_FILE_NOT_FOUND STATUS_INVALID_DASH
+ STATUS_INVALID_DSC_COMMENT STATUS_INVALID_INDEX
+ STATUS_CLIP_NOT_REPRESENTABLE STATUS_TEMP_FILE_ERROR
+ STATUS_INVALID_STRIDE'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!Status class methodsFor:'initialization'!
+
+initialize
+
+ STATUS_SUCCESS := 0.
+ STATUS_NO_MEMORY := 1.
+ STATUS_INVALID_RESTORE := 2.
+ STATUS_INVALID_POP_GROUP := 3.
+ STATUS_NO_CURRENT_POINT := 4.
+ STATUS_INVALID_MATRIX := 5.
+ STATUS_INVALID_STATUS := 6.
+ STATUS_NULL_POINTER := 7.
+ STATUS_INVALID_STRING := 8.
+ STATUS_INVALID_PATH_DATA := 9.
+ STATUS_READ_ERROR := 10.
+ STATUS_WRITE_ERROR := 11.
+ STATUS_SURFACE_FINISHED := 12.
+ STATUS_SURFACE_TYPE_MISMATCH := 13.
+ STATUS_PATTERN_TYPE_MISMATCH := 14.
+ STATUS_INVALID_CONTENT := 15.
+ STATUS_INVALID_FORMAT := 16.
+ STATUS_INVALID_VISUAL := 17.
+ STATUS_FILE_NOT_FOUND := 18.
+ STATUS_INVALID_DASH := 19.
+ STATUS_INVALID_DSC_COMMENT := 20.
+ STATUS_INVALID_INDEX := 21.
+ STATUS_CLIP_NOT_REPRESENTABLE := 22.
+ STATUS_TEMP_FILE_ERROR := 23.
+ STATUS_INVALID_STRIDE := 24.
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Status class methodsFor:'constants'!
+
+STATUS_CLIP_NOT_REPRESENTABLE
+
+ ^STATUS_CLIP_NOT_REPRESENTABLE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_FILE_NOT_FOUND
+
+ ^STATUS_FILE_NOT_FOUND
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_CONTENT
+
+ ^STATUS_INVALID_CONTENT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_DASH
+
+ ^STATUS_INVALID_DASH
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_DSC_COMMENT
+
+ ^STATUS_INVALID_DSC_COMMENT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_FORMAT
+
+ ^STATUS_INVALID_FORMAT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_INDEX
+
+ ^STATUS_INVALID_INDEX
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_MATRIX
+
+ ^STATUS_INVALID_MATRIX
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_PATH_DATA
+
+ ^STATUS_INVALID_PATH_DATA
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_POP_GROUP
+
+ ^STATUS_INVALID_POP_GROUP
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_RESTORE
+
+ ^STATUS_INVALID_RESTORE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_STATUS
+
+ ^STATUS_INVALID_STATUS
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_STRIDE
+
+ ^STATUS_INVALID_STRIDE
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_STRING
+
+ ^STATUS_INVALID_STRING
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_INVALID_VISUAL
+
+ ^STATUS_INVALID_VISUAL
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_NO_CURRENT_POINT
+
+ ^STATUS_NO_CURRENT_POINT
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_NO_MEMORY
+
+ ^STATUS_NO_MEMORY
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_NULL_POINTER
+
+ ^STATUS_NULL_POINTER
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_PATTERN_TYPE_MISMATCH
+
+ ^STATUS_PATTERN_TYPE_MISMATCH
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_READ_ERROR
+
+ ^STATUS_READ_ERROR
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_SUCCESS
+
+ ^STATUS_SUCCESS
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_SURFACE_FINISHED
+
+ ^STATUS_SURFACE_FINISHED
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_SURFACE_TYPE_MISMATCH
+
+ ^STATUS_SURFACE_TYPE_MISMATCH
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_TEMP_FILE_ERROR
+
+ ^STATUS_TEMP_FILE_ERROR
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+STATUS_WRITE_ERROR
+
+ ^STATUS_WRITE_ERROR
+
+ "Modified: / 10-07-2008 / 11:04:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+Status initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__SubpixelOrder.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,64 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#SubpixelOrder
+ instanceVariableNames:''
+ classVariableNames:'SUBPIXEL_ORDER_DEFAULT SUBPIXEL_ORDER_RGB SUBPIXEL_ORDER_BGR
+ SUBPIXEL_ORDER_VRGB SUBPIXEL_ORDER_VBGR'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!SubpixelOrder class methodsFor:'initialization'!
+
+initialize
+
+ SUBPIXEL_ORDER_DEFAULT := 0.
+ SUBPIXEL_ORDER_RGB := 1.
+ SUBPIXEL_ORDER_BGR := 2.
+ SUBPIXEL_ORDER_VRGB := 3.
+ SUBPIXEL_ORDER_VBGR := 4.
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!SubpixelOrder class methodsFor:'constants'!
+
+SUBPIXEL_ORDER_BGR
+
+ ^SUBPIXEL_ORDER_BGR
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SUBPIXEL_ORDER_DEFAULT
+
+ ^SUBPIXEL_ORDER_DEFAULT
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SUBPIXEL_ORDER_RGB
+
+ ^SUBPIXEL_ORDER_RGB
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SUBPIXEL_ORDER_VBGR
+
+ ^SUBPIXEL_ORDER_VBGR
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SUBPIXEL_ORDER_VRGB
+
+ ^SUBPIXEL_ORDER_VRGB
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+SubpixelOrder initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__Surface.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,477 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#Surface
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!Surface class methodsFor:'instance creation'!
+
+forPdfFile: aStringOrFilename width: w height: h
+
+ ^self
+ primPdfSurfaceCreate: aStringOrFilename asFilename asString
+ widthInPoints: w asDouble
+ heightInPoints: h asDouble
+
+ "Created: / 10-07-2008 / 09:35:34 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+forView: view
+
+ ^view device cairoSurfaceFor: view
+
+ "Created: / 10-07-2008 / 10:15:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+forXlib: dpy drawable: drawable visual: visual width: width height: height
+
+ ^self primXlibSurfaceCreate: dpy drawable: drawable visual: visual width: width height: height
+
+ "Created: / 10-07-2008 / 11:06:22 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Surface class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Surface class methodsFor:'primitives'!
+
+primCopyPage: surface
+
+ <cdecl: void "cairo_surface_copy_page" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primCreateSimilar: other content: content width: width height: height
+
+ <cdecl: Cairo::Surface "cairo_surface_create_similar" ( Cairo::Surface int32 int32 int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primDestroy: surface
+
+ <cdecl: void "cairo_surface_destroy" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFinish: surface
+
+ <cdecl: void "cairo_surface_finish" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primFlush: surface
+
+ <cdecl: void "cairo_surface_flush" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetContent: surface
+
+ <cdecl: int32 "cairo_surface_get_content" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetDeviceOffset: surface xOffset: x_offset yOffset: y_offset
+
+ <cdecl: void "cairo_surface_get_device_offset" ( Cairo::Surface pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetFontOptions: surface options: options
+
+ <cdecl: void "cairo_surface_get_font_options" ( Cairo::Surface Cairo::FontOptions ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetReferenceCount: surface
+
+ <cdecl: uint32 "cairo_surface_get_reference_count" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetType: surface
+
+ <cdecl: int32 "cairo_surface_get_type" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primGetUserData: surface key: key
+
+ <cdecl: pointer "cairo_surface_get_user_data" ( Cairo::Surface Cairo::UserDataKey ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceCreate: format width: width height: height
+
+ <cdecl: Cairo::Surface "cairo_image_surface_create" ( int32 int32 int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceCreateForData: data format: format width: width height: height stride: stride
+
+ <cdecl: Cairo::Surface "cairo_image_surface_create_for_data" ( pointer int32 int32 int32 int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceCreateFromPng: filename
+
+ <cdecl: Cairo::Surface "cairo_image_surface_create_from_png" ( charPointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceCreateFromPngStream: read_func closure: closure
+
+ <cdecl: Cairo::Surface "cairo_image_surface_create_from_png_stream" ( pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceGetData: surface
+
+ <cdecl: pointer "cairo_image_surface_get_data" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceGetFormat: surface
+
+ <cdecl: int32 "cairo_image_surface_get_format" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceGetHeight: surface
+
+ <cdecl: int32 "cairo_image_surface_get_height" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceGetStride: surface
+
+ <cdecl: int32 "cairo_image_surface_get_stride" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primImageSurfaceGetWidth: surface
+
+ <cdecl: int32 "cairo_image_surface_get_width" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMarkDirty: surface
+
+ <cdecl: void "cairo_surface_mark_dirty" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primMarkDirtyRectangle: surface x: x y: y width: width height: height
+
+ <cdecl: void "cairo_surface_mark_dirty_rectangle" ( Cairo::Surface int32 int32 int32 int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPdfSurfaceCreate: filename widthInPoints: width_in_points heightInPoints: height_in_points
+
+ <cdecl: Cairo::Surface "cairo_pdf_surface_create" ( charPointer double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPdfSurfaceCreateForStream: write_func closure: closure widthInPoints: width_in_points heightInPoints: height_in_points
+
+ <cdecl: Cairo::Surface "cairo_pdf_surface_create_for_stream" ( pointer pointer double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primPdfSurfaceSetSize: surface widthInPoints: width_in_points heightInPoints: height_in_points
+
+ <cdecl: void "cairo_pdf_surface_set_size" ( Cairo::Surface double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primReference: surface
+
+ <cdecl: Cairo::Surface "cairo_surface_reference" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetDeviceOffset: surface xOffset: x_offset yOffset: y_offset
+
+ <cdecl: void "cairo_surface_set_device_offset" ( Cairo::Surface double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetFallbackResolution: surface xPixelsPerInch: x_pixels_per_inch yPixelsPerInch: y_pixels_per_inch
+
+ <cdecl: void "cairo_surface_set_fallback_resolution" ( Cairo::Surface double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSetUserData: surface key: key userData: user_data destroy: destroy
+
+ <cdecl: int32 "cairo_surface_set_user_data" ( Cairo::Surface Cairo::UserDataKey pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primShowPage: surface
+
+ <cdecl: void "cairo_surface_show_page" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primStatus: surface
+
+ <cdecl: int32 "cairo_surface_status" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSvgSurfaceCreate: filename widthInPoints: width_in_points heightInPoints: height_in_points
+
+ <cdecl: Cairo::Surface "cairo_svg_surface_create" ( charPointer double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSvgSurfaceCreateForStream: write_func closure: closure widthInPoints: width_in_points heightInPoints: height_in_points
+
+ <cdecl: Cairo::Surface "cairo_svg_surface_create_for_stream" ( pointer pointer double double ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primSvgSurfaceRestrictToVersion: surface version: version
+
+ <cdecl: void "cairo_svg_surface_restrict_to_version" ( Cairo::Surface int32 ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWriteToPng: surface filename: filename
+
+ <cdecl: int32 "cairo_surface_write_to_png" ( Cairo::Surface charPointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWriteToPngStream: surface writeFunc: write_func closure: closure
+
+ <cdecl: int32 "cairo_surface_write_to_png_stream" ( Cairo::Surface pointer pointer ) >
+ self primitiveFailed
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceCreate: dpy drawable: drawable visual: visual width: width height: height
+
+ <cdecl: Cairo::Surface "cairo_xlib_surface_create" ( pointer int32 pointer int32 int32 ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceCreateForBitmap: dpy bitmap: bitmap screen: screen width: width height: height
+
+ <cdecl: Cairo::Surface "cairo_xlib_surface_create_for_bitmap" ( pointer int32 pointer int32 int32 ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetDepth: surface
+
+ <cdecl: int32 "cairo_xlib_surface_get_depth" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetDisplay: surface
+
+ <cdecl: pointer "cairo_xlib_surface_get_display" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetDrawable: surface
+
+ <cdecl: int32 "cairo_xlib_surface_get_drawable" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:14 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetHeight: surface
+
+ <cdecl: int32 "cairo_xlib_surface_get_height" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetScreen: surface
+
+ <cdecl: pointer "cairo_xlib_surface_get_screen" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetVisual: surface
+
+ <cdecl: pointer "cairo_xlib_surface_get_visual" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceGetWidth: surface
+
+ <cdecl: int32 "cairo_xlib_surface_get_width" ( Cairo::Surface ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceSetDrawable: surface drawable: drawable width: width height: height
+
+ <cdecl: void "cairo_xlib_surface_set_drawable" ( Cairo::Surface int32 int32 int32 ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXlibSurfaceSetSize: surface width: width height: height
+
+ <cdecl: void "cairo_xlib_surface_set_size" ( Cairo::Surface int32 int32 ) >
+ self primitiveFailed
+
+ "Created: / 10-07-2008 / 11:04:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Surface methodsFor:'accessing'!
+
+graphicsContext
+
+ ^GraphicsContext on: self
+
+ "Created: / 10-07-2008 / 09:38:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+referenceCount
+
+ ^self class primGetReferenceCount: self
+
+ "Created: / 10-07-2008 / 10:28:49 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+type
+
+ ^self class primGetType: self
+
+ "Created: / 10-07-2008 / 10:34:36 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!Surface methodsFor:'initialization & release'!
+
+finalize
+
+ Transcript showCR:'Cairo [INFO]: Finalizing surface ' ,self address hexPrintString, ' ref count: ', self referenceCount printString.
+ self class
+ primFlush: self;
+ primDestroy: self
+
+ "Created: / 10-07-2008 / 09:54:00 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+flush
+
+ ^self class primFlush: self
+
+ "Created: / 10-07-2008 / 10:32:50 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+reference
+
+ ^self class primReference: self
+
+ "Created: / 10-07-2008 / 10:28:03 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__SurfaceType.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,139 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#SurfaceType
+ instanceVariableNames:''
+ classVariableNames:'SURFACE_TYPE_IMAGE SURFACE_TYPE_PDF SURFACE_TYPE_PS
+ SURFACE_TYPE_XLIB SURFACE_TYPE_XCB SURFACE_TYPE_GLITZ
+ SURFACE_TYPE_QUARTZ SURFACE_TYPE_WIN32 SURFACE_TYPE_BEOS
+ SURFACE_TYPE_DIRECTFB SURFACE_TYPE_SVG SURFACE_TYPE_OS2
+ SURFACE_TYPE_WIN32_PRINTING SURFACE_TYPE_QUARTZ_IMAGE'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!SurfaceType class methodsFor:'initialization'!
+
+initialize
+
+ SURFACE_TYPE_IMAGE := 0.
+ SURFACE_TYPE_PDF := 1.
+ SURFACE_TYPE_PS := 2.
+ SURFACE_TYPE_XLIB := 3.
+ SURFACE_TYPE_XCB := 4.
+ SURFACE_TYPE_GLITZ := 5.
+ SURFACE_TYPE_QUARTZ := 6.
+ SURFACE_TYPE_WIN32 := 7.
+ SURFACE_TYPE_BEOS := 8.
+ SURFACE_TYPE_DIRECTFB := 9.
+ SURFACE_TYPE_SVG := 10.
+ SURFACE_TYPE_OS2 := 11.
+ SURFACE_TYPE_WIN32_PRINTING := 12.
+ SURFACE_TYPE_QUARTZ_IMAGE := 13.
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!SurfaceType class methodsFor:'constants'!
+
+SURFACE_TYPE_BEOS
+
+ ^SURFACE_TYPE_BEOS
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_DIRECTFB
+
+ ^SURFACE_TYPE_DIRECTFB
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_GLITZ
+
+ ^SURFACE_TYPE_GLITZ
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_IMAGE
+
+ ^SURFACE_TYPE_IMAGE
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_OS2
+
+ ^SURFACE_TYPE_OS2
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_PDF
+
+ ^SURFACE_TYPE_PDF
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_PS
+
+ ^SURFACE_TYPE_PS
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_QUARTZ
+
+ ^SURFACE_TYPE_QUARTZ
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_QUARTZ_IMAGE
+
+ ^SURFACE_TYPE_QUARTZ_IMAGE
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_SVG
+
+ ^SURFACE_TYPE_SVG
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_WIN32
+
+ ^SURFACE_TYPE_WIN32
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_WIN32_PRINTING
+
+ ^SURFACE_TYPE_WIN32_PRINTING
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_XCB
+
+ ^SURFACE_TYPE_XCB
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SURFACE_TYPE_XLIB
+
+ ^SURFACE_TYPE_XLIB
+
+ "Modified: / 10-07-2008 / 11:04:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+SurfaceType initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__SvgVersion.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,39 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+SharedPool subclass:#SvgVersion
+ instanceVariableNames:''
+ classVariableNames:'SVG_VERSION_1_1 SVG_VERSION_1_2'
+ poolDictionaries:''
+ category:'Cairo - Constants'
+!
+
+!SvgVersion class methodsFor:'initialization'!
+
+initialize
+
+ SVG_VERSION_1_1 := 0.
+ SVG_VERSION_1_2 := 1.
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!SvgVersion class methodsFor:'constants'!
+
+SVG_VERSION_1_1
+
+ ^SVG_VERSION_1_1
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+SVG_VERSION_1_2
+
+ ^SVG_VERSION_1_2
+
+ "Modified: / 10-07-2008 / 11:04:08 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+
+SvgVersion initialize!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__TextExtents.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,110 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#TextExtents
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!TextExtents class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!TextExtents methodsFor:'accessing - primitives'!
+
+primHeight
+
+ self doubleAt:1 + 24
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primHeight: value
+
+ self doubleAt:1 + 24 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWidth
+
+ self doubleAt:1 + 16
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primWidth: value
+
+ self doubleAt:1 + 16 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXAdvance
+
+ self doubleAt:1 + 32
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXAdvance: value
+
+ self doubleAt:1 + 32 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXBearing
+
+ self doubleAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primXBearing: value
+
+ self doubleAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYAdvance
+
+ self doubleAt:1 + 40
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYAdvance: value
+
+ self doubleAt:1 + 40 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYBearing
+
+ self doubleAt:1 + 8
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primYBearing: value
+
+ self doubleAt:1 + 8 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Cairo__UserDataKey.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,40 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+"{ NameSpace: Cairo }"
+
+ExternalStructure subclass:#UserDataKey
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Cairo - C Types'
+!
+
+!UserDataKey class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libcairo.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll'].
+
+ self error:'Library name for host OS is not known'
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!UserDataKey methodsFor:'accessing - primitives'!
+
+primUnused
+
+ self doubleWordAt:1 + 0
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+primUnused: value
+
+ self doubleWordAt:1 + 0 put:value
+
+ "Modified: / 10-07-2008 / 11:04:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/extensions.st Thu Jul 10 09:30:44 2008 +0000
@@ -0,0 +1,65 @@
+"{ Package: 'stx:goodies/libcairo' }"
+
+!
+
+!DeviceGraphicsContext methodsFor:'cairo support'!
+
+drawableId
+
+ ^drawableId
+
+ "Created: / 10-07-2008 / 10:20:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+!GraphicsDevice methodsFor:'cairo support'!
+
+cairoSurfaceFor: view
+
+ self error:'Graphics device not supported'
+
+ "Created: / 10-07-2008 / 10:16:21 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+!GraphicsDevice methodsFor:'accessing'!
+
+displayId
+ ^ displayId
+
+ "Created: / 04-07-2008 / 12:58:56 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+!GraphicsDevice methodsFor:'accessing'!
+
+screen
+ ^ screen
+
+ "Created: / 04-07-2008 / 13:12:55 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+!XWorkstation methodsFor:'cairo support'!
+
+cairoSurfaceFor: view
+
+ ^Cairo::Surface
+ forXlib: displayId
+ drawable: view drawableId address
+ visual: self visualStructure
+ width: view width
+ height: view height
+
+ "Created: / 10-07-2008 / 10:16:36 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+!XWorkstation methodsFor:'cairo support'!
+
+visualStructure
+
+ | screenNumber |
+ screenNumber := screen.
+
+ %{
+ return __MKEXTERNALADDRESS( DefaultVisual( myDpy , __intVal ( screenNumber ) ) );
+ %}.
+ ^nil
+
+ "
+ Screen current visualStructure
+ "
+
+ "Created: / 10-07-2008 / 11:03:01 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !