<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_item_alarms"
- android:title="@string/alarm_list_title"/>
+ android:title="@string/alarm_list_title"
+ android:icon="@drawable/ic_menu_alarms"/>
+ <item android:id="@+id/menu_item_add_alarm"
+ android:title="@string/add_alarm"
+ android:icon="@drawable/ic_menu_add"/>
</menu>
});
}
- private void addNewAlarm() {
- Uri uri = Alarms.addAlarm(getContentResolver());
- String segment = uri.getPathSegments().get(1);
+ // Version of addNewAlarm that can be called from any activity, e.g. DeskClock
+ protected static void addNewAlarm(Context context) {
+ final Uri uri = Alarms.addAlarm(context.getContentResolver());
+ final String segment = uri.getPathSegments().get(1);
int newId = Integer.parseInt(segment);
if (Log.LOGV) {
Log.v("In AlarmClock, new alarm id = " + newId);
}
- Intent intent = new Intent(this, SetAlarm.class);
+ final Intent intent = new Intent(context, SetAlarm.class);
intent.putExtra(Alarms.ALARM_ID, newId);
- startActivity(intent);
+ context.startActivity(intent);
+ }
+
+ private void addNewAlarm() {
+ addNewAlarm(this);
}
@Override
if (item.getItemId() == R.id.menu_item_alarms) {
startActivity(new Intent(DeskClock.this, AlarmClock.class));
return true;
+ } else if (item.getItemId() == R.id.menu_item_add_alarm) {
+ AlarmClock.addNewAlarm(this);
+ return true;
}
return false;
}