Fixed AWT dependency.
This commit is contained in:
parent
debea3b6b7
commit
a8fcd3edde
|
@ -385,15 +385,13 @@
|
|||
</javah>
|
||||
<javah classpath="${lwjgl.bin}" destdir="${lwjgl.src.native}/win32" force="yes">
|
||||
<class name="org.lwjgl.opengl.Win32Display" />
|
||||
<class name="org.lwjgl.Win32SysImplementation" />
|
||||
<class name="org.lwjgl.NativeSysImplementation" />
|
||||
</javah>
|
||||
<javah classpath="${lwjgl.bin}" destdir="${lwjgl.src.native}/macosx" force="yes">
|
||||
<class name="org.lwjgl.opengl.MacOSXDisplay" />
|
||||
</javah>
|
||||
<!-- lwjgl -->
|
||||
<javah classpath="${lwjgl.bin}" destdir="${lwjgl.src.headers}" force="yes">
|
||||
<class name="org.lwjgl.DefaultSysImplementation" />
|
||||
|
||||
<class name="org.lwjgl.input.Cursor" />
|
||||
<class name="org.lwjgl.input.Keyboard" />
|
||||
<class name="org.lwjgl.input.Mouse" />
|
||||
|
|
|
@ -31,9 +31,6 @@
|
|||
*/
|
||||
package org.lwjgl;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.UIManager;
|
||||
|
||||
/**
|
||||
* $Id$
|
||||
|
@ -49,28 +46,7 @@ abstract class DefaultSysImplementation implements SysImplementation {
|
|||
return 1000;
|
||||
}
|
||||
|
||||
public long getTime() {
|
||||
return System.currentTimeMillis();
|
||||
}
|
||||
|
||||
public void alert(String title, String message) {
|
||||
try {
|
||||
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
|
||||
} catch(Exception e) {
|
||||
}
|
||||
JOptionPane.showMessageDialog(null, message, title, JOptionPane.WARNING_MESSAGE);
|
||||
}
|
||||
|
||||
public String getClipboard() {
|
||||
try {
|
||||
java.awt.datatransfer.Clipboard clipboard = java.awt.Toolkit.getDefaultToolkit().getSystemClipboard();
|
||||
java.awt.datatransfer.Transferable transferable = clipboard.getContents(null);
|
||||
if (transferable.isDataFlavorSupported(java.awt.datatransfer.DataFlavor.stringFlavor)) {
|
||||
return (String)transferable.getTransferData(java.awt.datatransfer.DataFlavor.stringFlavor);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Sys.log("Exception while getting clipboard: " + e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
public abstract long getTime();
|
||||
public abstract void alert(String title, String message);
|
||||
public abstract String getClipboard();
|
||||
}
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2004 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl;
|
||||
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.UIManager;
|
||||
|
||||
/**
|
||||
* $Id$
|
||||
* A SysImplementation which delegates as much as it can to J2SE.
|
||||
* <p>
|
||||
* @author $Author$
|
||||
* @version $Revision$
|
||||
*/
|
||||
abstract class J2SESysImplementation extends DefaultSysImplementation {
|
||||
|
||||
public long getTime() {
|
||||
return System.currentTimeMillis();
|
||||
}
|
||||
|
||||
public void alert(String title, String message) {
|
||||
try {
|
||||
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
|
||||
} catch(Exception e) {
|
||||
}
|
||||
JOptionPane.showMessageDialog(null, message, title, JOptionPane.WARNING_MESSAGE);
|
||||
}
|
||||
|
||||
public String getClipboard() {
|
||||
try {
|
||||
java.awt.datatransfer.Clipboard clipboard = java.awt.Toolkit.getDefaultToolkit().getSystemClipboard();
|
||||
java.awt.datatransfer.Transferable transferable = clipboard.getContents(null);
|
||||
if (transferable.isDataFlavorSupported(java.awt.datatransfer.DataFlavor.stringFlavor)) {
|
||||
return (String)transferable.getTransferData(java.awt.datatransfer.DataFlavor.stringFlavor);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Sys.log("Exception while getting clipboard: " + e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -34,19 +34,44 @@ package org.lwjgl;
|
|||
/**
|
||||
* $Id$
|
||||
* <p>
|
||||
* This exception is supplied to make exception handling more generic
|
||||
* for LWJGL specific exceptions
|
||||
* This exception is supplied to make exception handling more generic for LWJGL
|
||||
* specific exceptions
|
||||
* </p>
|
||||
*
|
||||
* @author Brian Matzon <brian@matzon.dk>
|
||||
* @version $Revision$
|
||||
*/
|
||||
public class LWJGLException extends Exception {
|
||||
|
||||
/**
|
||||
* Creates a new LWJGLException
|
||||
* @param msg String identifier for exception
|
||||
*/
|
||||
/**
|
||||
* Plain c'tor
|
||||
*/
|
||||
public LWJGLException() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new LWJGLException
|
||||
*
|
||||
* @param msg
|
||||
* String identifier for exception
|
||||
*/
|
||||
public LWJGLException(String msg) {
|
||||
super(msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param message
|
||||
* @param cause
|
||||
*/
|
||||
public LWJGLException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param cause
|
||||
*/
|
||||
public LWJGLException(Throwable cause) {
|
||||
super(cause);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,9 +31,6 @@
|
|||
*/
|
||||
package org.lwjgl;
|
||||
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.UIManager;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
|
@ -42,7 +39,7 @@ import java.io.IOException;
|
|||
* @author elias_naur <elias_naur@users.sourceforge.net>
|
||||
* @version $Revision$
|
||||
*/
|
||||
class LinuxSysImplementation extends DefaultSysImplementation {
|
||||
class LinuxSysImplementation extends J2SESysImplementation {
|
||||
public boolean openURL(String url) {
|
||||
// Linux may as well resort to pure Java hackery, as there's no Linux native way of doing it
|
||||
// right anyway.
|
||||
|
|
|
@ -32,8 +32,6 @@
|
|||
package org.lwjgl;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.UIManager;
|
||||
|
||||
/**
|
||||
* $Id$
|
||||
|
@ -41,7 +39,7 @@ import javax.swing.UIManager;
|
|||
* @author elias_naur <elias_naur@users.sourceforge.net>
|
||||
* @version $Revision$
|
||||
*/
|
||||
class MacOSXSysImplementation extends DefaultSysImplementation {
|
||||
class MacOSXSysImplementation extends J2SESysImplementation {
|
||||
public boolean openURL(String url) {
|
||||
try {
|
||||
Class com_apple_eio_FileManager = Class.forName("com.apple.eio.FileManager");
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2004 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl;
|
||||
|
||||
/**
|
||||
* $Id$
|
||||
* A SysImplementation that uses native calls only.
|
||||
* <p>
|
||||
* @author $Author$
|
||||
* @version $Revision$
|
||||
*/
|
||||
class NativeSysImplementation extends DefaultSysImplementation {
|
||||
public native long getTimerResolution();
|
||||
|
||||
public native long getTime();
|
||||
|
||||
public native void alert(String title, String message);
|
||||
|
||||
public native boolean openURL(String url);
|
||||
|
||||
public native String getClipboard();
|
||||
}
|
|
@ -36,7 +36,6 @@ import java.net.MalformedURLException;
|
|||
import java.net.URL;
|
||||
|
||||
import org.lwjgl.input.Mouse;
|
||||
import org.lwjgl.opengl.Display;
|
||||
|
||||
/**
|
||||
* $Id$
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2004 LWJGL Project
|
||||
* Copyright (c) 2003 Shaven Puppy Ltd
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -13,9 +13,9 @@
|
|||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
* * Neither the name of 'Shaven Puppy' nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
|
@ -33,18 +33,11 @@ package org.lwjgl;
|
|||
|
||||
/**
|
||||
* $Id$
|
||||
*
|
||||
* @author elias_naur <elias_naur@users.sourceforge.net>
|
||||
* Win32 SysImplementation. This is just a straightforward NativsSysImplementation.
|
||||
* <p>
|
||||
* @author $Author$
|
||||
* @version $Revision$
|
||||
*/
|
||||
class Win32SysImplementation extends DefaultSysImplementation {
|
||||
public native long getTimerResolution();
|
||||
public class Win32SysImplementation extends NativeSysImplementation {
|
||||
|
||||
public native long getTime();
|
||||
|
||||
public native void alert(String title, String message);
|
||||
|
||||
public native boolean openURL(String url);
|
||||
|
||||
public native String getClipboard();
|
||||
}
|
||||
|
|
|
@ -41,11 +41,10 @@ package org.lwjgl.opengl;
|
|||
import java.nio.ByteBuffer;
|
||||
import java.nio.FloatBuffer;
|
||||
import java.nio.IntBuffer;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.lwjgl.input.Keyboard;
|
||||
import org.lwjgl.BufferUtils;
|
||||
import org.lwjgl.LWJGLException;
|
||||
import org.lwjgl.input.Keyboard;
|
||||
|
||||
final class LinuxDisplay implements DisplayImplementation {
|
||||
private static final int CURSOR_HANDLE_SIZE = 8;
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
|
||||
#include "Window.h"
|
||||
#include "org_lwjgl_Sys.h"
|
||||
#include "org_lwjgl_Win32SysImplementation.h"
|
||||
#include "org_lwjgl_NativeSysImplementation.h"
|
||||
#include "common_tools.h"
|
||||
#include <malloc.h>
|
||||
|
||||
|
@ -53,7 +53,7 @@ unsigned __int64 hires_timer = 0; // Hires timer current time
|
|||
* Method: getTimerResolution
|
||||
* Signature: ()J
|
||||
*/
|
||||
JNIEXPORT jlong JNICALL Java_org_lwjgl_Win32SysImplementation_getTimerResolution
|
||||
JNIEXPORT jlong JNICALL Java_org_lwjgl_NativeSysImplementation_getTimerResolution
|
||||
(JNIEnv * env, jobject ignored)
|
||||
{
|
||||
QueryPerformanceFrequency((LARGE_INTEGER*) &hires_timer_freq);
|
||||
|
@ -65,7 +65,7 @@ JNIEXPORT jlong JNICALL Java_org_lwjgl_Win32SysImplementation_getTimerResolution
|
|||
* Method: ngetTime
|
||||
* Signature: ()J
|
||||
*/
|
||||
JNIEXPORT jlong JNICALL Java_org_lwjgl_Win32SysImplementation_getTime
|
||||
JNIEXPORT jlong JNICALL Java_org_lwjgl_NativeSysImplementation_getTime
|
||||
(JNIEnv * env, jobject ignored)
|
||||
{
|
||||
QueryPerformanceCounter((LARGE_INTEGER*) &hires_timer);
|
||||
|
@ -77,7 +77,7 @@ JNIEXPORT jlong JNICALL Java_org_lwjgl_Win32SysImplementation_getTime
|
|||
* Method: alert
|
||||
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
|
||||
*/
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_Win32SysImplementation_alert
|
||||
JNIEXPORT void JNICALL Java_org_lwjgl_NativeSysImplementation_alert
|
||||
(JNIEnv * env, jobject ignored, jstring title, jstring message)
|
||||
{
|
||||
char * eMessageText = GetStringNativeChars(env, message);
|
||||
|
@ -95,7 +95,7 @@ JNIEXPORT void JNICALL Java_org_lwjgl_Win32SysImplementation_alert
|
|||
* Method: openURL
|
||||
* Signature: (Ljava/lang/String;)V
|
||||
*/
|
||||
JNIEXPORT jboolean JNICALL Java_org_lwjgl_Win32SysImplementation_openURL
|
||||
JNIEXPORT jboolean JNICALL Java_org_lwjgl_NativeSysImplementation_openURL
|
||||
(JNIEnv * env, jobject ignored, jstring url)
|
||||
{
|
||||
STARTUPINFO si;
|
||||
|
@ -163,7 +163,7 @@ const void * getClipboard(int type)
|
|||
|
||||
}
|
||||
|
||||
JNIEXPORT jstring JNICALL Java_org_lwjgl_Win32SysImplementation_getClipboard
|
||||
JNIEXPORT jstring JNICALL Java_org_lwjgl_NativeSysImplementation_getClipboard
|
||||
(JNIEnv * env, jobject ignored)
|
||||
{
|
||||
// Check to see if there's text available in the clipboard
|
||||
|
|
Loading…
Reference in New Issue