コード例 #1
0
ファイル: arrivals.c プロジェクト: chrissmall22/pebbus
void arrivals_init_menu(char *stop) {
	static char title[16];
	snprintf(title, sizeof(title), "Arrivals: %s", current_stop_id);

	window_init(&arrival_window, title);

	//15px to make room for the title bar.
	menu_layer_init(&_arrivalsMenu, GRect(0, 0, arrival_window.layer.frame.size.w, arrival_window.layer.frame.size.h-15));
	menu_layer_set_click_config_onto_window(&_arrivalsMenu, &arrival_window);

	static MenuLayerCallbacks arrivals_callbacks = {
		.draw_header = arrivals_draw_header,
		.draw_row = arrivals_draw_row,
		.get_cell_height = arrivals_get_cell_height,
		.get_header_height = arrivals_get_header_height,
		.get_num_rows = arrivals_get_num_rows,
		.get_num_sections = arrivals_get_num_sections,
		.select_click = arrivals_select_click,
		.select_long_click = arrivals_select_long_click,
		.selection_changed = arrivals_selection_changed
	};

	menu_layer_set_callbacks(&_arrivalsMenu, ctx, arrivals_callbacks);

	layer_add_child(&arrival_window.layer, menu_layer_get_layer(&_arrivalsMenu));

	window_stack_push(&arrival_window, true);

	arrivalsCount = 0;
	http_request_arrivals(stop);

}
コード例 #2
0
void handle_init(AppContextRef ctx) {
	resource_init_current_app(&HOUSECONTROL);
	
	window_init(&homeWindow, "Group Selection");
	WindowHandlers handlers = {
		.appear = &handle_home_window_appear
	};
	window_set_window_handlers(&homeWindow, handlers);
	window_stack_push(&homeWindow, true /* Animated */);
	
	window_init(&groupWindow, "Device Selection");
	WindowHandlers handlers2 = {
		.appear = &handle_group_window_appear
	};
	window_set_window_handlers(&groupWindow, handlers2);
	
	window_init(&deviceWindow, "Device");
	WindowHandlers handlers3 = {
		.appear = &handle_device_window_appear
	};
	window_set_window_handlers(&deviceWindow, handlers3);
	
	//HOME LAYER
	GRect bounds = homeWindow.layer.bounds;
	menu_layer_init(&homeLayer, bounds);
	
	menu_layer_set_callbacks(&homeLayer, NULL, (MenuLayerCallbacks){
		.get_num_rows		= menu_home_get_num_rows,
		.draw_row 			= menu_home_draw_row,
		.select_click 		= menu_home_select_click
	});
コード例 #3
0
ファイル: Inbox.c プロジェクト: k9topebble/k9topebble-pebble
void InboxCreate()
{
	window_init	(&s_window, "email window");
	window_set_fullscreen(&s_window, true);
	menu_layer_init	(&s_menu_layer, s_window.layer.frame);
	layer_add_child(&s_window.layer, &s_menu_layer.scroll_layer.layer);
	s_waitingForData = false;
	menu_layer_set_callbacks(&s_menu_layer,  0, s_callbacks);

	menu_layer_set_click_config_onto_window	(&s_menu_layer, &s_window);

	WindowHandlers wh =  {.appear = s_appear, .disappear = s_disapear};

	window_set_window_handlers(&s_window, wh);

}
コード例 #4
0
ファイル: menuDemo.c プロジェクト: rcarlsen/pebble
void handle_init(AppContextRef ctx) {
  (void)ctx;

  window_init(&window, "Window Name");
  window_stack_push(&window, true /* Animated */);


  menuCallbacks = (MenuLayerCallbacks) {
    .get_num_rows = num_rows,
    .get_num_sections = num_sections,
    .draw_row = draw_row,
    .selection_changed = selection_changed
  };

  menu_layer_init(&menu,GRect(0,0,144,168-16));
  menu_layer_set_callbacks(&menu, NULL, menuCallbacks);

  layer_add_child(&window.layer, menu_layer_get_layer(&menu));

  // Attach our desired button functionality
  window_set_click_config_provider(&window, (ClickConfigProvider) click_config_provider);
}