// // sets up the display // void handle_init(AppContextRef ctx) { (void)ctx; window_init(&window, "Simplicity"); window_stack_push(&window, true /* Animated */); window_set_background_color(&window, GColorBlack); resource_init_current_app(&APP_RESOURCES); // // Load the bitmaps // bmp_init_container( RESOURCE_ID_IMAGE_PIC1, &_pic1 ); bmp_init_container( RESOURCE_ID_IMAGE_PIC2, &_pic2 ); bmp_init_container( RESOURCE_ID_IMAGE_PIC3, &_pic3 ); // // create the bitmap layer at the back // bitmap_layer_init( &_currentPicture, GRect(0,0, 144, 168) ); layer_add_child( &window.layer, &_currentPicture.layer ); // // load the font we are using // GFont font = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_ROBOTO_CONDENSED_21)); // // create the text layers // setupTextLayer( &_currentDate, &window, 2, 168-21, 144-4, 21, font ); setupTextLayer( &_currentTime, &window, 2, 168-42, 144-4, 21, font ); }
static void app_init(AppContextRef c) { s_data.current_icon = 0; resource_init_current_app(&WEATHER_APP_RESOURCES); Window* window = &s_data.window; window_init(window, "PebbleWeather"); window_set_background_color(window, GColorBlack); window_set_fullscreen(window, true); // Weather icon layer GRect icon_rect = (GRect) {(GPoint) {32, 10}, (GSize) { 80, 80 }}; bitmap_layer_init(&s_data.icon_layer, icon_rect); layer_add_child(&window->layer, &s_data.icon_layer.layer); // Temperature text layer text_layer_init(&s_data.temperature_layer, GRect(0, 100, 144, 34)); text_layer_set_text_color(&s_data.temperature_layer, GColorWhite); text_layer_set_background_color(&s_data.temperature_layer, GColorClear); text_layer_set_font(&s_data.temperature_layer, fonts_get_system_font(FONT_KEY_GOTHIC_28_BOLD)); text_layer_set_text_alignment(&s_data.temperature_layer, GTextAlignmentCenter); layer_add_child(&window->layer, &s_data.temperature_layer.layer); // Time text layer text_layer_init(&s_data.time_layer, GRect(0, 134, 144, 34)); text_layer_set_text_color(&s_data.time_layer, GColorWhite); text_layer_set_background_color(&s_data.time_layer, GColorClear); text_layer_set_font(&s_data.time_layer, fonts_get_system_font(FONT_KEY_GOTHIC_28_BOLD)); text_layer_set_text_alignment(&s_data.time_layer, GTextAlignmentCenter); handle_minute_tick(c, NULL); layer_add_child(&window->layer, &s_data.time_layer.layer); // Watch <--> Phone communication Tuplet initial_values[] = { TupletInteger(WEATHER_ICON_KEY, (uint8_t) 1), TupletCString(WEATHER_TEMPERATURE_KEY, "-\u00B0C"), }; app_sync_init(&s_data.sync, s_data.sync_buffer, sizeof(s_data.sync_buffer), initial_values, ARRAY_LENGTH(initial_values), sync_tuple_changed_callback, sync_error_callback, NULL); request_weather_update(); window_stack_push(window, true); }
void handle_init(AppContextRef ctx) { (void)ctx; window_init(&window, "Nanji"); // window_set_background_color(&window, GColorBlack); window_stack_push(&window, true /* Animated */); resource_init_current_app(&NANJI_DESUKA); /* Label for year */ bmp_init_container(RESOURCE_ID_IMG_YEAR1, &image_lbl_yr1); layer_set_frame(&image_lbl_yr1.layer.layer, GRect(SCREENW - SMALL_W, 0, SMALL_W, SMALL_H)); layer_add_child(&window.layer, &image_lbl_yr1.layer.layer); bmp_init_container(RESOURCE_ID_IMG_YEAR2, &image_lbl_yr2); layer_set_frame(&image_lbl_yr2.layer.layer, GRect(SCREENW - SMALL_W, SMALL_H, SMALL_W, SMALL_H)); layer_add_child(&window.layer, &image_lbl_yr2.layer.layer); bmp_init_container(RESOURCE_ID_IMG_FUJI, &image_bg); layer_set_frame(&image_bg.layer.layer, GRect(SCREENW - LANDS_W, SCREENH - LANDS_H, LANDS_W, LANDS_H)); layer_add_child(&window.layer, &image_bg.layer.layer); bmp_init_container(RESOURCE_ID_IMG_WEEKD1, &image_lbl_wd1); layer_set_frame(&image_lbl_wd1.layer.layer, GRect(SCREENW - 4*SMALL_W, 1*SMALL_H, SMALL_W, SMALL_H)); layer_add_child(&window.layer, &image_lbl_wd1.layer.layer); bmp_init_container(RESOURCE_ID_IMG_WEEKD2, &image_lbl_wd2); layer_set_frame(&image_lbl_wd2.layer.layer, GRect(SCREENW - 4*SMALL_W, 2*SMALL_H, SMALL_W, SMALL_H)); layer_add_child(&window.layer, &image_lbl_wd2.layer.layer); bmp_init_container(RESOURCE_ID_IMG_YEARS, &image_lbl_yr); layer_add_child(&window.layer, &image_lbl_yr.layer.layer); bmp_init_container(RESOURCE_ID_IMG_MONTHS, &image_lbl_mt); layer_add_child(&window.layer, &image_lbl_mt.layer.layer); bmp_init_container(RESOURCE_ID_IMG_DAYS, &image_lbl_dy); layer_add_child(&window.layer, &image_lbl_dy.layer.layer); // bmp_init_container(RESOURCE_ID_IMG_WMON, &image_lbl_wd); // layer_add_child(&window.layer, &image_lbl_wd.layer.layer); bmp_init_container(RESOURCE_ID_IMG_HOURS, &image_lbl_hr); layer_add_child(&window.layer, &image_lbl_hr.layer.layer); bmp_init_container(RESOURCE_ID_IMG_MINUTES, &image_lbl_mn); layer_add_child(&window.layer, &image_lbl_mn.layer.layer); bmp_init_container(RESOURCE_ID_IMG_MORNING, &img_morning); bmp_init_container(RESOURCE_ID_IMG_NOON, &img_noon); bmp_init_container(RESOURCE_ID_IMG_NIGHT, &img_night); layer_set_frame(&img_morning.layer.layer, GRect(SCREENW - 5*SMALL_W, digit_used*SMALL_H, SMALL_W, SMALL_H)); layer_set_frame(&img_noon.layer.layer, GRect(SCREENW - 5*SMALL_W, digit_used*SMALL_H, SMALL_W, SMALL_H)); layer_set_frame(&img_night.layer.layer, GRect(SCREENW - 5*SMALL_W, digit_used*SMALL_H, SMALL_W, SMALL_H)); layer_add_child(&window.layer, &img_morning.layer.layer); layer_add_child(&window.layer, &img_noon.layer.layer); layer_add_child(&window.layer, &img_night.layer.layer); bmp_init_container(RESOURCE_ID_IMG_S0, &image_numbers_small[0]); bmp_init_container(RESOURCE_ID_IMG_S1, &image_numbers_small[1]); bmp_init_container(RESOURCE_ID_IMG_S2, &image_numbers_small[2]); bmp_init_container(RESOURCE_ID_IMG_S3, &image_numbers_small[3]); bmp_init_container(RESOURCE_ID_IMG_S4, &image_numbers_small[4]); bmp_init_container(RESOURCE_ID_IMG_S5, &image_numbers_small[5]); bmp_init_container(RESOURCE_ID_IMG_S6, &image_numbers_small[6]); bmp_init_container(RESOURCE_ID_IMG_S7, &image_numbers_small[7]); bmp_init_container(RESOURCE_ID_IMG_S8, &image_numbers_small[8]); bmp_init_container(RESOURCE_ID_IMG_S9, &image_numbers_small[9]); bmp_init_container(RESOURCE_ID_IMG_S10, &image_numbers_small[10]); // bmp_init_container(RESOURCE_ID_IMG_L0, &image_numbers_large[0]); // bmp_init_container(RESOURCE_ID_IMG_L1, &image_numbers_large[1]); // bmp_init_container(RESOURCE_ID_IMG_L2, &image_numbers_large[2]); // bmp_init_container(RESOURCE_ID_IMG_L3, &image_numbers_large[3]); // bmp_init_container(RESOURCE_ID_IMG_L4, &image_numbers_large[4]); // bmp_init_container(RESOURCE_ID_IMG_L5, &image_numbers_large[5]); // bmp_init_container(RESOURCE_ID_IMG_L6, &image_numbers_large[6]); // bmp_init_container(RESOURCE_ID_IMG_L7, &image_numbers_large[7]); // bmp_init_container(RESOURCE_ID_IMG_L8, &image_numbers_large[8]); // bmp_init_container(RESOURCE_ID_IMG_L9, &image_numbers_large[9]); // bmp_init_container(RESOURCE_ID_IMG_L10, &image_numbers_large[10]); bmp_init_container(RESOURCE_ID_IMG_WSUN, &image_week_days[0]); bmp_init_container(RESOURCE_ID_IMG_WMON, &image_week_days[1]); bmp_init_container(RESOURCE_ID_IMG_WTUE, &image_week_days[2]); bmp_init_container(RESOURCE_ID_IMG_WWED, &image_week_days[3]); bmp_init_container(RESOURCE_ID_IMG_WTHU, &image_week_days[4]); bmp_init_container(RESOURCE_ID_IMG_WFRI, &image_week_days[5]); bmp_init_container(RESOURCE_ID_IMG_WSAT, &image_week_days[6]); for (int i = 0; i < 3; ++i) { bitmap_layer_init(&bml_year[i], GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_year[i].layer); bitmap_layer_init(&bml_month[i], GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_month[i].layer); bitmap_layer_init(&bml_day[i], GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_day[i].layer); bitmap_layer_init(&bml_hour[i], GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_hour[i].layer); bitmap_layer_init(&bml_minute[i], GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_minute[i].layer); } bitmap_layer_init(&bml_weekday, GRect(0, 0, SMALL_W, SMALL_W)); layer_add_child(&window.layer, &bml_weekday.layer); handle_minute_tick(ctx, NULL); }
// // sets up the display // void handle_init(AppContextRef ctx) { (void)ctx; window_init(&window, "Simplicity"); window_stack_push(&window, true /* Animated */); window_set_background_color(&window, GColorBlack); window_set_fullscreen(&window, true); resource_init_current_app(&APP_RESOURCES); window_set_click_config_provider(&window, (ClickConfigProvider) config_provider); // // Initialize the bitmap linking arrays to link nowhere. // for(int i=0;i<_totalImages;i++) { _targetImage[i]=-1; _nextImage[i]=-1; _prevImage[i]=-1; } // //Slide group setup // //id is incremented for each resourceID we set. //remember to set the 4 array sizes to to number of images up in the global declarations. // int id=0; //start with ID 0. _bmpResourceID[id] = RESOURCE_ID_NAV_IMAGE_001; _targetImage[id] = id+7; //Fandom //fandom is 7 slides forward. select should take us there. _prevImage[id] = id+4; //for slide 0, up button should jump four slides forward to wrap menu. bmp_init_container( _bmpResourceID[id], &_image0); //assign to _image0 so that inital screendraw can happen. _bmpResourceID[++id] = RESOURCE_ID_NAV_IMAGE_002; _targetImage[id] = id+15; //fantasy //fantasy is currently 13 slides forward. select should take us there. _bmpResourceID[++id] = RESOURCE_ID_NAV_IMAGE_003; _targetImage[id] = id+11; //family //alas, these offsets are somewhat fragile. _bmpResourceID[++id] = RESOURCE_ID_NAV_IMAGE_004; _targetImage[id] = id+18; //mockups _bmpResourceID[++id] = RESOURCE_ID_NAV_IMAGE_005; _targetImage[id] = id+1; //help _nextImage[id] = id-4; //for slide 4, down button should jump four slides backward to wrap menu. //Help Group _bmpResourceID[++id] = RESOURCE_ID_HELP_IMAGE_001; _prevImage[id] = id+1; _bmpResourceID[++id] = RESOURCE_ID_HELP_IMAGE_002; _nextImage[id] = id-1; //Fandom Group _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_001; _prevImage[id] = id+5; _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_002; _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_003; _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_004; _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_005; _bmpResourceID[++id] = RESOURCE_ID_FANDOM_IMAGE_006; _nextImage[id] = id-5; //Family Group _bmpResourceID[++id] = RESOURCE_ID_FAMILY_IMAGE_001; _prevImage[id] = id+2; _bmpResourceID[++id] = RESOURCE_ID_FAMILY_IMAGE_002; _bmpResourceID[++id] = RESOURCE_ID_FAMILY_IMAGE_003; _nextImage[id] = id-2; //Fantasy Group _bmpResourceID[++id] = RESOURCE_ID_FANTASY_IMAGE_001; _prevImage[id] = id+4; _bmpResourceID[++id] = RESOURCE_ID_FANTASY_IMAGE_002; _bmpResourceID[++id] = RESOURCE_ID_FANTASY_IMAGE_003; _bmpResourceID[++id] = RESOURCE_ID_FANTASY_IMAGE_004; _bmpResourceID[++id] = RESOURCE_ID_FANTASY_IMAGE_005; _nextImage[id] = id-4; //Mockups Group _bmpResourceID[++id] = RESOURCE_ID_MOCKUP_IMAGE_001; _prevImage[id] = id+4; _bmpResourceID[++id] = RESOURCE_ID_MOCKUP_IMAGE_002; _bmpResourceID[++id] = RESOURCE_ID_MOCKUP_IMAGE_003; _bmpResourceID[++id] = RESOURCE_ID_MOCKUP_IMAGE_004; _bmpResourceID[++id] = RESOURCE_ID_MOCKUP_IMAGE_005; _nextImage[id] = id-4; // //Slide group setup end // // // create the bitmap layer at the back // bitmap_layer_init( &_currentPicture, GRect(0,0, 144, 168) ); layer_add_child( &window.layer, &_currentPicture.layer ); ScreenChange(0); // do initial screen draw. // // set the font we are using for time display. // GFont font = fonts_get_system_font(FONT_KEY_GOTHIC_24_BOLD); GFont font2 = fonts_get_system_font(FONT_KEY_GOTHIC_18); //fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_ROBOTO_CONDENSED_21)); // // create the text layers // setupTextLayer( &_currentDate, &window, 0, 168-23, 144, 23, font2, GColorWhite, GColorBlack, GTextAlignmentRight); setupTextLayer( &_currentTime, &window, 0, 168-28, 144, 28, font, GColorWhite, GColorClear, GTextAlignmentLeft); layer_set_hidden(&_currentTime.layer, _hidingTime); layer_set_hidden(&_currentDate.layer, _hidingTime); }
bool bmp_init_container(int resource_id, BmpContainer *c) { c->data=gbitmap_init_from_resource (&c->bmp,resource_id); bitmap_layer_init (&c->layer,c->bmp.bounds); bitmap_layer_set_bitmap (&c->layer,&c->bmp); return c->data!=0; }
void handle_init(AppContextRef ctx) { if (clock_is_24h_style()) { format_time = "%H:%M"; format_date = "%d-%m-%Y"; } else { format_time = "%I:%M"; format_date = "%m/%d/%Y"; } update_time(); resource_init_current_app(&APP_RESOURCES); ubuntu_time = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_UBUNTU_BOLD_50)); ubuntu_date = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_UBUNTU_16)); ubuntu_text = fonts_load_custom_font(resource_get_handle(RESOURCE_ID_FONT_UBUNTU_10)); window_init(&window, MY_NAME); window_stack_push(&window, true); text_layer_init(&layer_time, GRect(0, 20, 144, 54)); text_layer_set_font(&layer_time, ubuntu_time); text_layer_set_text(&layer_time, (const char*)&string_time); text_layer_set_text_alignment(&layer_time, GTextAlignmentCenter); layer_add_child(window_get_root_layer(&window), &layer_time.layer); text_layer_init(&layer_date, GRect(0, 74, 144, 20)); text_layer_set_font(&layer_date, ubuntu_date); text_layer_set_text(&layer_date, (const char*)&string_date); text_layer_set_text_alignment(&layer_date, GTextAlignmentCenter); layer_add_child(window_get_root_layer(&window), &layer_date.layer); bitmap_layer_init(&layer_battery, GRect(8, 140, 14, 8)); bitmap_layer_set_bitmap(&layer_battery, &bitmap_battery.bmp); layer_add_child(window_get_root_layer(&window), &layer_battery.layer); bitmap_layer_init(&layer_signal, GRect(8, 150, 14, 8)); bitmap_layer_set_bitmap(&layer_signal, &bitmap_signal.bmp); layer_add_child(window_get_root_layer(&window), &layer_signal.layer); bmp_init_container(RESOURCE_ID_PNG_CALL, &layer_call); layer_call.layer.layer.frame.origin.x = 142 - 8 - 9; layer_call.layer.layer.frame.origin.y = 140; layer_add_child(window_get_root_layer(&window), &layer_call.layer.layer); bmp_init_container(RESOURCE_ID_PNG_MESSAGE, &layer_message); layer_message.layer.layer.frame.origin.x = 142 - 8 - 9; layer_message.layer.layer.frame.origin.y = 150; layer_add_child(window_get_root_layer(&window), &layer_message.layer.layer); text_layer_init(&layer_numbercall, GRect(101, 138, 22, 10)); text_layer_set_font(&layer_numbercall, ubuntu_text); text_layer_set_text(&layer_numbercall, (const char*)&string_call); text_layer_set_text_alignment(&layer_numbercall, GTextAlignmentRight); layer_add_child(window_get_root_layer(&window), &layer_numbercall.layer); text_layer_init(&layer_numbermessage, GRect(101, 148, 22, 10)); text_layer_set_font(&layer_numbermessage, ubuntu_text); text_layer_set_text(&layer_numbermessage, (const char*)&string_message); text_layer_set_text_alignment(&layer_numbermessage, GTextAlignmentRight); layer_add_child(window_get_root_layer(&window), &layer_numbermessage.layer); update_stats(); request_command(REACTOR_COMMAND_REFRESH); }