|
From: <eli...@us...> - 2006-09-08 08:29:47
|
Revision: 2569
http://svn.sourceforge.net/java-game-lib/?rev=2569&view=rev
Author: elias_naur
Date: 2006-09-08 01:29:16 -0700 (Fri, 08 Sep 2006)
Log Message:
-----------
Windows: Fixed NPE in Display.getVersion()
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2006-09-01 20:15:05 UTC (rev 2568)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2006-09-08 08:29:16 UTC (rev 2569)
@@ -250,9 +250,10 @@
String driver = getAdapter();
if (driver != null) {
WindowsFileVersion version = nGetVersion(driver + ".dll");
- return version.toString();
- } else
- return null;
+ if (version != null)
+ return version.toString();
+ }
+ return null;
}
private native WindowsFileVersion nGetVersion(String driver);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2006-11-24 15:10:17
|
Revision: 2680
http://svn.sourceforge.net/java-game-lib/?rev=2680&view=rev
Author: elias_naur
Date: 2006-11-24 07:10:15 -0800 (Fri, 24 Nov 2006)
Log Message:
-----------
Windows: Fix potential NPE
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2006-11-24 15:03:05 UTC (rev 2679)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2006-11-24 15:10:15 UTC (rev 2680)
@@ -300,7 +300,7 @@
* is maximized helps some gfx recover from fullscreen
*/
try {
- if (Display.getContext().isCurrent())
+ if (Display.getContext() != null && Display.getContext().isCurrent())
Display.getContext().makeCurrent();
} catch (LWJGLException e) {
LWJGLUtil.log("Exception occurred while trying to make context current: " + e);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-03-30 19:35:41
|
Revision: 2753
http://svn.sourceforge.net/java-game-lib/?rev=2753&view=rev
Author: elias_naur
Date: 2007-03-30 12:35:37 -0700 (Fri, 30 Mar 2007)
Log Message:
-----------
Windows: Correct testing of wParam when a WM_SYSCOMMAND is received
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-03-30 19:00:59 UTC (rev 2752)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-03-30 19:35:37 UTC (rev 2753)
@@ -565,7 +565,7 @@
close_requested = true;
return true;
case WM_SYSCOMMAND:
- switch ((int)wParam) {
+ switch ((int)(wParam & 0xfff0)) {
case SC_KEYMENU:
case SC_MOUSEMENU:
case SC_SCREENSAVE:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-04-24 14:13:43
|
Revision: 2803
http://svn.sourceforge.net/java-game-lib/?rev=2803&view=rev
Author: elias_naur
Date: 2007-04-24 07:13:42 -0700 (Tue, 24 Apr 2007)
Log Message:
-----------
Windows: Call default handler on key events
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-04-24 13:41:31 UTC (rev 2802)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-04-24 14:13:42 UTC (rev 2803)
@@ -687,7 +687,7 @@
case WM_KEYUP: /* Fall through */
case WM_KEYDOWN:
handleKeyButton(wParam, lParam, millis);
- return true;
+ return false;
case WM_QUIT:
close_requested = true;
return true;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-07-28 21:20:00
|
Revision: 2859
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2859&view=rev
Author: elias_naur
Date: 2007-07-28 14:19:58 -0700 (Sat, 28 Jul 2007)
Log Message:
-----------
Windows: Don't be too aggressive in clipping the cursor. Fixes a problem where the window is moved out of the screen when clicking the title bar while having the mouse grabbed
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-07-28 20:46:17 UTC (rev 2858)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-07-28 21:19:58 UTC (rev 2859)
@@ -220,6 +220,8 @@
setForegroundWindow(getHwnd());
setFocus(getHwnd());
did_maximize = true;
+ if (isFullscreen)
+ checkCursorClip();
} else if (isFullscreen) {
showWindow(getHwnd(), SW_SHOWMINNOACTIVE);
resetDisplayMode();
@@ -629,7 +631,7 @@
return false;
}
- private boolean doHandleMessage(long hwnd, int msg, long wParam, long lParam, long millis) {
+ private void checkCursorClip() {
if ((isFullscreen || (mouse != null && mouse.isGrabbed())) && !isMinimized && isFocused) {
try {
setupCursorClipping(getHwnd());
@@ -639,6 +641,14 @@
} else {
resetCursorClipping();
}
+ }
+
+ private void setMinimized(boolean m) {
+ isMinimized = m;
+ checkCursorClip();
+ }
+
+ private boolean doHandleMessage(long hwnd, int msg, long wParam, long lParam, long millis) {
switch (msg) {
// disable screen saver and monitor power down messages which wreak havoc
case WM_ACTIVATE:
@@ -656,10 +666,10 @@
switch ((int)wParam) {
case SIZE_RESTORED:
case SIZE_MAXIMIZED:
- isMinimized = false;
+ setMinimized(false);
break;
case SIZE_MINIMIZED:
- isMinimized = true;
+ setMinimized(true);
break;
}
return false;
@@ -667,6 +677,7 @@
int xPos = (int)(short)(lParam & 0xFFFF);
int yPos = transformY(getHwnd(), (int)(short)((lParam >> 16) & 0xFFFF));
handleMouseMoved(xPos, yPos, millis);
+ checkCursorClip();
return true;
case WM_MOUSEWHEEL:
int dwheel = (int)(short)((wParam >> 16) & 0xFFFF);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-08-12 23:33:26
|
Revision: 2871
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2871&view=rev
Author: elias_naur
Date: 2007-08-12 16:33:25 -0700 (Sun, 12 Aug 2007)
Log Message:
-----------
Windows: Fixed cursor clipping when loosing focus
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-05 21:31:57 UTC (rev 2870)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-12 23:33:25 UTC (rev 2871)
@@ -225,7 +225,8 @@
} else if (isFullscreen) {
showWindow(getHwnd(), SW_SHOWMINNOACTIVE);
resetDisplayMode();
- }
+ } else
+ checkCursorClip();
inAppActivate = false;
}
private static native void showWindow(long hwnd, int mode);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-08-16 08:38:21
|
Revision: 2873
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2873&view=rev
Author: elias_naur
Date: 2007-08-16 01:38:20 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
Windows: Make cursor visible when grabbed and not focused
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-15 20:14:29 UTC (rev 2872)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 08:38:20 UTC (rev 2873)
@@ -221,12 +221,13 @@
setFocus(getHwnd());
did_maximize = true;
if (isFullscreen)
- checkCursorClip();
+ updateClipping();
} else if (isFullscreen) {
showWindow(getHwnd(), SW_SHOWMINNOACTIVE);
resetDisplayMode();
} else
- checkCursorClip();
+ updateClipping();
+ updateCursor();
inAppActivate = false;
}
private static native void showWindow(long hwnd, int mode);
@@ -402,11 +403,7 @@
public void grabMouse(boolean grab) {
mouse.grab(grab, shouldGrab());
- try {
- updateCursor();
- } catch (LWJGLException e) {
- LWJGLUtil.log("Failed to update cursor: " + e);
- }
+ updateCursor();
}
public int getNativeCursorCapabilities() {
@@ -427,11 +424,15 @@
updateCursor();
}
- private void updateCursor() throws LWJGLException {
- if (mouse != null && mouse.isGrabbed())
- nSetNativeCursor(getHwnd(), mouse.getBlankCursor());
- else
- nSetNativeCursor(getHwnd(), current_cursor);
+ private void updateCursor() {
+ try {
+ if (mouse != null && shouldGrab())
+ nSetNativeCursor(getHwnd(), mouse.getBlankCursor());
+ else
+ nSetNativeCursor(getHwnd(), current_cursor);
+ } catch (LWJGLException e) {
+ LWJGLUtil.log("Failed to update cursor: " + e);
+ }
}
static native void nSetNativeCursor(long hwnd, Object handle) throws LWJGLException;
@@ -584,7 +585,7 @@
}
private boolean shouldGrab() {
- return !isMinimized && isFocused;
+ return !isMinimized && isFocused && mouse != null && mouse.isGrabbed();
}
private void handleMouseMoved(int x, int y, long millis) {
@@ -632,7 +633,12 @@
return false;
}
- private void checkCursorClip() {
+ private void checkCursorState() {
+ updateCursor();
+ updateClipping();
+ }
+
+ private void updateClipping() {
if ((isFullscreen || (mouse != null && mouse.isGrabbed())) && !isMinimized && isFocused) {
try {
setupCursorClipping(getHwnd());
@@ -646,7 +652,7 @@
private void setMinimized(boolean m) {
isMinimized = m;
- checkCursorClip();
+ checkCursorState();
}
private boolean doHandleMessage(long hwnd, int msg, long wParam, long lParam, long millis) {
@@ -678,7 +684,7 @@
int xPos = (int)(short)(lParam & 0xFFFF);
int yPos = transformY(getHwnd(), (int)(short)((lParam >> 16) & 0xFFFF));
handleMouseMoved(xPos, yPos, millis);
- checkCursorClip();
+ checkCursorState();
return true;
case WM_MOUSEWHEEL:
int dwheel = (int)(short)((wParam >> 16) & 0xFFFF);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-08-16 09:46:47
|
Revision: 2876
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2876&view=rev
Author: elias_naur
Date: 2007-08-16 02:46:45 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
Windows: Handle WM_SYSCHAR
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 08:55:06 UTC (rev 2875)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 09:46:45 UTC (rev 2876)
@@ -64,6 +64,7 @@
private final static int WM_KEYUP = 257;
private final static int WM_SYSKEYUP = 261;
private final static int WM_SYSKEYDOWN = 260;
+ private final static int WM_SYSCHAR = 262;
private final static int WM_CHAR = 258;
private final static int WM_QUIT = 0x0012;
@@ -708,6 +709,7 @@
case WM_MBUTTONUP:
handleMouseButton(2, 0, millis);
return true;
+ case WM_SYSCHAR:
case WM_CHAR:
handleChar(wParam, lParam, millis);
return true;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2007-08-16 20:29:06
|
Revision: 2877
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2877&view=rev
Author: matzon
Date: 2007-08-16 13:29:01 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
handle alt+space (windows system menu)
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 09:46:45 UTC (rev 2876)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 20:29:01 UTC (rev 2877)
@@ -715,6 +715,10 @@
return true;
case WM_SYSKEYDOWN: /* Fall through */
case WM_SYSKEYUP: /* Fall through */
+ // handle alt+space (activates the system window menu, just gobble it up)
+ if(wParam == WindowsKeycodes.VK_SPACE) {
+ return true;
+ }
case WM_KEYUP:
// SysRq apparently only generates WM_KEYUP, so we'll fake a WM_KEYDOWN
if (wParam == WindowsKeycodes.VK_SNAPSHOT && keyboard != null &&
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-08-17 06:13:06
|
Revision: 2878
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2878&view=rev
Author: elias_naur
Date: 2007-08-16 23:12:59 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
Reverted 2877
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-16 20:29:01 UTC (rev 2877)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-17 06:12:59 UTC (rev 2878)
@@ -715,10 +715,6 @@
return true;
case WM_SYSKEYDOWN: /* Fall through */
case WM_SYSKEYUP: /* Fall through */
- // handle alt+space (activates the system window menu, just gobble it up)
- if(wParam == WindowsKeycodes.VK_SPACE) {
- return true;
- }
case WM_KEYUP:
// SysRq apparently only generates WM_KEYUP, so we'll fake a WM_KEYDOWN
if (wParam == WindowsKeycodes.VK_SNAPSHOT && keyboard != null &&
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2007-08-17 06:14:41
|
Revision: 2879
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2879&view=rev
Author: elias_naur
Date: 2007-08-16 23:14:40 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
Windows: Don't do SYSRQ hackery on WM_SYSKEYDOWN
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-17 06:12:59 UTC (rev 2878)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2007-08-17 06:14:40 UTC (rev 2879)
@@ -713,8 +713,8 @@
case WM_CHAR:
handleChar(wParam, lParam, millis);
return true;
- case WM_SYSKEYDOWN: /* Fall through */
- case WM_SYSKEYUP: /* Fall through */
+ case WM_SYSKEYUP:
+ /* Fall through */
case WM_KEYUP:
// SysRq apparently only generates WM_KEYUP, so we'll fake a WM_KEYDOWN
if (wParam == WindowsKeycodes.VK_SNAPSHOT && keyboard != null &&
@@ -726,6 +726,8 @@
handleKeyButton(wParam, fake_lparam, millis);
}
/* Fall through */
+ case WM_SYSKEYDOWN:
+ /* Fall through */
case WM_KEYDOWN:
handleKeyButton(wParam, lParam, millis);
return false;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2008-04-07 15:33:37
|
Revision: 2978
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2978&view=rev
Author: elias_naur
Date: 2008-04-07 08:33:34 -0700 (Mon, 07 Apr 2008)
Log Message:
-----------
Windows: Improved focus handling when Display.getParent() != null
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-07 13:34:20 UTC (rev 2977)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-07 15:33:34 UTC (rev 2978)
@@ -236,13 +236,16 @@
return;
}
inAppActivate = true;
+ isFocused = active;
if (active) {
if (isFullscreen) {
restoreDisplayMode();
}
- showWindow(getHwnd(), SW_RESTORE);
- setForegroundWindow(getHwnd());
- setFocus(getHwnd());
+ if (parent == null) {
+ showWindow(getHwnd(), SW_RESTORE);
+ setForegroundWindow(getHwnd());
+ setFocus(getHwnd());
+ }
did_maximize = true;
if (isFullscreen)
updateClipping();
@@ -708,10 +711,10 @@
}
return defWindowProc(hwnd, msg, wParam, lParam);
case WM_KILLFOCUS:
- isFocused = false;
+ appActivate(false);
return 0;
case WM_SETFOCUS:
- isFocused = true;
+ appActivate(true);
return 0;
case WM_MOUSEMOVE:
int xPos = (int)(short)(lParam & 0xFFFF);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2008-04-08 11:22:00
|
Revision: 2995
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2995&view=rev
Author: elias_naur
Date: 2008-04-08 04:21:57 -0700 (Tue, 08 Apr 2008)
Log Message:
-----------
Windows: Use current Mouse.isGrabbed() when determining grab status
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-08 10:40:26 UTC (rev 2994)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-08 11:21:57 UTC (rev 2995)
@@ -47,6 +47,7 @@
import org.lwjgl.LWJGLUtil;
import org.lwjgl.BufferUtils;
import org.lwjgl.input.Cursor;
+import org.lwjgl.input.Mouse;
final class WindowsDisplay implements DisplayImplementation {
private final static int GAMMA_LENGTH = 256;
@@ -613,7 +614,7 @@
}
private boolean shouldGrab() {
- return !isMinimized && isFocused && mouse != null && mouse.isGrabbed();
+ return !isMinimized && isFocused && Mouse.isGrabbed();
}
private void handleMouseMoved(int x, int y, long millis) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2008-04-09 18:25:39
|
Revision: 2998
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2998&view=rev
Author: elias_naur
Date: 2008-04-09 11:25:30 -0700 (Wed, 09 Apr 2008)
Log Message:
-----------
Windows: When parented, take focus on mouse click
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-09 18:09:15 UTC (rev 2997)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-04-09 18:25:30 UTC (rev 2998)
@@ -611,6 +611,8 @@
private void handleMouseButton(int button, int state, long millis) {
if (mouse != null)
mouse.handleMouseButton((byte)button, (byte)state, millis);
+ if (parent != null && !isFocused)
+ setFocus(getHwnd());
}
private boolean shouldGrab() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <eli...@us...> - 2008-05-02 11:05:54
|
Revision: 3064
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3064&view=rev
Author: elias_naur
Date: 2008-05-02 04:05:49 -0700 (Fri, 02 May 2008)
Log Message:
-----------
Windows: Clean up window in case of exception thrown from WindowsDisplay.createWindow
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-05-01 09:55:54 UTC (rev 3063)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsDisplay.java 2008-05-02 11:05:49 UTC (rev 3064)
@@ -173,13 +173,18 @@
nDestroyWindow(hwnd, hdc);
throw new LWJGLException("Failed to get dc");
}
- peer_info.initDC(getHwnd(), getHdc());
- int format = WindowsPeerInfo.choosePixelFormat(getHdc(), 0, 0, peer_info.getPixelFormat(), null, true, true, false, true);
- WindowsPeerInfo.setPixelFormat(getHdc(), format);
- showWindow(getHwnd(), SW_SHOWDEFAULT);
- if (parent == null) {
- setForegroundWindow(getHwnd());
- setFocus(getHwnd());
+ try {
+ int format = WindowsPeerInfo.choosePixelFormat(getHdc(), 0, 0, peer_info.getPixelFormat(), null, true, true, false, true);
+ WindowsPeerInfo.setPixelFormat(getHdc(), format);
+ peer_info.initDC(getHwnd(), getHdc());
+ showWindow(getHwnd(), SW_SHOWDEFAULT);
+ if (parent == null) {
+ setForegroundWindow(getHwnd());
+ setFocus(getHwnd());
+ }
+ } catch (LWJGLException e) {
+ nDestroyWindow(hwnd, hdc);
+ throw e;
}
}
private native long nCreateWindow(DisplayMode mode, boolean fullscreen, int x, int y, boolean undecorated, boolean child_window, long parent_hwnd) throws LWJGLException;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|