diff options
author | Sven Gothel <[email protected]> | 2010-12-10 05:24:32 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2010-12-10 05:24:32 +0100 |
commit | 0a6a592c04a85d8124aa9d38b67f0caa1d739b75 (patch) | |
tree | 73f40c3dae6b1c25e8afc8f84259fa52de4dfa1e /src/nativewindow/classes/javax/media | |
parent | 7753e1c5a50700771b1e0be4bc99c2585398e3ce (diff) |
Cleanup GLGraphicsConfiguration[Factory] implementations (X11/WGL)
- AWT/WGL:
- Using sun.awt.Win32GraphicsConfig via reflection, if supported, else we may fail.
- Preselection of PFD as follows:
- 1st choice is to create our own AWT GraphicsConfig (GC) based on PFD/GLCaps,
ignoring WGL_SUPPORT_GDI_ARB, PFD_SUPPORT_GDI
- 2nd choice is to use AWT PFD pool of GC's
- else we fail -> use NewtCanvasAWT instead (TODO: Other JDK/AWT implementations ?)
- Set PFD will be performed at setRealized(..)
- SharedContext (X11/WGL) is synchronized to allow multithreaded access, if required
- Simplified and unified (X11/WGL) GraphicsConfigurationFactory
- WGL 'external' drawables will be determined with given arguments right away
Diffstat (limited to 'src/nativewindow/classes/javax/media')
-rw-r--r-- | src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java b/src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java index c061f597f..ba047c1f6 100644 --- a/src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java +++ b/src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java @@ -33,10 +33,13 @@ package javax.media.nativewindow; -import java.util.*; +import com.jogamp.common.util.ReflectionUtil; +import com.jogamp.nativewindow.impl.Debug; +import com.jogamp.nativewindow.impl.DefaultGraphicsConfigurationFactoryImpl; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; -import com.jogamp.common.util.*; -import com.jogamp.nativewindow.impl.*; /** * Provides the mechanism by which the graphics configuration for a @@ -88,7 +91,7 @@ public abstract class GraphicsConfigurationFactory { // AWTGraphicsDevice instances -- the OpenGL binding will take // care of handling AWTGraphicsDevices on X11 platforms (as // well as X11GraphicsDevices in non-AWT situations) - registerFactory(abstractGraphicsDeviceClass, new GraphicsConfigurationFactoryImpl()); + registerFactory(abstractGraphicsDeviceClass, new DefaultGraphicsConfigurationFactoryImpl()); } /** Returns the factory for use with the given type of @@ -232,4 +235,5 @@ public abstract class GraphicsConfigurationFactory { chooseGraphicsConfigurationImpl(CapabilitiesImmutable capsChosen, CapabilitiesImmutable capsRequested, CapabilitiesChooser chooser, AbstractGraphicsScreen screen) throws IllegalArgumentException, NativeWindowException; + } |