Example #1
0
/* this registers the appropriate function to the appropriate button */
void config_provider(void *context) {
   window_single_click_subscribe(BUTTON_ID_SELECT, select_click_handler);
   window_single_click_subscribe(BUTTON_ID_UP, up_click_handler);
   window_single_click_subscribe(BUTTON_ID_DOWN, down_click_handler);
   window_multi_click_subscribe(BUTTON_ID_UP, 2, 10, 0, true, up_multi_click_handler);
   window_multi_click_subscribe(BUTTON_ID_SELECT, 2, 10, 0, true, select_multi_click_handler);
   window_multi_click_subscribe(BUTTON_ID_DOWN, 2, 10, 0, true, down_multi_click_handler);
}
Example #2
0
static void click_config_provider(void *context) {


  window_single_click_subscribe(BUTTON_ID_SELECT, select_click_handler);
  window_single_click_subscribe(BUTTON_ID_UP, up_click_handler);
  window_single_click_subscribe(BUTTON_ID_DOWN, down_click_handler);
  window_long_click_subscribe(BUTTON_ID_SELECT, 700, select_long_click_handler, NULL);
  window_long_click_subscribe(BUTTON_ID_UP, 700, up_long_click_handler, NULL);
  window_long_click_subscribe(BUTTON_ID_DOWN, 700, down_long_click_handler, NULL);
  window_multi_click_subscribe(BUTTON_ID_SELECT, 2, 10, 0, true, select_multi_click_handler);
  window_multi_click_subscribe(BUTTON_ID_UP, 2, 10, 0, true, up_multi_click_handler);
  window_multi_click_subscribe(BUTTON_ID_DOWN, 2, 10, 0, true, down_multi_click_handler);
  
}
Example #3
0
static void click_config_provider(void *context) {
  window_single_click_subscribe(BUTTON_ID_SELECT, select_click_handler);
  window_single_click_subscribe(BUTTON_ID_UP, up_click_handler);
  window_single_click_subscribe(BUTTON_ID_DOWN, down_click_handler);
  window_long_click_subscribe(BUTTON_ID_SELECT, 0, long_select_handler, NULL);
  window_long_click_subscribe(BUTTON_ID_UP, 0, long_up_handler, NULL);
  window_long_click_subscribe(BUTTON_ID_DOWN, 0, long_down_handler, NULL);
  window_multi_click_subscribe(BUTTON_ID_SELECT, 2, 4, 200, true, select_multi_click_handler);
}
static void config_provider(void *context) {
  // single click / repeat-on-hold config:
  const uint16_t repeat_interval_ms = 1000;
  window_single_repeating_click_subscribe(BUTTON_ID_SELECT, repeat_interval_ms, select_single_click_handler);

  // multi click config:
  window_multi_click_subscribe(BUTTON_ID_SELECT, 2, 10, 0, true, select_multi_click_handler);

  // long click config:
  window_long_click_subscribe(BUTTON_ID_SELECT, 700, select_long_click_handler, select_long_click_release_handler);
}
static void local_click_config_provider_wrapper(  ButtonId button_id, void* context )
{
    if ( config_enabled( button_id, CLICKTYPE_SINGLE ) )
        window_single_click_subscribe( button_id, local_click_handler_single ); // single click
    if ( config_enabled( button_id, CLICKTYPE_LONG ) )
        window_long_click_subscribe( button_id, 0, NULL, local_click_handler_long ); // long click, call on up
    if ( config_enabled( button_id, CLICKTYPE_MULTI ) )
        window_multi_click_subscribe( button_id, 2, 2, 0, true, local_click_handler_multi ); // double click, call on last

    window_set_click_context( button_id, context);
}
Example #6
0
void click_config_provider(Window *window) {
	
	//	Single Click Up Action
	window_single_click_subscribe(BUTTON_ID_UP, up_single_click_handler);
	
	//	Single Click Down
	window_single_click_subscribe(BUTTON_ID_DOWN, down_single_click_handler);
	
	//	Single Click Select
	window_single_click_subscribe(BUTTON_ID_SELECT, select_single_click_handler);
	
	//	Long Click Select
	window_multi_click_subscribe(BUTTON_ID_SELECT, 2, 10, 0 , true, select_multi_click_handler);
}
static void prv_click_config_provider(void *context) {
  // Using multi-click instead of single-click will allow the action bar animation to complete
  const uint8_t min_clicks = 1;
  const uint8_t max_clicks = 2;
  const uint16_t timeout_ms = 25;
  const bool last_click_only = true;
  window_multi_click_subscribe(BUTTON_ID_SELECT, min_clicks, max_clicks, timeout_ms,
                               last_click_only, prv_select_click_handler);

  const uint16_t repeat_interval_ms = 50;
  window_single_repeating_click_subscribe(BUTTON_ID_UP, repeat_interval_ms, prv_up_click_handler);
  window_single_repeating_click_subscribe(BUTTON_ID_DOWN, repeat_interval_ms,
                                          prv_down_click_handler);

  window_set_click_context(BUTTON_ID_SELECT, context);
}
Example #8
0
void window_multi_click_subscribe__patch(ButtonId button_id, uint8_t min_clicks, uint8_t max_clicks, uint16_t timeout, bool last_click_only, ClickHandler handler) {
  button_id = remap[button_id];
  window_multi_click_subscribe(button_id, min_clicks, max_clicks, timeout, last_click_only, handler);
}
void config_provider(Window *window) {
// single click / repeat-on-hold config:

    // multi click config:
    window_multi_click_subscribe(BUTTON_ID_SELECT, 4, 6, 0, true, select_multi_click_handler);
}