aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/net/java/games/jogl/GLJPanel.java19
-rw-r--r--src/net/java/games/jogl/impl/GLPbufferImpl.java19
2 files changed, 38 insertions, 0 deletions
diff --git a/src/net/java/games/jogl/GLJPanel.java b/src/net/java/games/jogl/GLJPanel.java
index b887d01c1..3ac5c984c 100644
--- a/src/net/java/games/jogl/GLJPanel.java
+++ b/src/net/java/games/jogl/GLJPanel.java
@@ -182,6 +182,18 @@ public final class GLJPanel extends JPanel implements GLDrawable {
return false;
}
+ public void setAutoSwapBufferMode(boolean onOrOff) {
+ context.setAutoSwapBufferMode(onOrOff);
+ }
+
+ public boolean getAutoSwapBufferMode() {
+ return context.getAutoSwapBufferMode();
+ }
+
+ public void swapBuffers() {
+ context.invokeGL(swapBuffersAction, false, initAction);
+ }
+
public boolean canCreateOffscreenDrawable() {
// For now let's say no; maybe we can reimplement this class in
// terms of pbuffers (though not all vendors support them, and
@@ -304,4 +316,11 @@ public final class GLJPanel extends JPanel implements GLDrawable {
}
}
private DisplayAction displayAction = new DisplayAction();
+
+ class SwapBuffersAction implements Runnable {
+ public void run() {
+ context.swapBuffers();
+ }
+ }
+ private SwapBuffersAction swapBuffersAction = new SwapBuffersAction();
}
diff --git a/src/net/java/games/jogl/impl/GLPbufferImpl.java b/src/net/java/games/jogl/impl/GLPbufferImpl.java
index 2e5f5589f..2fb927c92 100644
--- a/src/net/java/games/jogl/impl/GLPbufferImpl.java
+++ b/src/net/java/games/jogl/impl/GLPbufferImpl.java
@@ -126,6 +126,18 @@ public class GLPbufferImpl implements GLPbuffer {
return false;
}
+ public void setAutoSwapBufferMode(boolean onOrOff) {
+ context.setAutoSwapBufferMode(onOrOff);
+ }
+
+ public boolean getAutoSwapBufferMode() {
+ return context.getAutoSwapBufferMode();
+ }
+
+ public void swapBuffers() {
+ context.invokeGL(swapBuffersAction, false, initAction);
+ }
+
public boolean canCreateOffscreenDrawable() {
return false;
}
@@ -202,4 +214,11 @@ public class GLPbufferImpl implements GLPbuffer {
}
}
private DisplayAction displayAction = new DisplayAction();
+
+ class SwapBuffersAction implements Runnable {
+ public void run() {
+ context.swapBuffers();
+ }
+ }
+ private SwapBuffersAction swapBuffersAction = new SwapBuffersAction();
}