コード例 #1
0
static void IdlePageGameOfLifeConfigButtons(struct IdleInfo *Info)
{
    /* map this mode's entry button to go back to the idle mode */
    EnableButtonAction(IDLE_MODE,
                       SW_F_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       IdleUpdate,
                       RESET_DISPLAY_TIMER);

    EnableButtonAction(IDLE_MODE,
                       SW_E_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       ListPairedDevicesMsg,
                       NO_MSG_OPTIONS);

    /* led is already assigned */

    EnableButtonAction(IDLE_MODE,
                       SW_C_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       MenuModeMsg,
                       MENU_MODE_OPTION_PAGE1);

    DisableButtonAction(IDLE_MODE,
                        SW_B_INDEX,
                        BUTTON_STATE_IMMEDIATE);

    EnableButtonAction(IDLE_MODE,
                       SW_A_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       RESET_DISPLAY_TIMER);
}
コード例 #2
0
void IdlePageQrCodeConfigButtons(void)
{
    EnableButtonAction(IDLE_MODE,
                       SW_F_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       QRBUTTON_EXIT);

    EnableButtonAction(IDLE_MODE,
                       SW_E_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       QRBUTTON_EXIT);

    /* led is already assigned */

    EnableButtonAction(IDLE_MODE,
                       SW_C_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       QRBUTTON_LEFT);

    EnableButtonAction(IDLE_MODE,
    				   SW_B_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       QRBUTTON_FIRE);

    EnableButtonAction(IDLE_MODE,
                       SW_A_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       QRBUTTON_RIGHT);
}
コード例 #3
0
static void DontChangeButtonConfiguration(void)
{
  /* assign LED button to all modes */
  for ( unsigned char i = 0; i < NUMBER_OF_MODES; i++ )
  {
    /* turn off led 3 seconds after button has been released */
    EnableButtonAction(i,
                       SW_D_INDEX,
                       BUTTON_STATE_PRESSED,
                       LedChange,
                       LED_START_OFF_TIMER);
    
    /* turn on led immediately when button is pressed */
    EnableButtonAction(i,
                       SW_D_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       LedChange,
                       LED_ON_OPTION);
    
    /* software reset is available in all modes */    
    EnableButtonAction(i,
                       SW_F_INDEX,
                       BUTTON_STATE_LONG_HOLD,
                       SoftwareResetMsg,
                       MASTER_RESET_OPTION);
  
  }

}
コード例 #4
0
ファイル: Menu.c プロジェクト: Rodini/MetaWatch-WDS11x-IAR
void menu_config_buttons(void)
{
	struct menu const *m = menu_current();
	int i;
	for(i = 0; i < MENU_ITEMS; ++i)
	{
		 EnableButtonAction(IDLE_MODE,
				 index2buttonindex[i],
				 m->items[i].ButtonPressType,
				 MenuButtonMsg,
				 index2buttonmsgoption[i]);
	}
    EnableButtonAction(IDLE_MODE,
                       SW_C_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       MenuButtonMsg,
                       MENU_BUTTON_EXIT);
}
コード例 #5
0
/*! Attach callback to button press type. Each button press type is associated
 * with a display mode.
 *
 * No error checking
 *
 * \param tHostMsg* pMsg - A message with a tButtonActionPayload payload
 */
static void EnableButtonMsgHandler(tMessage* pMsg)
{
  tButtonActionPayload* pButtonActionPayload =
    (tButtonActionPayload*)pMsg->pBuffer;

  EnableButtonAction(pButtonActionPayload->DisplayMode,
                     pButtonActionPayload->ButtonIndex,
                     pButtonActionPayload->ButtonPressType,
                     pButtonActionPayload->CallbackMsgType,
                     pButtonActionPayload->CallbackMsgOptions);

}
コード例 #6
0
ファイル: IdlePageMain.c プロジェクト: kiapper/Watch
void IdlePageMainConfigButtons(struct IdleInfo *Info)
{

	  //etConnectionState cs = QueryConnectionState();

	  //switch (cs)
	  //{
	  //case Initializing:       CurrentIdlePage = BluetoothOffPage;              break;
	  //case ServerFailure:      CurrentIdlePage = BluetoothOffPage;              break;
	  //case RadioOn:            CurrentIdlePage = RadioOnWithoutPairingInfoPage; break;
	  //case Paired:             CurrentIdlePage = RadioOnWithPairingInfoPage;    break;
	  //case Connected:          CurrentIdlePage = NormalPage;                    break;
	  //case RadioOff:           CurrentIdlePage = BluetoothOffPage;              break;
	  //case RadioOffLowBattery: CurrentIdlePage = BluetoothOffPage;              break;
	  //case ShippingMode:       CurrentIdlePage = BluetoothOffPage;              break;
	  //default:                 CurrentIdlePage = BluetoothOffPage;              break;
	etConnectionState cs = QueryConnectionState();
	switch (cs)
	{
	case RadioOff:
	case RadioOffLowBattery:
	case ShippingMode:
	case Initializing:
	case ServerFailure:
	case RadioOn:

        break;


	case Paired:
	case Connected:
    EnableButtonAction(IDLE_MODE,
                       SW_F_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       WatchStatusMsg,
                       RESET_DISPLAY_TIMER);

    EnableButtonAction(IDLE_MODE,
                       SW_E_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       ListPairedDevicesMsg,
                       NO_MSG_OPTIONS);

    EnableButtonAction(IDLE_MODE,
                       SW_C_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       MenuModeMsg,
                       MENU_MODE_OPTION_PAGE1);

    EnableButtonAction(IDLE_MODE,
                       SW_B_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       ToggleSecondsMsg,
                       TOGGLE_SECONDS_OPTIONS_UPDATE_IDLE);

    EnableButtonAction(IDLE_MODE,
                       SW_A_INDEX,
                       BUTTON_STATE_IMMEDIATE,
                       BarCode,
                       RESET_DISPLAY_TIMER);
	}
}