stx_goodies_libcairo.st
changeset 21 34bf952f3f60
parent 18 fae6edf1bdbd
child 23 38ee47dbd976
--- a/stx_goodies_libcairo.st	Sun Sep 21 00:44:10 2014 +0100
+++ b/stx_goodies_libcairo.st	Sun Sep 21 01:08:15 2014 +0100
@@ -10,6 +10,20 @@
 
 !stx_goodies_libcairo class methodsFor:'description'!
 
+mandatoryPreRequisites
+    "list packages which are mandatory as a prerequisite.
+     This are packages containing superclasses of my classes and classes which
+     are extended by myself.
+     They are mandatory, because we need these packages as a prerequisite for loading and compiling.
+     This method is generated automatically,
+     by searching along the inheritance chain of all of my classes."
+
+    ^ #(
+        #'stx:libbasic'    "ArrayedCollection - superclass of Cairo::FontExtents"
+        #'stx:libview'    "DeviceGraphicsContext - extended"
+    )
+!
+
 postLoadAction
 
     "
@@ -19,13 +33,15 @@
     super postLoadAction.
     OperatingSystem isUNIXlike 
         ifTrue:
-            [ExternalLibraryFunction dllPath:
+            [ExternalLibraryFunction dllPath:    
                 (ExternalLibraryFunction dllPath asOrderedCollection
+                    add:'/usr/lib/i386-linux-gnu';
                     add:'/usr/lib';
                     add:'/usr/local/lib';
                     yourself)].
 
     "Created: / 10-09-2008 / 18:30:19 / Jan Vrany <vranyj1@fel.cvut.cz>"
+    "Modified: / 21-09-2014 / 01:01:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 preLoadAction
@@ -52,6 +68,27 @@
         #'stx:libbasic'    "ProjectDefinition - superclass of stx_goodies_libcairo "
         #'stx:libview'    "GLXWorkstation - superclass of Cairo::GLXWorkstation "
     )
+!
+
+referencedPreRequisites
+    "list packages which are a prerequisite, because they contain
+     classes which are referenced by my classes.
+     We do not need these packages as a prerequisite for loading or compiling.
+     This method is generated automatically,
+     by searching all classes (and their packages) which are referenced by my classes."
+
+    ^ #(
+    )
+!
+
+subProjects
+    "list packages which are known as subprojects. 
+     The generated makefile will enter those and make there as well.
+     However: they are not forced to be loaded when a package is loaded; 
+     for those, redefine requiredPrerequisites."
+
+    ^ #(
+    )
 ! !
 
 !stx_goodies_libcairo class methodsFor:'description - contents'!
@@ -65,6 +102,7 @@
     ^ #(
         "<className> or (<className> attributes...) in load order"
         #'Cairo::Antialias'
+        #'Cairo::ClockView'
         #'Cairo::Content'
         #'Cairo::Extend'
         #'Cairo::FillRule'
@@ -94,6 +132,7 @@
         #'Cairo::SubpixelOrder'
         #'Cairo::SurfaceType'
         #'Cairo::SvgVersion'
+        #'Cairo::TextExampleView'
         #'Cairo::TextExtents'
         #'Cairo::UserDataKey'
         #'stx_goodies_libcairo'
@@ -102,14 +141,12 @@
         #'Cairo::Pattern'
         #'Cairo::ScaledFont'
         #'Cairo::Surface'
-        #'Cairo::ClockView'
-        #'Cairo::TextExampleView'
     )
 !
 
 extensionMethodNames
-    "lists the extension methods which are to be included in the project.
-     Entries are 2-element array literals, consisting of class-name and selector."
+    "list class/selector pairs of extensions.
+     A correponding method with real names must be present in my concrete subclasses"
 
     ^ #(
         DeviceGraphicsContext drawableId
@@ -118,15 +155,7 @@
         SimpleView cairo
         SimpleView cairoSurface
         XWorkstation cairoSurfaceFor:
-        'Cairo class' libraryName
-        'Cairo class' primDebugResetStaticData
-        'Cairo class' primFormatStrideForWidth:width:
-        'Cairo class' primStatusToString:
-        'Cairo class' primVersion
-        'Cairo class' primVersionString
-        'Cairo class' statusToString:
-        'Cairo class' version
-        'Cairo class' versionString
+        XWorkstation queryDefaultVisual
     )
 ! !
 
@@ -188,6 +217,11 @@
     ^'$Id$'
 !
 
+version_HG
+    ^ '$Changeset: <not expanded> $'
+!
+
 version_SVN
     ^ '$Id::                                                                                                                        $'
 ! !
+