aboutsummaryrefslogtreecommitdiffstats
path: root/src/newt/classes/jogamp
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2011-09-30 17:07:33 +0200
committerSven Gothel <[email protected]>2011-09-30 17:07:33 +0200
commit71fb7c1271cc1dbbcacdaf6da093055ec61835d3 (patch)
tree8652e5eb706c0b287b6f073fbda46c7517400204 /src/newt/classes/jogamp
parentfeac236a9ec62a5a51053e06ad08ba9847c1b540 (diff)
Android: Use standard launch mode; Add default actions to NewtBaseActivity; Add RedSquare ES1 + ES2
Diffstat (limited to 'src/newt/classes/jogamp')
-rw-r--r--src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java28
-rw-r--r--src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java49
2 files changed, 26 insertions, 51 deletions
diff --git a/src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java b/src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java
index 358fcc994..9a2a0ea2c 100644
--- a/src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java
+++ b/src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java
@@ -31,15 +31,18 @@ import javax.media.opengl.GLProfile;
import com.jogamp.newt.Window;
import com.jogamp.newt.opengl.GLWindow;
+import com.jogamp.opengl.util.Animator;
import jogamp.newt.driver.android.AndroidWindow;
import android.app.Activity;
-import android.content.Context;
import android.os.Bundle;
import android.util.Log;
public class NewtBaseActivity extends Activity {
+ AndroidWindow window = null;
+ Animator animator = null;
+
boolean isInvokedByExternalActivity = false;
Activity extActivity = this;
@@ -56,16 +59,21 @@ public class NewtBaseActivity extends Activity {
window = ((GLWindow)window).getWindow();
}
if(window instanceof AndroidWindow) {
+ this.window = (AndroidWindow)window;
if(isInvokedByExternalActivity) {
- extActivity.setContentView(((AndroidWindow)window).getView());
+ extActivity.setContentView(this.window.getView());
} else {
- super.setContentView(((AndroidWindow)window).getView());
+ super.setContentView(this.window.getView());
}
} else {
throw new IllegalArgumentException("Given NEWT Window is not an Android Window: "+window.getClass());
}
}
+ public void setAnimator(Animator animator) {
+ this.animator = animator;
+ }
+
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d(MD.TAG, "onCreate");
@@ -103,11 +111,17 @@ public class NewtBaseActivity extends Activity {
if(!isInvokedByExternalActivity) {
super.onResume();
}
+ if(null != animator) {
+ animator.start();
+ }
}
@Override
public void onPause() {
Log.d(MD.TAG, "onPause");
+ if(null != animator) {
+ animator.pause();
+ }
if(!isInvokedByExternalActivity) {
super.onPause();
}
@@ -124,6 +138,14 @@ public class NewtBaseActivity extends Activity {
@Override
public void onDestroy() {
Log.d(MD.TAG, "onDestroy");
+ if(null != animator) {
+ animator.stop();
+ animator = null;
+ }
+ if(null != window) {
+ window.destroy();
+ window = null;
+ }
if(!isInvokedByExternalActivity) {
super.onDestroy();
}
diff --git a/src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java b/src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java
index 5842a285d..d37901793 100644
--- a/src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java
+++ b/src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java
@@ -30,17 +30,13 @@ package jogamp.newt.driver.android;
import com.jogamp.common.GlueGenVersion;
import com.jogamp.common.os.Platform;
import com.jogamp.common.util.VersionUtil;
-import com.jogamp.newt.opengl.GLWindow;
import com.jogamp.opengl.JoglVersion;
-import com.jogamp.opengl.util.Animator;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
public class NewtVersionActivity extends NewtBaseActivity {
- GLWindow glWindow = null;
- Animator animator = null;
TextView tv = null;
@Override
@@ -57,50 +53,7 @@ public class NewtVersionActivity extends NewtBaseActivity {
tv = new TextView(this);
tv.setText(VersionUtil.getPlatformInfo()+Platform.NEWLINE+GlueGenVersion.getInstance()+Platform.NEWLINE+JoglVersion.getInstance()+Platform.NEWLINE);
setContentView(tv);
- /**
- // create GLWindow (-> incl. underlying NEWT Display, Screen & Window)
- GLCapabilities caps = new GLCapabilities(GLProfile.get(GLProfile.GLES1));
- glWindow = GLWindow.create(caps);
- setContentView(glWindow);
-
- glWindow.addGLEventListener(new GearsES1(1));
- glWindow.getWindow().getScreen().addScreenModeListener(new ScreenModeListener() {
- public void screenModeChangeNotify(ScreenMode sm) { }
- public void screenModeChanged(ScreenMode sm, boolean success) {
- System.err.println("ScreenMode Changed: "+sm);
- }
- });
- glWindow.setVisible(true);
- animator = new Animator(glWindow);
- animator.setUpdateFPSFrames(60, System.err); */
-
- Log.d(MD.TAG, "onCreate - X");
- }
-
- @Override
- public void onResume() {
- super.onResume();
- if(null != animator) {
- animator.start();
- }
- }
- @Override
- public void onPause() {
- super.onPause();
- if(null != animator) {
- animator.pause();
- }
- }
-
- @Override
- public void onDestroy() {
- super.onDestroy();
- if(null != animator) {
- animator.stop();
- }
- if(null != glWindow) {
- glWindow.destroy();
- }
+ Log.d(MD.TAG, "onCreate - X");
}
}