filename | android/src/org/lxdream/LxdreamActivity.java |
changeset | 1278:2f0de47738d0 |
prev | 1275:83b15705cdde |
next | 1285:f72cfb134a87 |
author | nkeynes |
date | Wed Mar 21 14:44:14 2012 +1000 (12 years ago) |
permissions | -rw-r--r-- |
last change | Dreamcast.stop() on pause, get rid of unnecessary onAppPause()/onAppResume() methods Set the run menu item to the right icon/state on pause as well. |
file | annotate | diff | log | raw |
nkeynes@1239 | 1 | /** |
nkeynes@1239 | 2 | * $Id$ |
nkeynes@1239 | 3 | * |
nkeynes@1239 | 4 | * Main Lxdream activity |
nkeynes@1239 | 5 | * |
nkeynes@1239 | 6 | * Copyright (c) 2011 Nathan Keynes. |
nkeynes@1239 | 7 | * |
nkeynes@1239 | 8 | * This program is free software; you can redistribute it and/or modify |
nkeynes@1239 | 9 | * it under the terms of the GNU General Public License as published by |
nkeynes@1239 | 10 | * the Free Software Foundation; either version 2 of the License, or |
nkeynes@1239 | 11 | * (at your option) any later version. |
nkeynes@1239 | 12 | * |
nkeynes@1239 | 13 | * This program is distributed in the hope that it will be useful, |
nkeynes@1239 | 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
nkeynes@1239 | 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
nkeynes@1239 | 16 | * GNU General Public License for more details. |
nkeynes@1239 | 17 | */ |
nkeynes@1239 | 18 | |
nkeynes@1239 | 19 | package org.lxdream; |
nkeynes@1239 | 20 | |
nkeynes@1239 | 21 | import android.app.Activity; |
nkeynes@1241 | 22 | import android.content.Context; |
nkeynes@1247 | 23 | import android.content.res.Resources; |
nkeynes@1247 | 24 | import android.graphics.drawable.Drawable; |
nkeynes@1239 | 25 | import android.os.Bundle; |
nkeynes@1239 | 26 | import android.util.Log; |
nkeynes@1245 | 27 | import android.view.Menu; |
nkeynes@1245 | 28 | import android.view.MenuInflater; |
nkeynes@1245 | 29 | import android.view.MenuItem; |
nkeynes@1239 | 30 | import android.view.WindowManager; |
nkeynes@1239 | 31 | |
nkeynes@1239 | 32 | import java.io.File; |
nkeynes@1239 | 33 | |
nkeynes@1239 | 34 | |
nkeynes@1239 | 35 | public class LxdreamActivity extends Activity { |
nkeynes@1239 | 36 | LxdreamView view; |
nkeynes@1247 | 37 | boolean isRunning = false; |
nkeynes@1247 | 38 | Context ctx; |
nkeynes@1247 | 39 | Drawable runIcon, pauseIcon; |
nkeynes@1278 | 40 | MenuItem runMenuItem; |
nkeynes@1239 | 41 | |
nkeynes@1239 | 42 | @Override |
nkeynes@1239 | 43 | protected void onCreate(Bundle bundle) { |
nkeynes@1239 | 44 | super.onCreate(bundle); |
nkeynes@1247 | 45 | ctx = getApplication(); |
nkeynes@1247 | 46 | Resources res = ctx.getResources(); |
nkeynes@1247 | 47 | runIcon = res.getDrawable(R.drawable.tb_run); |
nkeynes@1247 | 48 | pauseIcon = res.getDrawable(R.drawable.tb_pause); |
nkeynes@1245 | 49 | |
nkeynes@1245 | 50 | Log.i("LxdreamActivity", "Calling Dreamcast.init"); |
nkeynes@1241 | 51 | Dreamcast.init( ctx.getFilesDir().toString() ); |
nkeynes@1245 | 52 | Log.i("LxdreamActivity", "Finished Dreamcast.init"); |
nkeynes@1241 | 53 | view = new LxdreamView(ctx); |
nkeynes@1239 | 54 | setContentView(view); |
nkeynes@1239 | 55 | } |
nkeynes@1245 | 56 | |
nkeynes@1245 | 57 | @Override |
nkeynes@1245 | 58 | public boolean onCreateOptionsMenu(Menu menu) { |
nkeynes@1245 | 59 | MenuInflater inflater = getMenuInflater(); |
nkeynes@1245 | 60 | inflater.inflate(R.menu.main, menu); |
nkeynes@1278 | 61 | runMenuItem = menu.findItem(R.id.menu_run); |
nkeynes@1245 | 62 | return true; |
nkeynes@1245 | 63 | } |
nkeynes@1245 | 64 | |
nkeynes@1239 | 65 | |
nkeynes@1239 | 66 | @Override |
nkeynes@1239 | 67 | protected void onPause() { |
nkeynes@1278 | 68 | Dreamcast.stop(); |
nkeynes@1278 | 69 | runMenuItem.setIcon( runIcon ); |
nkeynes@1278 | 70 | isRunning = false; |
nkeynes@1239 | 71 | super.onPause(); |
nkeynes@1239 | 72 | } |
nkeynes@1239 | 73 | |
nkeynes@1239 | 74 | @Override |
nkeynes@1239 | 75 | protected void onResume() { |
nkeynes@1239 | 76 | super.onResume(); |
nkeynes@1245 | 77 | } |
nkeynes@1245 | 78 | |
nkeynes@1245 | 79 | public void onRunClicked( MenuItem item ) { |
nkeynes@1247 | 80 | if( isRunning ) { |
nkeynes@1247 | 81 | item.setIcon( runIcon ); |
nkeynes@1247 | 82 | } else { |
nkeynes@1247 | 83 | item.setIcon( pauseIcon ); |
nkeynes@1247 | 84 | } |
nkeynes@1245 | 85 | Dreamcast.toggleRun(); |
nkeynes@1247 | 86 | isRunning = !isRunning; |
nkeynes@1245 | 87 | } |
nkeynes@1245 | 88 | |
nkeynes@1245 | 89 | public void onResetClicked( MenuItem item ) { |
nkeynes@1245 | 90 | Dreamcast.reset(); |
nkeynes@1245 | 91 | } |
nkeynes@1245 | 92 | |
nkeynes@1245 | 93 | public void onPreferencesClicked( MenuItem item ) { |
nkeynes@1245 | 94 | /* TODO */ |
nkeynes@1239 | 95 | } |
nkeynes@1239 | 96 | } |
.