private Messenger messenger;
private Task task;
private Toast toast;
- private boolean running;
/* Widgets */
private TabHost window;
{
Util.debug("Main: onRegister");
this.task = task;
- this.running = this.task.isRunning();
}
private void onPosition()
{
Util.debug("Main: register");
startService(new Intent(this, Task.class)
- .putExtra("Command", Task.REGISTER)
+ .putExtra("Command", Task.Command.REGISTER)
.putExtra("Messenger", this.messenger));
}
{
Util.debug("Main: connect");
startService(new Intent(this, Task.class)
- .putExtra("Command", Task.CONNECT));
- this.running = true;
+ .putExtra("Command", Task.Command.CONNECT));
}
private void disconnect()
{
Util.debug("Main: disconnect");
startService(new Intent(this, Task.class)
- .putExtra("Command", Task.DISCONNECT));
- this.running = false;
+ .putExtra("Command", Task.Command.DISCONNECT));
}
private void quit()
@Override
public boolean onPrepareOptionsMenu(Menu menu)
{
- menu.findItem(R.id.connect).setVisible(!this.running);
- menu.findItem(R.id.disconnect).setVisible(this.running);
+ boolean running = this.task != null && this.task.isRunning();
+ menu.findItem(R.id.connect).setVisible(!running);
+ menu.findItem(R.id.disconnect).setVisible(running);
return true;
}
{
public void handleMessage(android.os.Message msg)
{
- switch (msg.what) {
- case Task.REGISTER:
- Main.this.onRegister((Task)msg.obj);
- break;
- case Task.POSITION:
+ Task.Response resp = Task.Response.values()[msg.what];
+ switch (resp) {
+ case POSITION:
Main.this.onPosition();
break;
- case Task.CONNECT:
- Main.this.running = true;
- break;
- case Task.DISCONNECT:
- Main.this.running = false;
- break;
- case Task.NOTIFY:
+ case NOTIFY:
Main.this.onNotify((String)msg.obj);
break;
default:
- Util.debug("Main: unknown message - " + msg.what);
+ Util.debug("Main: unknown message - " + resp);
break;
}
}