aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Tested:Sven Gothel2009-06-0354-613/+1064
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Linux / X11 / GL3 / GL2 / ES1 / ES2 - Using etc/profile.jogl JOGL_ALL . ./setenv-jogl.x86.sh JOGL_ALL - Java2D/GLJPanel: demos.jrefract.JRefract - GLCanvas: demos.gears.Gears - Newt/Nativewindow (demos.GLInfo, demos.es2.RedSquare, demos.es2.RedSquare) - with multiple instances of different GL profiles, ie java demos.es1.RedSquare -GLES2 -GLES1 java demos.GLInfo -GLES2 -GL2 - GL 3.1 test with demos.GLInfo java demos.GLInfo -GL3 java demos.GLInfo -GL3 -GL2 with NVIDIA 180.37.05 JOGL Enable parallel GLProfiles: - GL holds it's GLProfile - GL / GLBase added: hasGLSL() getGLProfile() - Removed all hardcoded GLProfile checks - Make GLProfile an instance of GLCapabilities - GLCapabilities needs GLProfile in constructor, or null for the default GLProfile - All GLProfiles are singelton mapped objects, setup and verified at static init. - All GLDrawableFactories in GLDrawableFactory are singelton objects, setup at static init. - GLDrawableFactories.getFactory() needs an argument, which leads to GLProfile, ie NativeWindow, AbstractGraphicsConfiguration, GLCapabilities or GLProfile. - EGLDrawableFactory takes GLProfile as an argument, being able to take the singleton role as ES1 or ES2 - EGLDrawableFactory loads ES & EGL libraries _local_, otherwise the symbols produce a collision (Unix/PC-Emulation). TODO: Check on Windows/WinCE ! - Fixing etc/profile.jogl JOGL_ALL EGLGraphicsConfigurationFactory - Added eglGetConfigs -> GLCapabilities -> eglChooseConfig, in case the simple eglChooseConfig fails. - Using given chooser, is null, use DefaultGLCapabilitiesChooser Moved FixedFuncUtil.class -> jogl.util.jar, otherwise the FixedFuncUtil pipeline cannot be used without emulation. GLDrawable Rename getChosenGLCapabilities() -> getGLCapabilities(), since all GLCapabilities access functions return the current state. Add getGLProfile() NativeLibLoader[Base] Added 'addLoaded' and 'isLoaded', so all LoadAction implementation can use it and circumvent double library loading. GlueGen Split openLibrary -> openLibraryLocal / Global, utilizing as an optional flag (global), which is true per default. TODO: How to do this on Windows ? TODO: Verify Windows and MacOSX !! git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1922 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix Deadlock in X11AWTNativeWindowFactory (adding missing notifyAll() ; ↵Sven Gothel2009-05-307-80/+109
| | | | | | Stricten unlock(), throw an exception if not locked to make cheap coding more visible ; Removed double lock of surface and JAWT ; Adding missing try/finally block for some locks git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1921 232f8b59-042b-4e1e-8c03-345bb8c30851
* Clarifying resetGLFunctionAvailability() -> ↵Sven Gothel2009-05-3011-27/+63
| | | | | | setGLFunctionAvailability(boolean force) and updateGLProcAddressTable() ; fixes missing init for some Context implementations, ie PBuffer git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1920 232f8b59-042b-4e1e-8c03-345bb8c30851
* JOGLSven Gothel2009-05-29105-2051/+3688
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added OpenGL 3.0 and 3.1 support 3.0 as part of GL2 (extensions only) 3.1 forward compatible as GL3, ie doesn't contain the GL2 fixed function stuff etc Added code to retrieve a 3.0/3.1 context: X11/GLX and Windows/WGL TODO: MacOSX !! Updated GL and GLX extensions Fixing auto GLProfile selection, determine if GL2ES[1] uses GL2 or ES Usage of the unified GraphicsConfiguration of NativeWindow for all platforms. Sure, the broken OS (Win32/MacOSX) have a update mechanism for theit queried Capabilities after drawable creation. Adding X11/GLX GLXFBConfig usage and fixing it's attribute mapping Fixing GLX/X11 FBConfig/XVisual query function's memory leak, using a manual implementation, which copies the data and calls XFree. Added WGL extension WGL_ARB_create_context Tested: Linux x86 and x86_64 GL2, ES2 and ES1 Note: Nvidia driver couldn't make the succesfully created 3.1 context current. TODO: Verify Windows and MacOSX !! git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1919 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt: better keyboard input support on Windows (warning: may have broken the ↵Dmitri Trembovetski2009-05-283-214/+630
| | | | | | mobile windows build because of unicode API usage, I have no way to check) git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1918 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt: implemented simple window focus management for Mac OS XChristopher Campbell2009-05-263-1/+60
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1917 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt: implemented simple Window focus management ↵Dmitri Trembovetski2009-05-267-41/+119
| | | | | | (focusGained/focusLost/requestFocus for Window). Currently only implemented on Windows. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1916 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed NEWT mouse events on Mac OS X to be consistent with Windows ↵Christopher Campbell2009-05-261-2/+24
| | | | | | implementation (0==none, 1==left, 2==middle, 3==right). git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1915 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt: fixed mouse wheel support on windows - needed to translate mouse ↵Dmitri Trembovetski2009-05-261-2/+11
| | | | | | event coordinates from screen to client git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1914 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt fixes: implemented mouse wheel support - currently only hooked up on ↵Dmitri Trembovetski2009-05-259-40/+128
| | | | | | Windows platform, others will follow git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1913 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt fixes for Windows implementation: beginnings of proper modifier ↵Dmitri Trembovetski2009-05-242-0/+19
| | | | | | handling for key events; ignore WM_ERASEBG event to avoild flickering when resizing git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1912 232f8b59-042b-4e1e-8c03-345bb8c30851
* Checking in forgotten ShaderUtil.javaKenneth Russel2009-05-221-0/+400
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1911 232f8b59-042b-4e1e-8c03-345bb8c30851
* Refactored shader-related utility routines from core GL2ES2 class intoKenneth Russel2009-05-223-19/+34
| | | | | | | | | | | | ShaderUtil class. Added GLContext.getAttachedObject(String) and putAttachedObject(String, Object) to allow arbitrarily named objects to be attached to GLContext. Removed explicitly defined toString() operations on GL implementations which were problematic and which would have required downward references into com.sun.opengl.util.glsl package after this refactoring. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1909 232f8b59-042b-4e1e-8c03-345bb8c30851
* Recently code (UnifiedName, GLUnifiedName) was added to GlueGen toKenneth Russel2009-05-207-141/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | automatically detect duplicate constant and function definitions between vendor and ARB extensions and the OpenGL core, and to remove the suffixes of ARB extensions. This code has helped automate the process of discovering extensions that were promoted into the OpenGL core. While this code has saved some manual effort, it has also caused several problems: 1. It causes obsolete ARB extensions to be incorrectly moved into the core OpenGL namespace. GL_ARB_texture_rectangle, GL_ARB_vertex_blend, and GL_ARB_matrix_palette are examples of extensions that should not have their ARB suffixes removed because they are dead-end extensions. Definitions which are explicitly specified that they will change, such as those in the EGL_KHR_sync extension, were also incorrectly moved into the core namespace. 2. It has caused certain OpenGL ES-specific definitions to accidentally be promoted into the core OpenGL namespace: for example, the constants associated with the GL_OES_point_size_array extension, which were incorrectly placed into the GL2ES1 interface. 3. It causes namespace collisions between certain ARB extensions that are only accessible via their ARB entry points and core OpenGL routines: specifically GL_ARB_vertex_program and GL_ARB_fragment program. Based on tests on NVIDIA's drivers, when a developer wants to use the earlier ARB_vertex_program and ARB_fragment_program semantics rather than GLSL, it is mandatory to use the ARB entry points rather than the core OpenGL entry points. 4. It is not easy to configure the behavior of this automatic merging, nor easy to see how it would be extended to be configurable. 5. It does not address the problem of detecting which extensions are common between desktop OpenGL and OpenGL ES. A different algorithm would be needed to solve that problem. 6. It has a high degree of functional overlap to the IgnoreExtension directive which has previously been used to ignore ARB extensions that were promoted into the OpenGL core. There were already IgnoreExtension directives in place for all of the OpenGL extensions subsumed in OpenGL 1.1 through 1.3. 7. It has been the cause of several bugs and unexpected interactions with the Ignore and ForceProcAddressGen directives. After careful consideration, it appears that the problems with this code outweigh the benefits and it has been removed. The run-time code which attempts to find extension variants of core entry points has been retained, however. To reduce the amount of subsequent manual work, the following additions have been made: 1. A generic SymbolFilter mechanism has been added to GlueGen, which can be used to pre-process the entire set of constant and function definitions at any time during glue code generation (although it is recommended to do so at the beginning of processing, i.e., in GlueEmitter.beginEmission()). 2. The RenameJavaMethod directive has been generalized to RenameJavaSymbol, and can now work on constant definitions. 3. A ConstantDefinition class has been added. 4. A RenameExtensionIntoCore directive has been added to the GLEmitter which will rename all constant definitions and entry points associated with a particular OpenGL extension into the core namespace, i.e., stripping off any ARB or similar suffixes. 5. An AutoUnifyExtensions directive has been added which is disabled by default but which will automatically ignore any OpenGL extension which has been completely subsumed into the OpenGL core and, if not, print out the first declaration in that extension which caused it to fail to be ignored. The extensions common between OpenGL ES and desktop OpenGL have now largely been moved into the core namespace using the RenameExtensionIntoCore directive. A couple of these extensions had slight differences between desktop OpenGL and OpenGL ES; the common declarations were renamed manually. IgnoreExtension directives have been added for those ARB extensions promoted into the OpenGL core up to OpenGL 2.1. A few extensions which were either silently promoted into the core specification (GL_EXT_paletted_texture) or are obsolete (GL_EXT_multisample, GL_EXT_point_parameters) were also ignored. The GlueGen runtime code which looks up extension versions of core APIs via GLExtensionNames makes this possible without breaking compatibility on older machines that do not support OpenGL 2.1 directly. With these changes, the same effect as the automatic extension unification mechanism has been achieved, with much more explainable and controllable results. Before-and-after versions of all of the public interfaces (GL, GL2ES1, GL2ES2, GLES1, GLES2, and GL2) have been compared by hand to ensure that the results are as expected and desired. Bugs in BuildStaticGLInfo were fixed which were preventing the extension associations in the OpenGL ES headers from being discovered. getExtensions() was added to be able to enumerate the discovered extensions. Most .cfg files were changed to parse both the desktop OpenGL and the OpenGL ES headers using the GLHeaders directive so that the extension associations are known for both sets of APIs. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1908 232f8b59-042b-4e1e-8c03-345bb8c30851
* NEWT: mouse pressed fixSven Gothel2009-04-131-7/+7
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1902 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt fixes for Windows implementation: implemented undecorated window styleDmitri Trembovetski2009-04-102-5/+10
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1900 232f8b59-042b-4e1e-8c03-345bb8c30851
* Preserve mouse button number while draggingSven Gothel2009-03-281-5/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1899 232f8b59-042b-4e1e-8c03-345bb8c30851
* Newt fixes for Windows implementation: implemented setPosition, setTitle; ↵Dmitri Trembovetski2009-03-242-8/+93
| | | | | | fixed mouse modifiers, hooked up window move notification git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1898 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix GLProfile.isGL2ES[12](), adding GLProfile.hasGLSL()Sven Gothel2009-03-206-14/+21
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1896 232f8b59-042b-4e1e-8c03-345bb8c30851
* Putback AWTAnimatorImpl to util, hence *AnimatorImpl are protected againSven Gothel2009-03-202-4/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1894 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix GL2ES12.isGL() and re-adding the shader code to the jarSven Gothel2009-03-201-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1893 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix: Missed package move of AWTAnimatorImplSven Gothel2009-03-202-3/+4
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1892 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix some scripts, AWTAnimator to it's awt packageSven Gothel2009-03-202-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1891 232f8b59-042b-4e1e-8c03-345bb8c30851
* Missed movement of FBObject class from javax.media.opengl.util toKenneth Russel2009-03-197-8/+1
| | | | | | | | com.sun.opengl.util. Fixed remaining references to javax.media.opengl.util package. Updated demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1890 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed GL2ES12 interface from the public API since it is only anKenneth Russel2009-03-192-30/+51
| | | | | | | | | | | | | | implementation detail. Removed GL2ES12 queries from the GLProfile class. Changed GL2ES12 instance to pay attention to the chosen profile so it behaves only like either GL2ES1 or GL2ES2. Sven's fixed function emulation can now be tested on the desktop without needing OpenGL ES emulation libraries. However, there appear to be problems running it on top of Apple's OpenGL implementation -- seen by running demos.es1.RedSquare and demos.es1.angeles.Main forcing the use of the GL2ES2 profile. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1889 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed reflective queries from GLProfile and their use inKenneth Russel2009-03-191-24/+0
| | | | | | | | BuildComposablePipeline's generated code. Stopped squelching exceptions in GlueGen. Fixed error in glxext.cfg. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1888 232f8b59-042b-4e1e-8c03-345bb8c30851
* Javadoc cleanupKenneth Russel2009-03-191-4/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1887 232f8b59-042b-4e1e-8c03-345bb8c30851
* Moved remaining portions of fixed function emulation out of core JOGLKenneth Russel2009-03-1966-475/+804
| | | | | | | | | | | | | | | | | | public and implementation packages and into com.sun.opengl.util.glsl.fixed.* and other subpackages of com.sun.opengl.util. Renamed javax.media.opengl.sub.GLObject to javax.media.opengl.GLBase. Moved interfaces in javax.media.opengl.sub.fixed to javax.media.opengl.fixedfunc and changed naming convention. Moved all classes in javax.media.opengl.util to com.sun.opengl.util. Moved com.sun.opengl.impl.packrect to com.sun.opengl.util.packrect. Renamed InternalBufferUtils to InternalBufferUtil to match naming convention and copied in needed routines for GLU and other classes. Fixed build breakage when specifying rootrel.build property; reintroduced build-temp directory. Updated demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1886 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed unnecessary importKenneth Russel2009-03-1912-12/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1885 232f8b59-042b-4e1e-8c03-345bb8c30851
* Movement of Capabilities class and chooseCapabilities functionalityKenneth Russel2009-03-1967-938/+1577
| | | | | | | | | | | | | | | | | | | | | | into NativeWindowFactory introduced an undesirable dependence between the windowing toolkit, which can be replaced via NativeWindowFactory, and the library which implements the selection algorithm, for example OpenGL. This would prevent, for example, an easy SWT port of JOGL. To fix this, refactored chooseCapabilities into new GraphicsConfigurationFactory, the default implementation of which is currently a no-op on X11 platforms, and which is provided by JOGL in a toolkit-agnostic manner via GLX. Refactored OpenGL portions of Capabilities class back into GLCapabilities. Reintroduced GLCapabilitiesChooser interface for compatibility and to avoid having to import javax.media.nativewindow classes in most user code. Fixed problem in GLProfile where failures to load native libraries were being squelched. Reorganized build to have all outputs under build/ directory. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1884 232f8b59-042b-4e1e-8c03-345bb8c30851
* Got rid of NW prefixes on classes in preparation for refactoringKenneth Russel2009-03-174-68/+0
| | | | | | | Capabilities class; deleted redundant NWException git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1883 232f8b59-042b-4e1e-8c03-345bb8c30851
* Finish (?) moving javax.media.nwi -> javax.media.nativewindowKenneth Russel2009-03-1761-110/+110
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1882 232f8b59-042b-4e1e-8c03-345bb8c30851
* Continue moving javax.media.nwi -> javax.media.nativewindowKenneth Russel2009-03-1730-86/+83
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1881 232f8b59-042b-4e1e-8c03-345bb8c30851
* Continue moving javax.media.nwi -> javax.media.nativewindowKenneth Russel2009-03-1729-0/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1880 232f8b59-042b-4e1e-8c03-345bb8c30851
* Start moving javax.media.nwi -> javax.media.nativewindowKenneth Russel2009-03-1736-0/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1879 232f8b59-042b-4e1e-8c03-345bb8c30851
* repairSven Gothel2009-03-163-19/+49
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1875 232f8b59-042b-4e1e-8c03-345bb8c30851
* repairSven Gothel2009-03-16291-0/+89158
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1872 232f8b59-042b-4e1e-8c03-345bb8c30851
* replairSven Gothel2009-03-161-0/+86
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1871 232f8b59-042b-4e1e-8c03-345bb8c30851
* repair svnSven Gothel2009-03-1631-0/+4732
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1869 232f8b59-042b-4e1e-8c03-345bb8c30851
* JOGL refactoring:Sven Gothel2009-03-16373-93906/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactored JOGL into 3 independent components. 1 NWI - Native windowing interface Abstracts the the general NativeWindow interface and it's factory, incl the basic JAWT and Xlib toolkit. The latter was motivated to clean up the JOGL workspace, and to allow other to reuse this part. The generic core is nwi.core.jar, the AWT add-on is nwi.awt.jar. 2 JOGL - The OpenGL mapping Further cleanup of the SPEC. All non OpenGL toolkits are relocated to NWI and NEWT. There is still openmax and the windows audio layer .. Another cleanup of the fixed function pipeline emulation. Moved utilities and implementations where they belong .. Removed GLUnsupportedException. Misc .. changes 3 NEWT - The new windowing toolkit The generic NEWT, newt.core.jar. The JOGL and AWT modules are seperate, newt.ogl.jar newt.awt.jar. Their build can be switched off. The modules source and builds resides in their own directory. Because of their nature, they share the stub_includes, etc. Each module has it's own ant build script - build-nwi.xml - build-jogl.xml - build-newt.xml They can be build at once using build.xml as ususal, which just invokes the seperate build tasks. if rootrel.build=build, then the build location is jogl/build-nwi jogl/build-jogl jogl/build-newt and the sources are under jogl/src/nwi jogl/src/jogl jogl/src/newt Tested: jogl-demos, d4; Linux, MacOsX; Nvidia git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1868 232f8b59-042b-4e1e-8c03-345bb8c30851
* NEWT window closing:Sven Gothel2009-03-1436-136/+614
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - New WindowEvent.EVENT_WINDOW_DESTROY_NOTIFY and WindowListener.windowDestroyNotify() method. - Removed windowClosed() method for JNI hook - Added windowDestroyNotify() windowDestroyed(), where windowDestroyNotify() shall be called by the native implementation _before_ the window gets shutdown. The Window.java then sends a WindowEvent.EVENT_WINDOW_DESTROY_NOTIFY event, and either Window.java or it's owner GLWindow.java issues the destroy() procedure. - Added GLEventListener.dispose(GLAutoDrawable), to allow user application to release GL ressources. Issued by GLWindow (-> see windowDestroyNotify()) - X11 impl intercepts WM_DELETE_WINDOW, using Atom, MacosX impl already uses the _before_ method (VERIFY), and Windows impl uses the WM_CLOSE event (VERIFY). JOGL2 dispose/destroy .. - Added GLEventListener.dispose() to GLCanvas and GLJpanel - GL* toString() rearrangement, assumes it is issued by GLContext(), which indeed is the core information node. - Added proper destroy() methods and calls, to achieve a proper resource release at destruction. Instrumentizing almost all classes with a destroy() method, so no release function lookup is necessary. - misc changes .. JOGL2 Demos - Fixed in regards to the above changes git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1867 232f8b59-042b-4e1e-8c03-345bb8c30851
* Worked around problem on Mac OS X where right mouse button down eventsKenneth Russel2009-03-131-1/+24
| | | | | | | were not being received by Newt window git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1866 232f8b59-042b-4e1e-8c03-345bb8c30851
* New package Native Window Interface 'java.media.nwi',Sven Gothel2009-03-1367-335/+393
| | | | | | | to loose JOGL dependencies for the moved interfaces, mainly NativeWindow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1863 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix NEWT X11 KeymappingSven Gothel2009-03-135-4/+245
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1862 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed problem with conversion of key code for enter key on Mac OS X;Kenneth Russel2009-03-081-0/+5
| | | | | | | similar problems may exist on other platforms git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1858 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Fixed rootrel.build usage, this works properly through gluegen, jogl-demos ↵Sven Gothel2009-03-0531-242/+1330
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and this build. You can say -Drootrel.build=build-x86_64 for example. - Fixed jogl-demos in regard to this changeset - Gluegen - Fixed gluegen BuildComposablePipeline's 'getGL*' methods. Now they return 'this', otherwise the pipeline would be broken/removed. - Add BuildComposablePipeline CustomPipeline, which allows customized class composition with an interface (to be wrapped), prolog class and the downstream class. - Add GlueGen (incl. ant task) 'outputRootDir' to be able to set a top output root dir via ant / commandline. - GL fixed function - Package 'javax.media.opengl.sub.fixed.*' defines some fixed function interfaces. This allows partitioning of custom implementation. - Using gluegen's new CustomPipeline to compose a GLFixedFuncIf implementation, using a GL downstream and a GLFixedFuncHookIf prolog. The latter implements the fixed functionality. Example is the GLFixedFuncImpl. gl.getContext().setGL( new GLFixedFuncImpl(gl, new FixedFuncHook(gl.getGL2ES2())) ) ; or gl.getContext().setGL( new GLFixedFuncImpl(gl, gl.getGL2ES1()) ) ; - The example GLFixedFuncHookIf impl FixedFuncPipeline/ can be instantiated with custom shader code. - ES2 and all other interfaces only contain the original functionality, besides minor convenient data access methods. - Fix: GL2ES2 createCompileShader() and createLoadShader() is moved to ShaderCode util class. - Updated PMVMatrix - Add: GLAutoDrawable.setContext() .. and all it's implementations Necessary to set a new GLContext. - Add: GLContext getAttachedObject(int) and putAttachedObject(int, Object), to allow the user to attach application specific and TLS sensitive objects to the GLContext. - git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1856 232f8b59-042b-4e1e-8c03-345bb8c30851
* increase double click intervalChristopher Oliver2009-01-151-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1848 232f8b59-042b-4e1e-8c03-345bb8c30851
* Changed how MacWindow computes the coordinates for mouse events sentKenneth Russel2009-01-151-1/+7
| | | | | | | | up to Java to improve the behavior where drag events are used to drag the window around; behavior is better but still not perfect git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1847 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed known bug in coordinates passed for WINDOW_MOVED events on MacKenneth Russel2009-01-142-38/+12
| | | | | | | | OS X. Fixed residual bug in handling of setPosition calls. Tested manually by moving around window of Angeles demo. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1846 232f8b59-042b-4e1e-8c03-345bb8c30851
* Turned off debugging printfsKenneth Russel2009-01-141-2/+7
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1845 232f8b59-042b-4e1e-8c03-345bb8c30851