public class LwjglCanvas extends java.lang.Object implements Application
stop()
or a Swing application may deadlock on System.exit due to how LWJGL and/or Swing deal with shutdown hooks.Application.ApplicationType
LOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_NONE
Constructor and Description |
---|
LwjglCanvas(ApplicationListener listener,
boolean useGL2) |
LwjglCanvas(ApplicationListener listener,
LwjglApplicationConfiguration config) |
Modifier and Type | Method and Description |
---|---|
void |
addLifecycleListener(LifecycleListener listener)
Adds a new
LifecycleListener to the application. |
void |
debug(java.lang.String tag,
java.lang.String message)
Logs a debug message to the console or logcat
|
void |
debug(java.lang.String tag,
java.lang.String message,
java.lang.Throwable exception)
Logs a debug message to the console or logcat
|
void |
error(java.lang.String tag,
java.lang.String message)
Logs an error message to the console or logcat
|
void |
error(java.lang.String tag,
java.lang.String message,
java.lang.Throwable exception)
Logs an error message to the console or logcat
|
protected void |
exception(java.lang.Throwable ex) |
boolean |
executeRunnables() |
void |
exit()
Schedule an exit from the application.
|
ApplicationListener |
getApplicationListener() |
Audio |
getAudio() |
java.awt.Canvas |
getCanvas() |
Clipboard |
getClipboard() |
Files |
getFiles() |
protected int |
getFrameRate() |
Graphics |
getGraphics() |
Input |
getInput() |
long |
getJavaHeap() |
int |
getLogLevel()
Gets the log level.
|
long |
getNativeHeap() |
Net |
getNet() |
Preferences |
getPreferences(java.lang.String name)
Returns the
Preferences instance of this Application. |
Application.ApplicationType |
getType() |
int |
getVersion() |
void |
log(java.lang.String tag,
java.lang.String message)
Logs a message to the console or logcat
|
void |
log(java.lang.String tag,
java.lang.String message,
java.lang.Throwable exception)
Logs a message to the console or logcat
|
void |
postRunnable(java.lang.Runnable runnable)
Posts a
Runnable on the main loop thread. |
void |
removeLifecycleListener(LifecycleListener listener)
Removes the
LifecycleListener . |
protected void |
resize(int width,
int height)
Called when the canvas size changes.
|
void |
setCursor(java.awt.Cursor cursor) |
protected void |
setDisplayMode(int width,
int height) |
void |
setLogLevel(int logLevel)
Sets the log level.
|
protected void |
setTitle(java.lang.String title) |
protected void |
start()
Called after
ApplicationListener create and resize, but before the game loop iteration. |
void |
stop() |
protected void |
stopped()
Called when the game loop has stopped.
|
public LwjglCanvas(ApplicationListener listener, boolean useGL2)
public LwjglCanvas(ApplicationListener listener, LwjglApplicationConfiguration config)
protected void setDisplayMode(int width, int height)
protected void setTitle(java.lang.String title)
public ApplicationListener getApplicationListener()
getApplicationListener
in interface Application
ApplicationListener
instancepublic java.awt.Canvas getCanvas()
public Audio getAudio()
getAudio
in interface Application
Audio
instancepublic Files getFiles()
getFiles
in interface Application
Files
instancepublic Graphics getGraphics()
getGraphics
in interface Application
Graphics
instancepublic Input getInput()
getInput
in interface Application
Input
instancepublic Net getNet()
getNet
in interface Application
Net
instancepublic Application.ApplicationType getType()
getType
in interface Application
Application.ApplicationType
this application has, e.g. Android or Desktoppublic int getVersion()
getVersion
in interface Application
public boolean executeRunnables()
protected int getFrameRate()
protected void exception(java.lang.Throwable ex)
protected void start()
ApplicationListener
create and resize, but before the game loop iteration.protected void resize(int width, int height)
protected void stopped()
public void stop()
public long getJavaHeap()
getJavaHeap
in interface Application
public long getNativeHeap()
getNativeHeap
in interface Application
public Preferences getPreferences(java.lang.String name)
Application
Preferences
instance of this Application. It can be used to store application settings across runs.getPreferences
in interface Application
name
- the name of the preferences, must be useable as a file name.public Clipboard getClipboard()
getClipboard
in interface Application
public void postRunnable(java.lang.Runnable runnable)
Application
Runnable
on the main loop thread.postRunnable
in interface Application
runnable
- the runnable.public void debug(java.lang.String tag, java.lang.String message)
Application
debug
in interface Application
public void debug(java.lang.String tag, java.lang.String message, java.lang.Throwable exception)
Application
debug
in interface Application
public void log(java.lang.String tag, java.lang.String message)
Application
log
in interface Application
public void log(java.lang.String tag, java.lang.String message, java.lang.Throwable exception)
Application
log
in interface Application
public void error(java.lang.String tag, java.lang.String message)
Application
error
in interface Application
public void error(java.lang.String tag, java.lang.String message, java.lang.Throwable exception)
Application
error
in interface Application
public void setLogLevel(int logLevel)
Application
Application.LOG_NONE
will mute all log output. Application.LOG_ERROR
will only let error messages through.
Application.LOG_INFO
will let all non-debug messages through, and Application.LOG_DEBUG
will let all messages through.setLogLevel
in interface Application
logLevel
- Application.LOG_NONE
, Application.LOG_ERROR
, Application.LOG_INFO
, Application.LOG_DEBUG
.public int getLogLevel()
Application
getLogLevel
in interface Application
public void exit()
Application
exit
in interface Application
public void setCursor(java.awt.Cursor cursor)
cursor
- May be null.public void addLifecycleListener(LifecycleListener listener)
Application
LifecycleListener
to the application. This can be
used by extensions to hook into the lifecycle more easily. The
ApplicationListener
methods are sufficient for application
level development.addLifecycleListener
in interface Application
public void removeLifecycleListener(LifecycleListener listener)
Application
LifecycleListener
.removeLifecycleListener
in interface Application