--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_checked="true"
+ android:drawable="@drawable/ic_indicator_on" />
+ <item android:state_checked="false"
+ android:drawable="@drawable/ic_indicator_off" />
+</selector>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:state_window_focused="true"
android:drawable="@drawable/ic_clock_alarm_selected" />
- <item android:state_checked="false"
- android:drawable="@drawable/ic_clock_alarm_off" />
- <item android:state_checked="true"
- android:drawable="@drawable/ic_clock_alarm_on" />
+ <item android:drawable="@drawable/ic_clock_alarm_on" />
</selector>
<LinearLayout android:id="@+id/add_alarm"
android:clickable="true"
android:focusable="true"
- android:focusableInTouchMode="true"
android:background="@android:drawable/list_selector_background"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
- android:textSize="28sp"
- android:textColor="@color/white"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:textColor="?android:attr/textColorPrimary"
android:text="@string/add_alarm" />
</LinearLayout>
+ <ImageView
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:scaleType="fitXY"
+ android:gravity="fill_horizontal"
+ android:src="@android:drawable/divider_horizontal_dark" />
+
<ListView
android:id="@+id/alarms_list"
android:layout_width="fill_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="6dip"
- android:textSize="42sp"
- android:textColor="@color/white" />
+ android:textSize="48sp"
+ android:textColor="?android:attr/textColorPrimary" />
<TextView android:id="@+id/am_pm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:textSize="18sp"
+ android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold"
- android:textColor="@color/white" />
+ android:textColor="?android:attr/textColorPrimary" />
</LinearLayout>
android:layout_height="wrap_content"
android:orientation="horizontal">
+ <!-- I can't use a normal checkbox here for a couple reasons:
+ 1. The checkbox button resources cannot contain layouts so I have to
+ use 2 views for the clock and the bar.
+ 2. The normal checkbox has a really messed up layout. Using the button
+ attribute produces a left-aligned image that has some kind of
+ minimum height. If the bar is a checkbox, it is too tall and is
+ clipped on the right.
+ -->
<LinearLayout android:id="@+id/indicator"
style="@style/alarm_list_left_column"
android:gravity="center"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center"
- android:button="@null"/>
+ android:button="@null" />
<ImageView android:id="@+id/bar_onoff"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_weight="1"
android:orientation="vertical"
- android:paddingLeft="8dip"
- android:paddingRight="8dip">
+ android:paddingLeft="16dip"
+ android:paddingRight="16dip">
<LinearLayout
android:layout_width="fill_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="6dip"
- android:textSize="36sp"
- android:textColor="@color/white"/>
+ android:textSize="28sp"
+ android:textColor="?android:attr/textColorPrimary"/>
<TextView android:id="@+id/am_pm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceSmall"
android:textStyle="bold"
- android:textColor="@color/white"/>
+ android:textColor="?android:attr/textColorPrimary"/>
<TextView android:id="@+id/label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
- android:paddingLeft="4dip"
- android:textSize="16sp"
- android:textColor="@color/grey"
+ android:paddingLeft="8dip"
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="?android:attr/textColorTertiary"
android:textStyle="bold"
android:gravity="right"
- android:paddingRight="8dip"
android:singleLine="true"/>
</LinearLayout>
android:includeFontPadding="false"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- android:textSize="10sp"
- android:textColor="@color/grey"/>
+ android:textAppearance="?android:attr/textAppearanceSmall"
+ android:textColor="?android:attr/textColorSecondary"/>
</com.android.deskclock.DigitalClock>
-->
<menu xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:id="@+id/menu_item_desk_clock"
+ android:title="@string/menu_desk_clock"
+ android:icon="@drawable/ic_menu_desk_clock"/>
+ <item android:id="@+id/menu_item_add_alarm"
+ android:title="@string/add_alarm"
+ android:icon="@drawable/ic_menu_add"/>
<item android:id="@+id/menu_item_settings"
android:title="@string/settings"
android:icon="@android:drawable/ic_menu_preferences"/>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/enable_alarm"
android:title="@string/enable_alarm"/>
+ <item android:id="@+id/edit_alarm"
+ android:title="@string/menu_edit_alarm"/>
<item android:id="@+id/delete_alarm"
android:title="@string/delete_alarm"/>
</menu>
<string name="add_alarm" msgid="5976616107390962899">"Přidat budík"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Smazat budík"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Aktivovat budík"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Deaktivovat budík"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Tento budík bude smazán."</string>
<string name="show_clock" msgid="8358759982675616915">"Zobrazit hodiny"</string>
<string name="hide_clock" msgid="3217727306480505694">"Skrýt hodiny"</string>
<string name="add_alarm" msgid="5976616107390962899">"Tilføj alarm"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Slet alarm"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Aktiver alarm"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Deaktiver alarm"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Denne alarm slettes."</string>
<string name="show_clock" msgid="8358759982675616915">"Vis ur"</string>
<string name="hide_clock" msgid="3217727306480505694">"Skjul ur"</string>
<string name="add_alarm" msgid="5976616107390962899">"Wecker hinzufügen"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Wecker löschen"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Wecker aktivieren"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Wecker deaktivieren"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Dieser Alarm wird gelöscht."</string>
<string name="show_clock" msgid="8358759982675616915">"Uhr anzeigen"</string>
<string name="hide_clock" msgid="3217727306480505694">"Uhr ausblenden"</string>
<string name="add_alarm" msgid="5976616107390962899">"Προσθήκη ξυπνητηριού"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Διαγραφή ξυπνητηριού"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Ενεργοποίηση ξυπνητηριού"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Απενεργοποίηση ξυπνητηριού"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Αυτό το ξυπνητήρι θα διαγραφεί."</string>
<string name="show_clock" msgid="8358759982675616915">"Εμφάνιση ρολογιού"</string>
<string name="hide_clock" msgid="3217727306480505694">"Απόκρυψη ρολογιού"</string>
<string name="add_alarm" msgid="5976616107390962899">"Agregar alarma"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Eliminar alarma"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Activar alarma"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Desactivar alarma"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Esta alarma se eliminará"</string>
<string name="show_clock" msgid="8358759982675616915">"Mostrar reloj"</string>
<string name="hide_clock" msgid="3217727306480505694">"Ocultar reloj"</string>
<string name="add_alarm" msgid="5976616107390962899">"Añadir alarma"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Eliminar alarma"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Activar alarma"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Desactivar alarma"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Esta alarma se eliminará."</string>
<string name="show_clock" msgid="8358759982675616915">"Mostrar reloj"</string>
<string name="hide_clock" msgid="3217727306480505694">"Ocultar reloj"</string>
<string name="add_alarm" msgid="5976616107390962899">"Ajouter alarme"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Supprimer l\'alarme"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Activer l\'alarme"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Désactiver l\'alarme"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Cette alarme va être supprimée."</string>
<string name="show_clock" msgid="8358759982675616915">"Afficher l\'horloge"</string>
<string name="hide_clock" msgid="3217727306480505694">"Masquer l\'horloge"</string>
<string name="add_alarm" msgid="5976616107390962899">"Aggiungi allarme"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Elimina allarme"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Attiva allarme"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Disattiva allarme"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Questa sveglia verrà eliminata."</string>
<string name="show_clock" msgid="8358759982675616915">"Mostra orologio"</string>
<string name="hide_clock" msgid="3217727306480505694">"Nascondi orologio"</string>
<string name="add_alarm" msgid="5976616107390962899">"アラームの設定"</string>
<string name="delete_alarm" msgid="3457780990646206817">"アラームを削除"</string>
<string name="enable_alarm" msgid="7442658245797418741">"アラームON"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"アラームOFF"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"このアラームを削除します。"</string>
<string name="show_clock" msgid="8358759982675616915">"時計を表示"</string>
<string name="hide_clock" msgid="3217727306480505694">"時計を隠す"</string>
<string name="add_alarm" msgid="5976616107390962899">"알람 추가"</string>
<string name="delete_alarm" msgid="3457780990646206817">"알람 삭제"</string>
<string name="enable_alarm" msgid="7442658245797418741">"알람 사용"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"알람 사용 중지"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"알람이 삭제됩니다."</string>
<string name="show_clock" msgid="8358759982675616915">"시계 표시"</string>
<string name="hide_clock" msgid="3217727306480505694">"시계 숨기기"</string>
<string name="add_alarm" msgid="5976616107390962899">"Legg til alarm"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Slett alarm"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Aktiver alarm"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Deaktiver alarm"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Denne alarmen vil bli slettet."</string>
<string name="show_clock" msgid="8358759982675616915">"Vis klokke"</string>
<string name="hide_clock" msgid="3217727306480505694">"Skjul klokke"</string>
<string name="add_alarm" msgid="5976616107390962899">"Alarm toevoegen"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Alarm verwijderen"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Alarm inschakelen"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Alarm uitschakelen"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Dit alarm wordt verwijderd."</string>
<string name="show_clock" msgid="8358759982675616915">"Klok weergeven"</string>
<string name="hide_clock" msgid="3217727306480505694">"Klok verbergen"</string>
<string name="add_alarm" msgid="5976616107390962899">"Dodaj alarm"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Usuń alarm"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Włącz alarm"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Wyłącz alarm"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Ten zegar zostanie usunięty."</string>
<string name="show_clock" msgid="8358759982675616915">"Pokaż zegar"</string>
<string name="hide_clock" msgid="3217727306480505694">"Ukryj zegar"</string>
<string name="add_alarm" msgid="5976616107390962899">"Adicionar alarme"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Eliminar alarme"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Activar alarme"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Desactivar alarme"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Este alarme será eliminado."</string>
<string name="show_clock" msgid="8358759982675616915">"Mostrar relógio"</string>
<string name="hide_clock" msgid="3217727306480505694">"Ocultar relógio"</string>
<string name="add_alarm" msgid="5976616107390962899">"Adicionar alarme"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Excluir alarme"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Ativar alarme"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Desativar alarme"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Este alarme será excluído."</string>
<string name="show_clock" msgid="8358759982675616915">"Mostrar relógio"</string>
<string name="hide_clock" msgid="3217727306480505694">"Ocultar relógio"</string>
<string name="add_alarm" msgid="5976616107390962899">"Добавить будильник"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Удалить будильник"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Включить будильник"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Отключить будильник"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Сигнал будет удален."</string>
<string name="show_clock" msgid="8358759982675616915">"Показать часы"</string>
<string name="hide_clock" msgid="3217727306480505694">"Спрятать часы"</string>
<string name="add_alarm" msgid="5976616107390962899">"Lägg till alarm"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Ta bort alarm"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Aktivera alarmet"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Inaktivera alarmet"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Alarmet tas bort."</string>
<string name="show_clock" msgid="8358759982675616915">"Visa klocka"</string>
<string name="hide_clock" msgid="3217727306480505694">"Dölj klocka"</string>
<string name="add_alarm" msgid="5976616107390962899">"Alarm ekle"</string>
<string name="delete_alarm" msgid="3457780990646206817">"Alarmı sil"</string>
<string name="enable_alarm" msgid="7442658245797418741">"Alarmı etkinleştir"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"Alarmı devre dışı bırak"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"Bu alarm silinecek."</string>
<string name="show_clock" msgid="8358759982675616915">"Saati göster"</string>
<string name="hide_clock" msgid="3217727306480505694">"Saati gizle"</string>
<string name="add_alarm" msgid="5976616107390962899">"添加闹钟"</string>
<string name="delete_alarm" msgid="3457780990646206817">"取消闹钟"</string>
<string name="enable_alarm" msgid="7442658245797418741">"启用闹钟"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"停用闹钟"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"将会取消此闹钟。"</string>
<string name="show_clock" msgid="8358759982675616915">"显示时钟"</string>
<string name="hide_clock" msgid="3217727306480505694">"隐藏时钟"</string>
<string name="add_alarm" msgid="5976616107390962899">"新增鬧鐘"</string>
<string name="delete_alarm" msgid="3457780990646206817">"刪除鬧鐘"</string>
<string name="enable_alarm" msgid="7442658245797418741">"啟用鬧鐘"</string>
- <string name="disable_alarm" msgid="6665528499886549648">"停用鬧鐘"</string>
<string name="delete_alarm_confirm" msgid="4237696873219106907">"刪除此鬧鐘?"</string>
<string name="show_clock" msgid="8358759982675616915">"顯示時鐘"</string>
<string name="hide_clock" msgid="3217727306480505694">"隱藏時鐘"</string>
<!-- Menu item on Alarm Clock screen: Add alarm -->
<string name="add_alarm">Add alarm</string>
+ <!-- Menu item on Alarm Clock screen: Desk clock -->
+ <string name="menu_desk_clock">Desk clock</string>
+
+ <!-- Menu item on Alarm Clock screen: Edit alarm -->
+ <string name="menu_edit_alarm">Edit alarm</string>
+
<!-- Context Menu Item on Alarm Settings screen: Delete alarm -->
<string name="delete_alarm">Delete alarm</string>
<!-- Context Menu Item on Alarm Settings screen: Enable alarm -->
- <string name="enable_alarm">Enable alarm</string>
-
- <!-- Context Menu Item on Alarm Settings screen: Disable alarm -->
- <string name="disable_alarm">Disable alarm</string>
+ <string name="enable_alarm">Turn alarm on/off</string>
<!-- Delete alarm confirmation dialog message. -->
<string name="delete_alarm_confirm">This alarm will be deleted.</string>
</style>
<style name="alarm_list_left_column">
- <item name="android:layout_width">64dip</item>
- <item name="android:layout_height">54dip</item>
+ <item name="android:layout_width">68dip</item>
+ <item name="android:layout_height">60dip</item>
</style>
</resources>
}
return true;
+ case R.id.edit_alarm:
+ Intent intent = new Intent(this, SetAlarm.class);
+ intent.putExtra(Alarms.ALARM_ID, id);
+ startActivity(intent);
+ return true;
+
default:
break;
}
View addAlarm = findViewById(R.id.add_alarm);
addAlarm.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
- Uri uri = Alarms.addAlarm(getContentResolver());
- // FIXME: scroll to new item?
- 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(AlarmClock.this, SetAlarm.class);
- intent.putExtra(Alarms.ALARM_ID, newId);
- startActivity(intent);
+ addNewAlarm();
}
});
});
}
+ private void addNewAlarm() {
+ Uri uri = Alarms.addAlarm(getContentResolver());
+ 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);
+ intent.putExtra(Alarms.ALARM_ID, newId);
+ startActivity(intent);
+ }
+
@Override
protected void onDestroy() {
super.onDestroy();
// Set the custom view on the menu.
menu.setHeaderView(v);
- // Change the text to "disable" if the alarm is already enabled.
- if (alarm.enabled) {
- menu.findItem(R.id.enable_alarm).setTitle(R.string.disable_alarm);
- }
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- if (item.getItemId() == R.id.menu_item_settings) {
- startActivity(new Intent(this, SettingsActivity.class));
- return true;
+ switch (item.getItemId()) {
+ case R.id.menu_item_settings:
+ startActivity(new Intent(this, SettingsActivity.class));
+ return true;
+ case R.id.menu_item_desk_clock:
+ startActivity(new Intent(this, DeskClock.class));
+ return true;
+ case R.id.menu_item_add_alarm:
+ addNewAlarm();
+ return true;
+ default:
+ break;
}
- return false;
+ return super.onOptionsItemSelected(item);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.alarm_list_menu, menu);
- return true;
+ return super.onCreateOptionsMenu(menu);
}
public void onItemClick(AdapterView parent, View v, int pos, long id) {