summaryrefslogtreecommitdiffstats
path: root/make
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2010-05-27 14:25:37 +0200
committerSven Gothel <[email protected]>2010-05-27 14:25:37 +0200
commit944bef5e70e0e8fe85a147fa7304c35f18d1957b (patch)
tree3279a9cae1258bf102716bf6d4f49883bd14f67f /make
parent6e599a2696f878786783e0fea17534e67655a5c9 (diff)
Fix NativeWindow JAWT Code Generation and Bounds Access
- Restructure: JAWT gluegen, use common jawt-common.cfg - Fix: Use proper capacity for GetDrawingSurface and GetDrawingSurfaceInfo - Fix: JAWTWindow maintains AWT bounds - Fix: JAWTWindow locking/unlocking decoupled with abstract implementation, which allows clear code and simpler unlock code.
Diffstat (limited to 'make')
-rw-r--r--make/build-nativewindow.xml4
-rw-r--r--make/config/nativewindow/jawt-common.cfg26
-rw-r--r--make/config/nativewindow/jawt-macosx.cfg18
-rw-r--r--make/config/nativewindow/jawt-win32.cfg17
-rw-r--r--make/config/nativewindow/jawt-x11.cfg17
5 files changed, 31 insertions, 51 deletions
diff --git a/make/build-nativewindow.xml b/make/build-nativewindow.xml
index b087a5ba7..861dc00c5 100644
--- a/make/build-nativewindow.xml
+++ b/make/build-nativewindow.xml
@@ -73,7 +73,7 @@
<!-- partitioning -->
<property name="java.part.core"
- value="javax/media/nativewindow/*, javax/media/nativewindow/egl/*, javax/media/nativewindow/macosx/*, javax/media/nativewindow/windows/*, com/jogamp/nativewindow/impl/*, com/jogamp/nativewindow/impl/jvm/*"/>
+ value="javax/media/nativewindow/*, javax/media/nativewindow/egl/*, javax/media/nativewindow/macosx/*, javax/media/nativewindow/windows/*, com/jogamp/nativewindow/util/*, com/jogamp/nativewindow/impl/*, com/jogamp/nativewindow/impl/jvm/*"/>
<property name="java.part.awt"
value="javax/media/nativewindow/awt/*, com/jogamp/nativewindow/impl/jawt/**, com/jogamp/nativewindow/impl/**/awt/**"/>
@@ -155,7 +155,7 @@
<property name="javadoc.packagenames" value="${javadoc.spec.packagenames}" />
- <property name="javadoc.dev.packagenames" value="${javadoc.packagenames},com.jogamp.nativewindow.impl.*,com.sun.gluegen,com.jogamp.gluegen.runtime" />
+ <property name="javadoc.dev.packagenames" value="${javadoc.packagenames},com.jogamp.nativewindow.util.*,com.jogamp.nativewindow.impl.*,com.sun.gluegen,com.jogamp.gluegen.runtime" />
<property name="javadoc.bottom" value="Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to &lt;a href=&quot;http://jcp.org/en/jsr/detail?id=231&quot;&gt;license terms&lt;/a&gt;." />
</target>
diff --git a/make/config/nativewindow/jawt-common.cfg b/make/config/nativewindow/jawt-common.cfg
new file mode 100644
index 000000000..4ed0a88f1
--- /dev/null
+++ b/make/config/nativewindow/jawt-common.cfg
@@ -0,0 +1,26 @@
+# Common JAWT config file
+Style AllStatic
+Package com.jogamp.nativewindow.impl.jawt
+JavaClass JAWTFactory
+JavaOutputDir gensrc/classes
+#NativeOutputDir gensrc/native/<PLATFORM>
+
+HierarchicalNativeOutput false
+
+Opaque boolean jboolean
+Opaque long struct jawt_DrawingSurface*
+
+ReturnValueCapacity GetDrawingSurface sizeof(JAWT_DrawingSurface)
+ReturnValueCapacity GetDrawingSurfaceInfo sizeof(JAWT_DrawingSurfaceInfo)
+
+IgnoreField JAWT GetComponent
+IgnoreField JAWT_DrawingSurfaceInfo platformInfo
+
+IncludeAs CustomJavaCode JAWT jawt-CustomJavaCode.java
+
+CustomCCode #include <jawt.h>
+
+import java.security.*
+import com.jogamp.nativewindow.impl.jawt.*
+
+IncludeAs CustomJavaCode JAWT_DrawingSurfaceInfo jawt-DrawingSurfaceInfo-CustomJavaCode.java
diff --git a/make/config/nativewindow/jawt-macosx.cfg b/make/config/nativewindow/jawt-macosx.cfg
index dea1a27b7..e018af0dc 100644
--- a/make/config/nativewindow/jawt-macosx.cfg
+++ b/make/config/nativewindow/jawt-macosx.cfg
@@ -1,30 +1,14 @@
# This .cfg file is used to generate the interface to the JAWT, which
# is used by the MacOSXOnscreenGLContext.
-Style AllStatic
-Package com.jogamp.nativewindow.impl.jawt
-JavaClass JAWTFactory
-JavaOutputDir gensrc/classes
+Include jawt-common.cfg
NativeOutputDir gensrc/native/MacOSX
-HierarchicalNativeOutput false
-
-Opaque boolean jboolean
Opaque long void *
Opaque long NSView *
-IgnoreField JAWT GetComponent
-IgnoreField JAWT_DrawingSurfaceInfo platformInfo
-
-IncludeAs CustomJavaCode JAWT jawt-CustomJavaCode.java
-
CustomCCode #include <inttypes.h>
-CustomCCode #include <jawt.h>
CustomCCode #include </usr/include/machine/types.h>
-import java.security.*
-import com.jogamp.nativewindow.impl.jawt.*
StructPackage JAWT_MacOSXDrawingSurfaceInfo com.jogamp.nativewindow.impl.jawt.macosx
EmitStruct JAWT_MacOSXDrawingSurfaceInfo
Implements JAWT_MacOSXDrawingSurfaceInfo JAWT_PlatformInfo
-
-IncludeAs CustomJavaCode JAWT_DrawingSurfaceInfo jawt-DrawingSurfaceInfo-CustomJavaCode.java
diff --git a/make/config/nativewindow/jawt-win32.cfg b/make/config/nativewindow/jawt-win32.cfg
index af0c7ce29..00b3a3322 100644
--- a/make/config/nativewindow/jawt-win32.cfg
+++ b/make/config/nativewindow/jawt-win32.cfg
@@ -1,30 +1,15 @@
# This .cfg file is used to generate the interface to the JAWT, which
# is used by the WindowsOnscreenGLContext.
-Style AllStatic
-Package com.jogamp.nativewindow.impl.jawt
-JavaClass JAWTFactory
-JavaOutputDir gensrc/classes
+Include jawt-common.cfg
NativeOutputDir gensrc/native/Windows
-HierarchicalNativeOutput false
-
-Opaque boolean jboolean
Opaque long HDC
-IgnoreField JAWT GetComponent
-IgnoreField JAWT_DrawingSurfaceInfo platformInfo
IgnoreField JAWT_Win32DrawingSurfaceInfo null
IgnoreField JAWT_Win32DrawingSurfaceInfo hpalette
-IncludeAs CustomJavaCode JAWT jawt-CustomJavaCode.java
-
-CustomCCode #include <jawt.h>
Include ../intptr.cfg
-import java.security.*
-import com.jogamp.nativewindow.impl.jawt.*
StructPackage JAWT_Win32DrawingSurfaceInfo com.jogamp.nativewindow.impl.jawt.windows
EmitStruct JAWT_Win32DrawingSurfaceInfo
Implements JAWT_Win32DrawingSurfaceInfo JAWT_PlatformInfo
-
-IncludeAs CustomJavaCode JAWT_DrawingSurfaceInfo jawt-DrawingSurfaceInfo-CustomJavaCode.java
diff --git a/make/config/nativewindow/jawt-x11.cfg b/make/config/nativewindow/jawt-x11.cfg
index ccfe009dd..4e7ed267b 100644
--- a/make/config/nativewindow/jawt-x11.cfg
+++ b/make/config/nativewindow/jawt-x11.cfg
@@ -1,30 +1,15 @@
# This .cfg file is used to generate the interface to the JAWT, which
# is used by the X11OnscreenGLContext.
-Style AllStatic
-Package com.jogamp.nativewindow.impl.jawt
-JavaClass JAWTFactory
-JavaOutputDir gensrc/classes
+Include jawt-common.cfg
NativeOutputDir gensrc/native/X11
-HierarchicalNativeOutput false
-
-Opaque boolean jboolean
Opaque long Drawable
Opaque long Display *
-IgnoreField JAWT GetComponent
-IgnoreField JAWT_DrawingSurfaceInfo platformInfo
IgnoreField JAWT_X11DrawingSurfaceInfo GetAWTColor
-IncludeAs CustomJavaCode JAWT jawt-CustomJavaCode.java
-
CustomCCode #include <inttypes.h>
-CustomCCode #include <jawt.h>
-import java.security.*
-import com.jogamp.nativewindow.impl.jawt.*
StructPackage JAWT_X11DrawingSurfaceInfo com.jogamp.nativewindow.impl.jawt.x11
EmitStruct JAWT_X11DrawingSurfaceInfo
Implements JAWT_X11DrawingSurfaceInfo JAWT_PlatformInfo
-
-IncludeAs CustomJavaCode JAWT_DrawingSurfaceInfo jawt-DrawingSurfaceInfo-CustomJavaCode.java