+#include "oswald.h"
+#include "oswald_watch_faces.h"
+#include "Fonts.h"
+#include "LcdDisplay.h"
+
+#include "oswald_screens.h"
+
+void idle_handle_user_buttons(watch_button button)
+{
+}
+void idle_handle_events(u16t event, void *data)
+{
+ switch (event) {
+ case EVENT_ONE_SEC_TIMER:
+ case EVENT_SCREEN_VISIBLE:
+ DrawLcdDigitalClock();
+ break;
+ case EVENT_USER_BUTTONS:
+ dbg_out("button event %d\n", *(int *)data);
+ break;
+ default:
+ break;
+ };
+}
+
+void draw_accel_screen(void)
+{
+ lcd_clear_display();
+ SetFont(MetaWatch16);
+ WriteLcdString(2, 2, "X:");
+ WriteLcdString(20, 2, "123");
+ WriteLcdString(2, 18, "Z:");
+ WriteLcdString(20, 18, "123");
+ WriteLcdString(2, 34, "Y:");
+ WriteLcdString(20, 34, "123");
+}
+void accel_handle_events(u16t event, void *data)
+{
+ switch (event) {
+ case EVENT_SCREEN_VISIBLE:
+ draw_accel_screen();
+ break;
+ case EVENT_USER_BUTTONS:
+ dbg_out("button event %d\n", *(int *)data);
+ break;
+ default:
+ break;
+ };
+}
+
+void draw_datetime_setup_screen(void)
+{
+ lcd_clear_display();
+ SetFont(MetaWatch16);
+ WriteLcdString(2, 2, "Date / Time");
+ WriteLcdString(2, 18, "Setting");
+ WriteLcdString(2, 34, "22:39");
+ WriteLcdString(2, 50, "07.08.2012");
+}
+void datetime_setup_events(u16t event, void *data)
+{
+ switch (event) {
+ case EVENT_SCREEN_VISIBLE:
+ draw_datetime_setup_screen();
+ break;
+ case EVENT_USER_BUTTONS:
+ dbg_out("button event %d\n", *(int *)data);
+ break;
+ default:
+ break;
+ };
+}
+
+static u8t test_menu_pos = 0;
+
+void draw_menu_test_screen(void)
+{
+ lcd_clear_display();
+ SetFont(MetaWatch16);
+ WriteLcdString(2, 2, "Menu");
+ SetFont(MetaWatch7);
+ WriteLcdString(2, 20, "Item 1");
+ WriteLcdString(2, 29, "Item 2");
+ WriteLcdString(2, 38, "Item 3");
+ WriteLcdString(2, 47, "Item 4");
+ WriteLcdString(2, 56, "Item 5");
+
+ WriteLcdString(50, 20+(9*test_menu_pos), "*");
+}
+
+static void handle_menu_user_buttons(watch_button button)
+{
+ switch (button) {
+ case BUTTON_A:
+ test_menu_pos--;
+ test_menu_pos%=5;
+ break;
+ case BUTTON_B:
+ test_menu_pos++;
+ test_menu_pos%=5;
+ break;
+ default:
+ break;
+ }
+ draw_menu_test_screen();
+}
+
+void test_menu_handle_events(u16t event, void *data)
+{
+ switch (event) {
+ case EVENT_USER_BUTTONS:
+ dbg_out("button event %d\n", *(int *)data);
+ handle_menu_user_buttons(*(watch_button *)data);
+ break;
+ case EVENT_SCREEN_VISIBLE:
+ test_menu_pos = 0;
+ draw_menu_test_screen();
+ break;
+ default:
+ break;
+ };
+}
+