Example #1
0
//
// 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 );
}
Example #2
0
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);

}
Example #3
0
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);
}
Example #4
0
//
// 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);
}
Example #5
0
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;
}
Example #6
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);
}