static void main_window_load(Window *window) { s_background_bitmap = gbitmap_create_with_resource(RESOURCE_ID_BACKGROUND_TEST); s_background_layer = bitmap_layer_create(GRect(0, 0, 144, 168)); bitmap_layer_set_bitmap(s_background_layer, s_background_bitmap); layer_add_child(window_get_root_layer(window), bitmap_layer_get_layer(s_background_layer)); s_time_layer = text_layer_create(GRect(5, 55, 139, 50)); s_time_font = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_PERFECT_DOS_42)); init_text_layer(s_time_layer, s_time_font, GColorBlack, GColorClear, GTextAlignmentCenter); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_time_layer)); s_weather_layer = text_layer_create(GRect(5, 15, 139, 25)); s_weather_font = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_PERFECT_DOS_20)); init_text_layer(s_weather_layer, s_weather_font, GColorWhite, GColorClear, GTextAlignmentCenter); text_layer_set_text(s_weather_layer, "Loading..."); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_weather_layer)); s_wday_layer = text_layer_create(GRect(5, 115, 139, 25)); init_text_layer(s_wday_layer, s_weather_font, GColorWhite, GColorClear, GTextAlignmentCenter); text_layer_set_text(s_wday_layer, "..."); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_wday_layer)); s_date_layer = text_layer_create(GRect(5, 143, 139, 25)); init_text_layer(s_date_layer, s_weather_font, GColorWhite, GColorClear, GTextAlignmentCenter); text_layer_set_text(s_date_layer, "..."); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_date_layer)); update_time(); }
void window_load(Window *window) { app_log(APP_LOG_LEVEL_DEBUG, "pebblemonface.c", __LINE__, "window_load"); window_set_background_color(window,GColorBlack); status_layer = init_text_layer(GRect(8, 8, 128, 160), GColorWhite, GColorClear, FONT_KEY_GOTHIC_14, GTextAlignmentLeft); battery_layer = init_text_layer(GRect(8, 8, 128, 160), GColorWhite, GColorClear, FONT_KEY_GOTHIC_14, GTextAlignmentRight); weekday_layer = init_text_layer(GRect(8, 52, 128, 160), GColorWhite, GColorClear, FONT_KEY_ROBOTO_CONDENSED_21, GTextAlignmentLeft); date_layer = init_text_layer(GRect(8, 75, 128, 160), GColorWhite, GColorClear, FONT_KEY_ROBOTO_CONDENSED_21, GTextAlignmentLeft); time_layer = init_text_layer(GRect(0, 100, 144, 168), GColorWhite, GColorClear, FONT_KEY_ROBOTO_BOLD_SUBSET_49, GTextAlignmentCenter); tick_timer_service_subscribe(MINUTE_UNIT, (TickHandler) tick_callback); //Get a time structure so that the face doesn't start blank struct tm *t; time_t temp; temp = time(NULL); t = localtime(&temp); //Manually call the tick handler when the window is loading tick_callback(t, MINUTE_UNIT); Layer *window_layer = window_get_root_layer(window); layer_add_child(window_layer, (Layer *)time_layer); layer_add_child(window_layer, (Layer *)date_layer); layer_add_child(window_layer, (Layer *)weekday_layer); layer_add_child(window_layer, (Layer *)status_layer); layer_add_child(window_layer, (Layer *)battery_layer); }
void window_load(Window *window) { inverter_layer = inverter_layer_create(GRect(0, 0, 144, 13)); slider_layer = bitmap_layer_create(GRect(49, 1, 46, 10)); slider0_bitmap = gbitmap_create_with_resource(RESOURCE_ID_SLIDER0); slider1_bitmap = gbitmap_create_with_resource(RESOURCE_ID_SLIDER1); slider2_bitmap = gbitmap_create_with_resource(RESOURCE_ID_SLIDER2); slider3_bitmap = gbitmap_create_with_resource(RESOURCE_ID_SLIDER3); ///////////////////// slide_start = layer_create(GRect(0, 0, 144, 168)); layer_add_child(window_get_root_layer(window), (Layer *)slide_start); logo_layer = bitmap_layer_create(GRect(32, 10, 80, 103)); logo_bitmap = gbitmap_create_with_resource(RESOURCE_ID_LOGO); bitmap_layer_set_bitmap(logo_layer, logo_bitmap); layer_add_child((Layer *)slide_start, bitmap_layer_get_layer(logo_layer)); caption_text_layer = init_text_layer(GRect(0, 105, 144, 40), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_28_BOLD", GTextAlignmentCenter); text_layer_set_text(caption_text_layer, "RPi-Monitor"); layer_add_child((Layer *)slide_start, text_layer_get_layer(caption_text_layer)); status_text_layer = init_text_layer(GRect(0, 135, 144, 25), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentCenter); text_layer_set_text(status_text_layer, "Loading..."); layer_add_child((Layer *)slide_start, text_layer_get_layer(status_text_layer)); ///////////////////// slide0 = layer_create(GRect(0, 0, 144, 168)); layer_add_child(window_get_root_layer(window), (Layer *)slide0); layer_set_hidden((Layer *)slide0, true); cpu_title_text_layer = init_text_layer(GRect(0, 12, 144, 20), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18_BOLD", GTextAlignmentCenter); text_layer_set_text(cpu_title_text_layer, "CPU"); layer_add_child((Layer *)slide0, text_layer_get_layer(cpu_title_text_layer)); cpu_text_layer = init_text_layer(GRect(2, 32, 140, 136), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_14", GTextAlignmentLeft); layer_add_child((Layer *)slide0, text_layer_get_layer(cpu_text_layer)); ///////////////////// slide1 = layer_create(GRect(0, 0, 144, 168)); layer_add_child(window_get_root_layer(window), (Layer *)slide1); layer_set_hidden((Layer *)slide1, true); memory_title_text_layer = init_text_layer(GRect(0, 12, 144, 20), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18_BOLD", GTextAlignmentCenter); text_layer_set_text(memory_title_text_layer, "MEMORY"); layer_add_child((Layer *)slide1, text_layer_get_layer(memory_title_text_layer)); memory_bar = progress_bar_layer_create((GRect) { .origin = { 5, 37 }, .size = { 134, 5 } });
static void window_load(Window *window) { Layer *window_layer = window_get_root_layer(window); window_set_background_color(window, WINDOW_COLOR); background_layer = layer_create(layer_get_bounds(window_layer)); layer_set_update_proc(background_layer, &update_background_callback); layer_add_child(window_layer, background_layer); text_date_layer = init_text_layer(ISO_DATE_RECT, GTextAlignmentCenter, RESOURCE_ID_FONT_ISO_DATE_23); text_time_layer = init_text_layer(ISO_TIME_RECT, GTextAlignmentCenter, RESOURCE_ID_FONT_ISO_TIME_32); text_beat_layer = init_text_layer(BEAT_RECT, GTextAlignmentLeft, RESOURCE_ID_FONT_SWATCH_BEATS_47); get_stored_timezone(); time_t now = time(NULL); display_time(localtime(&now)); tick_timer_service_subscribe(SECOND_UNIT, handle_second_tick); }
void handle_init(AppContextRef ctx) { window_init(&window, "PebMinders"); window_stack_push(&window, true /* Animated */); window_set_background_color(&window, GColorBlack); resource_init_current_app(&APP_RESOURCES); init_text_layer( &text_pebminder_layer, GRect( PEBMINDER_X, PEBMINDER_Y, SCREEN_WIDTH - PEBMINDER_X, DATE_Y - PEBMINDER_Y ), fonts_get_system_font(FONT_KEY_GOTHIC_14) ); init_text_layer( &text_date_layer, GRect(DATE_X, DATE_Y, SCREEN_WIDTH-DATE_X, SCREEN_HEIGHT-DATE_Y), fonts_load_custom_font( resource_get_handle(RESOURCE_ID_FONT_ROBOTO_CONDENSED_21) ) ); init_text_layer( &text_time_layer, GRect(TIME_X, TIME_Y, SCREEN_WIDTH-TIME_X, SCREEN_HEIGHT-TIME_Y), fonts_load_custom_font( resource_get_handle(RESOURCE_ID_FONT_ROBOTO_BOLD_SUBSET_49) ) ); layer_init(&line_layer, window.layer.frame); line_layer.update_proc = &line_layer_update_callback; layer_add_child(&window.layer, &line_layer); text_layer_set_text(&text_pebminder_layer, "• Init"); http_set_app_id(APP_ID); http_register_callbacks( (HTTPCallbacks){ .failure=handle_failure, .success=handle_success, .reconnect=handle_reconnect },
void window_load(Window *window) { // Action Bar //action_bar = action_bar_layer_create(); //action_bar_layer_add_to_window(action_bar, window); //action_bar_layer_set_click_config_provider(action_bar, click_config_provider); title_layer = init_text_layer(GRect(0, 0, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentCenter); text_layer_set_text(title_layer, "SWTOR Server Status"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(title_layer)); state_layer = init_text_layer(GRect(0, 25, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_24_BOLD", GTextAlignmentCenter); text_layer_set_text(state_layer, "State: N/A"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(state_layer)); name_layer = init_text_layer(GRect(5,60, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentLeft); text_layer_set_text(name_layer, "Server(s): N/A"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(name_layer)); description_layer = init_text_layer(GRect(5, 80, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentLeft); text_layer_set_text(description_layer, "Count: N/A"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(description_layer)); population_layer = init_text_layer(GRect(5, 100, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentLeft); text_layer_set_text(population_layer, "Population: N/A"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(population_layer)); time_layer = init_text_layer(GRect(5, 130, 144, 30), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentLeft); text_layer_set_text(time_layer, "Last updated: N/A"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(time_layer)); }
static void main_window_load(Window *window) { s_mono_font = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_UBUNTU_MONO_42)); // Vertical: 3 + 52 + 3 + 52 + 3 + 52 + 3 = 168 // Horizontal: 3 + 52 + 3 + 83 + 3 = 144 s_hour_layer = text_layer_create(GRect(3, 3, 52, 52)); init_text_layer(window, s_hour_layer); s_hour_bar_layer = layer_create(GRect(60, 3, 83, 52)); init_bar_layer(window, s_hour_bar_layer); s_minute_layer = text_layer_create(GRect(3, 58, 52, 52)); init_text_layer(window, s_minute_layer); s_minute_bar_layer = layer_create(GRect(60, 58, 83, 52)); init_bar_layer(window, s_minute_bar_layer); s_second_layer = text_layer_create(GRect(3, 113, 52, 52)); init_text_layer(window, s_second_layer); s_second_bar_layer = layer_create(GRect(60, 113, 83, 52)); init_bar_layer(window, s_second_bar_layer); init_time(); }
void init_config_window() { window_init(&config_window, "Round Timer Config"); window_stack_push(&config_window, true /* Animated */); window_set_background_color(&config_window, GColorBlack); window_set_fullscreen(&config_window, false); config_window.window_handlers.appear = (WindowHandler)window_appear; // Arrange for user input. window_set_click_config_provider(&config_window, (ClickConfigProvider) config_config_provider); big_font = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_DEJAVU_SANS_SUBSET_18)); Layer *root_layer = window_get_root_layer(&config_window); init_text_layer(&round_text_time_layer, GRect(0, 1, 63, 21), "Round:", GTextAlignmentLeft); layer_add_child(root_layer, &round_text_time_layer.layer); init_text_layer(&warning_text_time_layer, GRect(0, 22, 63, 21), "Warn:", GTextAlignmentLeft); layer_add_child(root_layer, &warning_text_time_layer.layer); init_text_layer(&rest_text_time_layer, GRect(0, 43, 63, 21), "Rest:", GTextAlignmentLeft); layer_add_child(root_layer, &rest_text_time_layer.layer); init_text_layer(&round_text_counter_layer, GRect(0, 64, 63, 21), "Count:", GTextAlignmentLeft); layer_add_child(root_layer, &round_text_counter_layer.layer); init_text_layer(&start_text, GRect(0, 127, 144, 21), "Start", GTextAlignmentCenter); layer_add_child(root_layer, &start_text.layer); update_text_digits(); for (int i = 0; i < 3; i++) { int y_height = i*21+1; init_text_layer(&time_selectors[i*2], GRect(94, y_height, 22, 21), text_digits[i*2], GTextAlignmentRight); layer_add_child(root_layer, &time_selectors[i*2].layer); init_text_layer(&time_separators[i], GRect(116, y_height, 6, 21), ":", GTextAlignmentRight); layer_add_child(root_layer, &time_separators[i].layer); init_text_layer(&time_selectors[(i*2)+1], GRect(122, y_height, 22, 21), text_digits[i*2+1], GTextAlignmentRight); layer_add_child(root_layer, &time_selectors[(i*2)+1].layer); } init_text_layer(&round_counter_layer, GRect(122, 64, 22, 21), round_count_digits, GTextAlignmentRight); layer_add_child(root_layer, &round_counter_layer.layer); update_selections(); }
void handle_init(void) { //init_with_dummy_data(); app_message_register_inbox_received(inbox); app_message_open(app_message_inbox_size_maximum(), app_message_outbox_size_maximum()); logo = gbitmap_create_with_resource(RESOURCE_ID_LOGO); //========== splash_window = window_create(); #ifdef PBL_SDK_2 window_set_fullscreen(splash_window, true); #endif window_set_background_color(splash_window, APP_COLOR); splash_custom_layer = layer_create(GRect(0,0,144,168)); layer_set_update_proc(splash_custom_layer, draw_splash_custom_layer); layer_add_child(window_get_root_layer(splash_window), splash_custom_layer); window_stack_push(splash_window, true); //========== home_window = window_create(); #ifdef PBL_SDK_2 window_set_fullscreen(home_window, true); #else window_set_background_color(home_window, GColorBlack); #endif home_text_layer = text_layer_create(HEADER); init_text_layer(home_text_layer); text_layer_set_text(home_text_layer, APP_NAME); home_menu_layer = menu_layer_create(BODY); menu_layer_set_callbacks(home_menu_layer, NULL, (MenuLayerCallbacks){ .get_num_rows = home_num_rows, .draw_row = home_draw_row, .select_click = home_select });
static void init_layers(void) { bitcoin_layer = init_text_layer(GRect(0, 0, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_BITHAM_42_BOLD", GTextAlignmentCenter); text_layer_set_text(bitcoin_layer, "Bitcoin"); layer_add_child(window_get_root_layer(wins[0]), text_layer_get_layer(bitcoin_layer)); dogecoin_layer = init_text_layer(GRect(0, 0, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_28_BOLD", GTextAlignmentCenter); text_layer_set_text(dogecoin_layer, "Dogecoin\n(10000)"); layer_add_child(window_get_root_layer(wins[1]), text_layer_get_layer(dogecoin_layer)); litecoin_layer = init_text_layer(GRect(0, 0, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_BITHAM_30_BLACK", GTextAlignmentCenter); text_layer_set_text(litecoin_layer, "Litecoin"); layer_add_child(window_get_root_layer(wins[2]), text_layer_get_layer(litecoin_layer)); time_layer1 = init_text_layer(GRect(0, 120, 144, 100), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentCenter); text_layer_set_text(time_layer1, "Last updated: N/A"); layer_add_child(window_get_root_layer(wins[0]), text_layer_get_layer(time_layer1)); time_layer2 = init_text_layer(GRect(0, 120, 144, 100), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentCenter); text_layer_set_text(time_layer2, "Last updated: N/A"); layer_add_child(window_get_root_layer(wins[1]), text_layer_get_layer(time_layer2)); time_layer3 = init_text_layer(GRect(0, 120, 144, 100), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_18", GTextAlignmentCenter); text_layer_set_text(time_layer3, "Last updated: N/A"); layer_add_child(window_get_root_layer(wins[2]), text_layer_get_layer(time_layer3)); bitcoin_price = init_text_layer(GRect(0, 60, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_24", GTextAlignmentCenter); text_layer_set_text(bitcoin_price, "$N/A"); layer_add_child(window_get_root_layer(wins[0]), text_layer_get_layer(bitcoin_price)); dogecoin_price = init_text_layer(GRect(0, 60, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_24", GTextAlignmentCenter); text_layer_set_text(dogecoin_price, "$N/A"); layer_add_child(window_get_root_layer(wins[1]), text_layer_get_layer(dogecoin_price)); litecoin_price = init_text_layer(GRect(0, 60, 144, 250), GColorBlack, GColorClear, "RESOURCE_ID_GOTHIC_24", GTextAlignmentCenter); text_layer_set_text(litecoin_price, "$N/A"); layer_add_child(window_get_root_layer(wins[2]), text_layer_get_layer(litecoin_price)); }
void window_load(Window *window) { date_layer = init_text_layer(GRect(0, 47, 144, 30), GColorBlack, GColorWhite, "FONT_KEY_GOTHIC_28_BOLD", GTextAlignmentLeft); text_layer_set_text(date_layer, "Date N/A"); text_layer_set_font(date_layer, fonts_get_system_font(FONT_KEY_GOTHIC_24_BOLD)); layer_add_child(window_get_root_layer(window), text_layer_get_layer(date_layer)); text_layer_set_text_alignment(date_layer, GTextAlignmentCenter); battery_layer = text_layer_create(GRect(0, 76, 144, 30)); text_layer_set_text(battery_layer, "Batt: "); text_layer_set_text_color(battery_layer, GColorBlack); text_layer_set_background_color(battery_layer, GColorWhite); text_layer_set_font(battery_layer, fonts_get_system_font(FONT_KEY_GOTHIC_24_BOLD)); text_layer_set_text_alignment(battery_layer, GTextAlignmentCenter); layer_add_child(window_get_root_layer(window), text_layer_get_layer(battery_layer)); temp_layer = text_layer_create(GRect(0, 111, 144, 50)); text_layer_set_text(temp_layer, "N/A"); text_layer_set_text_color(temp_layer, GColorWhite); text_layer_set_background_color(temp_layer, GColorBlack); text_layer_set_font(temp_layer, fonts_get_system_font(FONT_KEY_BITHAM_42_BOLD)); layer_add_child(window_get_root_layer(window), text_layer_get_layer(temp_layer)); text_layer_set_text_alignment(temp_layer, GTextAlignmentCenter); }
void window_load(Window *window) { //Capa para mostrar el marcador bajo los números marcador = layer_create(layer_get_bounds(window_get_root_layer(window))); layer_set_update_proc(marcador, marcador_update_callback); layer_add_child(window_get_root_layer(window), marcador); //Barra de opciones de la derecha action_bar = action_bar_layer_create(); action_bar_layer_add_to_window(action_bar, window); action_bar_layer_set_click_config_provider(action_bar, click_config_provider); //Asignación de recursos gráficos #ifdef PBL_COLOR arriba_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_ARRIBA_BLACK); abajo_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_ABAJO_BLACK); pulsar_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_PULSAR_BLACK); play_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_PLAY_BLACK); buscar_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_BUSCAR_BLACK); #else arriba_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_ARRIBA_WHITE); abajo_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_ABAJO_WHITE); pulsar_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_PULSAR_WHITE); play_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_PLAY_WHITE); buscar_bitmap = gbitmap_create_with_resource(RESOURCE_ID_ICONO_BUSCAR_WHITE); #endif //Asignación de iconos a la barra de opciones action_bar_layer_set_icon(action_bar, BUTTON_ID_UP, arriba_bitmap ); action_bar_layer_set_icon(action_bar, BUTTON_ID_DOWN, abajo_bitmap); if (posicion==2) action_bar_layer_set_icon(action_bar, BUTTON_ID_SELECT, buscar_bitmap); else action_bar_layer_set_icon(action_bar, BUTTON_ID_SELECT, play_bitmap); //Capas principales del programa textoparada_layer = init_text_layer(GRect(5, 5, 120, 35), GColorBlack, GColorClear, FONT_KEY_GOTHIC_28_BOLD, GTextAlignmentLeft); text_layer_set_text(textoparada_layer, "Parada"); layer_add_child(window_get_root_layer(window), (Layer*) textoparada_layer); mensaje_layer = init_text_layer(GRect(5, 90, 100, 80), GColorBlack, GColorClear, FONT_KEY_GOTHIC_24_BOLD, GTextAlignmentLeft); text_layer_set_text(mensaje_layer, "Introduce parada"); layer_add_child(window_get_root_layer(window), (Layer*) mensaje_layer); dig1_layer = init_text_layer(GRect(10, 30, 30, 50), GColorBlack, GColorClear, FONT_KEY_ROBOTO_BOLD_SUBSET_49, GTextAlignmentCenter); layer_add_child(window_get_root_layer(window), (Layer*) dig1_layer); dig2_layer = init_text_layer(GRect(40, 30, 30, 50), GColorBlack, GColorClear, FONT_KEY_ROBOTO_BOLD_SUBSET_49, GTextAlignmentCenter); layer_add_child(window_get_root_layer(window), (Layer*) dig2_layer); dig3_layer = init_text_layer(GRect(70, 30, 30, 50), GColorBlack, GColorClear, FONT_KEY_ROBOTO_BOLD_SUBSET_49, GTextAlignmentCenter); layer_add_child(window_get_root_layer(window), (Layer*) dig3_layer); pinta_datos(); pinta_nombredeparada(); if (i_buscar==1) busca_parada(); if (posicion==2) { dialog_message_window_push(numero_parada()); } }
// Program initializer void init(void){ // Create a window and text layer window = window_create(); window_set_background_color(window, GColorBlack); // Read settings if (persist_exists(KEY_MILITARY_TIME)) { militaryTime = persist_read_bool(KEY_MILITARY_TIME); } if (persist_exists(KEY_TEMPC)) { tempC = persist_read_bool(KEY_TEMPC); } if (persist_exists(KEY_DATEDDMM)) { dateDDMM = persist_read_bool(KEY_DATEDDMM); } // Initialize font for time s_orbitron_font_36 = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_ORBITRON_LIGHT_36)); s_orbitron_font_20 = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_ORBITRON_LIGHT_20)); s_orbitron_font_15 = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_ORBITRON_LIGHT_15)); // Initialize time angles decorations s_time_angles_bmp = gbitmap_create_with_resource(RESOURCE_ID_IMAGE_TIME_ANGLES); s_seconds_arows_layer = bitmap_layer_create(GRect(0, 56, 144, 38)); bitmap_layer_set_bitmap(s_seconds_arows_layer, s_time_angles_bmp); layer_add_child(window_get_root_layer(window), bitmap_layer_get_layer(s_seconds_arows_layer)); // Initialize secnods arows decorations s_time_angles_bmp = gbitmap_create_with_resource(RESOURCE_ID_IMAGE_SECOND_AROWS1); s_time_angles_layer = bitmap_layer_create(GRect(43, 107, 55, 5)); bitmap_layer_set_bitmap(s_time_angles_layer, s_time_angles_bmp); layer_add_child(window_get_root_layer(window), bitmap_layer_get_layer(s_time_angles_layer)); // Initialize hours layers init_text_layer(&hours_1st_layer, GRect(4, 54, 32, 36), s_orbitron_font_36); init_text_layer(&hours_2nd_layer, GRect(35, 54, 32, 36), s_orbitron_font_36); init_text_layer(&minutes_1st_layer, GRect(75, 54, 32, 36), s_orbitron_font_36); init_text_layer(&minutes_2nd_layer, GRect(105, 54, 32, 36), s_orbitron_font_36); init_text_layer(&seconds_1st_layer, GRect(53, 95, 18, 20), s_orbitron_font_20); init_text_layer(&seconds_2nd_layer, GRect(71, 95, 18, 20), s_orbitron_font_20); init_text_layer(&date_1st_layer, GRect(6, 140, 18, 20), s_orbitron_font_20); init_text_layer(&date_2nd_layer, GRect(19, 140, 28, 20), s_orbitron_font_20); init_text_layer(&date_delimiter_layer, GRect(35, 140, 28, 20), s_orbitron_font_20); init_text_layer(&date_3rd_layer, GRect(57, 140, 18, 20), s_orbitron_font_20); init_text_layer(&date_4th_layer, GRect(75, 140, 18, 20), s_orbitron_font_20); init_text_layer(&day_of_week_layer, GRect(98, 140, 40, 20), s_orbitron_font_20); // Initialize weather layer s_weather_layer = text_layer_create(GRect(0, -2, 144, 25)); text_layer_set_background_color(s_weather_layer, GColorClear); text_layer_set_text_color(s_weather_layer, GColorWhite); text_layer_set_text_alignment(s_weather_layer, GTextAlignmentCenter); text_layer_set_font(s_weather_layer, s_orbitron_font_20); text_layer_set_text(s_weather_layer, "Loading..."); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_weather_layer)); weatherCountdown = weatherCountdownInit; // Time to re-read weather values // Initialize battery lightning s_battery_lightning_bmp = gbitmap_create_with_resource(RESOURCE_ID_IMAGE_BATTERY_LIGHTNING); s_battery_lightning_layer = bitmap_layer_create(GRect(40, 39, 17, 14)); bitmap_layer_set_bitmap(s_battery_lightning_layer, s_battery_lightning_bmp); layer_add_child(window_get_root_layer(window), bitmap_layer_get_layer(s_battery_lightning_layer)); // Initialize battery layer s_battery_info_layer = text_layer_create(GRect(60, 36, 47, 25)); text_layer_set_background_color(s_battery_info_layer, GColorClear); text_layer_set_text_color(s_battery_info_layer, GColorWhite); text_layer_set_text_alignment(s_battery_info_layer, GTextAlignmentLeft); text_layer_set_font(s_battery_info_layer, s_orbitron_font_15); text_layer_set_text(s_battery_info_layer, "--%"); layer_add_child(window_get_root_layer(window), text_layer_get_layer(s_battery_info_layer)); // To launch time changing handler time_t now = time(NULL); handle_timechanges(localtime(&now), SECOND_UNIT); // Subscribe to time changing events tick_timer_service_subscribe(SECOND_UNIT, handle_timechanges); // Push the window window_stack_push(window, true); // Register callbacks for messages system AppMessage app_message_register_inbox_received(inbox_received_callback); app_message_register_inbox_dropped(inbox_dropped_calback); app_message_register_outbox_failed(outbox_failed_callback); app_message_register_outbox_sent(outbox_sent_callback); // Register battery state callback battery_state_service_subscribe(battery_callback); battery_callback(battery_state_service_peek()); // get initial value // Open AppMessage app_message_open(app_message_inbox_size_maximum(), app_message_outbox_size_maximum()); }