aboutsummaryrefslogtreecommitdiffstats
path: root/src/classes/javax/media/opengl/awt
Commit message (Collapse)AuthorAgeFilesLines
* New package Native Window Interface 'java.media.nwi',Sven Gothel2009-03-132-33/+35
| | | | | | | 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
* - Fixed rootrel.build usage, this works properly through gluegen, jogl-demos ↵Sven Gothel2009-03-052-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* After more thought, realized once again that because most Java windowKenneth Russel2008-12-292-8/+0
| | | | | | | | | | | | | | | | | toolkits create persistent Java heap objects corresponding to components that might be realized and unrealized multiple times, the programming model of JOGL implies that GLDrawables must be persistent with regard to the components for which they are created, and that the setRealized(true/false) hook must be the indicator that any OpenGL resources associated with that window are to be created or destroyed. Removed GLDrawable.destroy(); it is now once again only present for GLPbuffer. Fixed up various on-screen and off-screen GLDrawable implementations. Refactored EGLDrawable implementation to trigger on setRealized(true/false); these changes have been compiled but not tested. Clarified documentation of GLDrawable.setRealized. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1828 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed lockSurface(), unlockSurface(), and isSurfaceLocked() fromKenneth Russel2008-12-212-21/+0
| | | | | | | | | GLDrawable interface because they are implementation details that should not be in the public API. Removed associated calls from GLCanvas, GLJPanel and Newt GLWindow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1826 232f8b59-042b-4e1e-8c03-345bb8c30851
* Factored out the remaining toolkit, and specifically AWT, dependenciesKenneth Russel2008-12-202-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from GLDrawableFactory implementations into NativeWindowFactory implementations. These dependencies were the up-front selection of the GraphicsConfiguration and the locking and unlocking of the toolkit, which are both currently needed only on X11 platforms due to how OpenGL and the window system interact there. Added X11GraphicsDevice and X11GraphicsConfiguration classes which are intended to be used by Newt or potentially other third-party window toolkits. Unified the separate NativeWindow and AWT GLDrawableFactory implementations in the GLDrawableFactory class. Exposed the toolkit locking mechanism through the NativeWindowFactory and introduced the concept of a default NativeWindowFactory which is used by the X11 drawable and context implementations. Removed unnecessary toolkit locking calls from Mac OS X and Windows drawable and context implementations. Added a registration mechanism for new NativeWindowFactories, allowing third parties to plug in new window toolkits orthogonally to the OpenGL drawable and context code. The public APIs for the NativeWindowFactory and the GLDrawableFactory, in particular how they are fetched, changed as a result of these refactorings. Updated all uses. Fixed bug in X11OffscreenGLXDrawable introduced during last set of changes. Tested demos on Solaris, Mac OS X and Windows. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1824 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed setSize(), setPosition(), setVisible(), and setFullscreen()Kenneth Russel2008-12-162-4/+9
| | | | | | | | | | | | from javax.media.opengl.NativeWindow interface as these are concerns of the window toolkit and not the OpenGL binding. Removed isVisible(), isFullscreen(), getX(), and getY(). getWidth() and getHeight() remain. Changed implementations of offscreen and pbuffer drawables and changed GLJPanel to destroy and re-create its offscreen GLDrawable upon resize rather than attempting to resize the GLDrawable directly. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1823 232f8b59-042b-4e1e-8c03-345bb8c30851
* Integrated work from several months ago to refactor GLJPanelKenneth Russel2008-12-161-735/+850
| | | | | | | | | implementation into multiple backends: software, pbuffer and Java2D / OpenGL bridge. This will make it easier for the community to add more backends if desired, for example an FBO backend. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1822 232f8b59-042b-4e1e-8c03-345bb8c30851
* Moved javax.media.opengl.awt.gl2.GL2JPanel (back) toKenneth Russel2008-12-161-39/+39
| | | | | | | | | javax.media.opengl.awt.GLJPanel because the expectation is that the AWT-based implementation will never need to run on only the ES1 or ES2 subset, and to conform to earlier releases' naming convention. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1820 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed breakage of GLJPanel caused by confusion between requested and Kenneth Russel2008-12-122-18/+0
| | | | | | | | | | | | | chosen GLCapabilities. Separated these out and refactored requested GLCapabilities into GLDrawableImpl superclass. Removed setChosenGLCapabilities from the public API and made it protected on GLDrawableImpl. Removed it from all public GLDrawable implementations such as GLCanvas and GLJPanel. Fixed bug in Gears demo where mouse listener was not being hooked up correctly. Tested so far on Windows; testing on other platforms to follow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1815 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed build.xml to build correct version of TextureIO classes on theKenneth Russel2008-11-211-0/+7
| | | | | | | | | | | desktop. Changed GLCanvas to set the GLProfile to GL2 by default since there are no plans to support the AWT components on anything except desktop profiles, where OpenGL ES is not present. This reduces the amount of changes that must be made to code using earlier versions of JOGL. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1796 232f8b59-042b-4e1e-8c03-345bb8c30851
* Further GL-Enum cleanup: FRAMEBUFFER, RENDERBUFFER, ..Sven Gothel2008-07-031-21/+21
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1704 232f8b59-042b-4e1e-8c03-345bb8c30851
* GL Unification 1st round.Sven Gothel2008-07-031-1/+1
| | | | | | | | | | | | | | | | | | Terminology: ARB Extensions: "GL2", "ARB", "OES", "OML" Vendor Extensions: "EXT", "NV", "ATI", "SGI", "SGIS", "SGIX", "HP", "IBM", "WIN" Pass-1 Unify ARB extensions with the same value Pass-2 Unify vendor extensions, if exist as an ARB extension with the same value. Pass-3 Emit TODO: - Break down GL.java enumerations: GL + GL2ES (for future GL3) - Same for function calls .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1703 232f8b59-042b-4e1e-8c03-345bb8c30851
* Refactored more C compiler setup into gluegen-cpptasks.xml to make itKenneth Russel2008-06-301-0/+3
| | | | | | | | | | | | | | | | | | | | | easier to build native sources via Ant. Provided new gluegen.cpptasks.setup.compiler target which sets up platform-independent compiler and linker IDs and other properties which can be used in other projects' build files. Refactored JOGL build to use some of these new properties and eliminate duplication; more code savings possible. Added new GLWindow class to Newt implementing GLAutoDrawable to increase code sharing, and supporting making OpenGL calls inside of EventListener callbacks. Moved repaint() method from GLAutoDrawable to AWTGLAutoDrawable. Added WindowEvent and WindowListener interfaces to Newt, currently implemented on Windows and AWT backends (X11 backend would need to support and watch for window resizes -- FIXME added). Refactored common functionality into Newt Event class. Renumbered event IDs to avoid collisions. Fixed potential problems with removing event listeners inside of EventListener callbacks. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1702 232f8b59-042b-4e1e-8c03-345bb8c30851
* 3rd round cdcfp - compile clean.Sven Gothel2008-06-282-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | Re-adding cdcfp: com/sun/opengl/impl/glu/mipmap/* com/sun/opengl/impl/GLPbufferImpl.java Using 'BufferUtil.nativeOrder(ByteBuffer)' to set up the native byte order. 'BufferUtil.nativeOrder' is now public. GLDrawableFactory: - removed 'hardcoded' awt attribute. Cleanup NEWT's AWT wrapping implementation. - NativeWindowFactory incooperates with the wrapping property. Bugs on X11/NEWT/AWT: - no events - deadlock at shutdown - deadlock if EGLDrawable with AWT get's locked git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1700 232f8b59-042b-4e1e-8c03-345bb8c30851
* merging awt,j2d,swing to awt subpackagesSven Gothel2008-06-261-0/+1318
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1691 232f8b59-042b-4e1e-8c03-345bb8c30851
* 2nd big refactoring.Sven Gothel2008-06-212-1275/+31
| | | | | | | | | | | | | | | | | | | | | | Goals are orthogonal components for: - OS Windowing system - NEWT, X11, Windows, MacOsX - GL Windowing GLUE - EGL, GLX, WGL, CGL - GL profiles - core and util packages - generate all Java components from any platform All above goals are achieved. TODO: - Native compilation fix and test - Check/Fix Win32, MacOSX and the mobile devices - .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1670 232f8b59-042b-4e1e-8c03-345bb8c30851
* Refactoring JOGL to partition core windowing, AWT, GL, ES1 and ES2 .. WIPSven Gothel2008-06-016-0/+2042
Compile Clean: X11, noAWT, ES1, no *.impl.x11/win/macosx See jogl/make/build.xml for new build properties. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1654 232f8b59-042b-4e1e-8c03-345bb8c30851