public abstract class LwjglWindow extends LwjglContext implements java.lang.Runnable
JmeContext.Type
Modifier and Type | Field and Description |
---|---|
protected boolean |
allowSwapBuffers |
protected boolean |
autoFlush |
protected java.util.concurrent.atomic.AtomicBoolean |
needClose |
protected java.util.concurrent.atomic.AtomicBoolean |
needRestart |
protected boolean |
wasActive |
clContext, clPlatform, created, createdLock, joyInput, keyInput, listener, mouseInput, renderable, renderer, settings, THREAD_NAME, timer
Constructor and Description |
---|
LwjglWindow(JmeContext.Type type) |
Modifier and Type | Method and Description |
---|---|
void |
create(boolean waitFor)
Creates the context and makes it active.
|
protected void |
createContext(AppSettings settings)
Apply the settings, changing resolution, etc.
|
protected void |
deinitInThread()
De-initialize in the OpenGL thread.
|
void |
destroy(boolean waitFor)
Destroys the context completely, making it inactive.
|
protected void |
destroyContext()
Destroy the context.
|
JoyInput |
getJoyInput() |
KeyInput |
getKeyInput() |
MouseInput |
getMouseInput() |
TouchInput |
getTouchInput() |
JmeContext.Type |
getType() |
Vector2f |
getWindowContentScale(Vector2f store)
Get the window content scale, for HiDPI support.
|
long |
getWindowHandle() |
protected boolean |
initInThread()
Does LWJGL display initialization in the OpenGL thread
|
void |
restart()
Restart if it's a windowed or full-screen display.
|
void |
run() |
protected void |
runLoop()
execute one iteration of the render loop in the OpenGL thread
|
void |
setAutoFlushFrames(boolean enabled) |
void |
setTitle(java.lang.String title)
Set the title if it's a windowed display
|
protected void |
setWindowIcon(AppSettings settings)
Set custom icons to the window of this application.
|
protected void |
showWindow() |
create, createContextAttribs, destroy, determineMaxSamples, getGLVersion, getNumSamplesToUse, getOpenCLContext, getRenderer, getSettings, getTimer, initContextFirstTime, initOpenCL, internalCreate, internalDestroy, isCreated, isRenderable, loadNatives, printContextInitInfo, reinitContext, setSettings, setSystemListener, waitFor
protected final java.util.concurrent.atomic.AtomicBoolean needClose
protected final java.util.concurrent.atomic.AtomicBoolean needRestart
protected boolean wasActive
protected boolean autoFlush
protected boolean allowSwapBuffers
public LwjglWindow(JmeContext.Type type)
public JmeContext.Type getType()
getType
in interface JmeContext
public void setTitle(java.lang.String title)
setTitle
in interface JmeContext
title
- the title to setpublic void restart()
restart
in interface JmeContext
protected void createContext(AppSettings settings)
settings
- the settings to apply when creating the context.protected void showWindow()
protected void setWindowIcon(AppSettings settings)
settings
- settings for getting the iconsprotected void destroyContext()
public void create(boolean waitFor)
JmeContext
create
in interface JmeContext
waitFor
- If true, will wait until context has initialized.protected boolean initInThread()
true
if the context initialization was successfulprotected void runLoop()
protected void deinitInThread()
public void run()
run
in interface java.lang.Runnable
public JoyInput getJoyInput()
getJoyInput
in interface JmeContext
public MouseInput getMouseInput()
getMouseInput
in interface JmeContext
public KeyInput getKeyInput()
getKeyInput
in interface JmeContext
public TouchInput getTouchInput()
getTouchInput
in interface JmeContext
public void setAutoFlushFrames(boolean enabled)
setAutoFlushFrames
in interface JmeContext
enabled
- If enabled, the context will automatically flush
frames to the video card (swap buffers) after an update cycle.public void destroy(boolean waitFor)
JmeContext
destroy
in interface JmeContext
waitFor
- If true, will wait until the context is destroyed fully.public long getWindowHandle()
public Vector2f getWindowContentScale(Vector2f store)
store
- A vector2f to store the result