Exemplo n.º 1
0
  void
  RemapClass::Item::remap(RemapConsumerParams& remapParams)
  {
    if (remapParams.params.ex_iskeydown) {
      if (isblocked()) return;
    } else {
      // We ignore filters_ if active_ is set at KeyDown.
      if (isblocked() && ! active_) return;
    }

#define CALL_UNION_FUNCTION(POINTER) {         \
    if (POINTER) {                             \
      if ((POINTER)->remap(remapParams)) {     \
        if (remapParams.params.ex_iskeydown) { \
          active_ = true;                      \
        } else {                               \
          active_ = false;                     \
        }                                      \
      }                                        \
    }                                          \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_CONSUMERTOCONSUMER:  CALL_UNION_FUNCTION(p_.consumerToConsumer);  break;
      case BRIDGE_REMAPTYPE_CONSUMERTOKEY:       CALL_UNION_FUNCTION(p_.consumerToKey);       break;
      case BRIDGE_REMAPTYPE_HOLDINGKEYTOKEY:     CALL_UNION_FUNCTION(p_.holdingKeyToKey);     break;
      case BRIDGE_REMAPTYPE_KEYOVERLAIDMODIFIER: CALL_UNION_FUNCTION(p_.keyOverlaidModifier); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 2
0
  void
  RemapClass::Item::remap(RemapParams& remapParams)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {              \
    if (POINTER) { (POINTER)->remap(remapParams); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_KEYTOKEY:                   CALL_UNION_FUNCTION(p_.keyToKey);                   break;
      case BRIDGE_REMAPTYPE_KEYTOCONSUMER:              CALL_UNION_FUNCTION(p_.keyToConsumer);              break;
      case BRIDGE_REMAPTYPE_KEYTOPOINTINGBUTTON:        CALL_UNION_FUNCTION(p_.keyToPointingButton);        break;
      case BRIDGE_REMAPTYPE_DOUBLEPRESSMODIFIER:        CALL_UNION_FUNCTION(p_.doublePressModifier);        break;
      case BRIDGE_REMAPTYPE_HOLDINGKEYTOKEY:            CALL_UNION_FUNCTION(p_.holdingKeyToKey);            break;
      case BRIDGE_REMAPTYPE_IGNOREMULTIPLESAMEKEYPRESS: CALL_UNION_FUNCTION(p_.ignoreMultipleSameKeyPress); break;
      case BRIDGE_REMAPTYPE_KEYOVERLAIDMODIFIER:        CALL_UNION_FUNCTION(p_.keyOverlaidModifier);        break;
      case BRIDGE_REMAPTYPE_SIMULTANEOUSKEYPRESSES:     CALL_UNION_FUNCTION(p_.simultaneousKeyPresses);     break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 3
0
  void
  RemapClass::Item::call_disabled_callback(void)
  {
#define CALL_UNION_FUNCTION(POINTER) {               \
    if (POINTER) { (POINTER)->disabled_callback(); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_KEYTOKEY:            CALL_UNION_FUNCTION(p_.keyToKey);            break;
      case BRIDGE_REMAPTYPE_POINTINGBUTTONTOKEY: CALL_UNION_FUNCTION(p_.pointingButtonToKey); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 4
0
  void
  RemapClass::Item::remap(RemapPointingParams_scroll& remapParams)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {              \
    if (POINTER) { (POINTER)->remap(remapParams); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_DROPSCROLLWHEEL:              CALL_UNION_FUNCTION(p_.dropScrollWheel);              break;
      case BRIDGE_REMAPTYPE_STRIPMODIFIERFROMSCROLLWHEEL: CALL_UNION_FUNCTION(p_.stripModifierFromScrollWheel); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 5
0
  void
  RemapClass::Item::remap(RemapConsumerParams& remapParams)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {              \
    if (POINTER) { (POINTER)->remap(remapParams); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_CONSUMERTOCONSUMER: CALL_UNION_FUNCTION(p_.consumerToConsumer); break;
      case BRIDGE_REMAPTYPE_CONSUMERTOKEY:      CALL_UNION_FUNCTION(p_.consumerToKey);      break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 6
0
  void
  RemapClass::Item::remap(RemapPointingParams_relative& remapParams)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {              \
    if (POINTER) { (POINTER)->remap(remapParams); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_DROPPOINTINGRELATIVECURSORMOVE: CALL_UNION_FUNCTION(p_.dropPointingRelativeCursorMove); break;
      case BRIDGE_REMAPTYPE_POINTINGBUTTONTOKEY:            CALL_UNION_FUNCTION(p_.pointingButtonToKey);            break;
      case BRIDGE_REMAPTYPE_POINTINGBUTTONTOPOINTINGBUTTON: CALL_UNION_FUNCTION(p_.pointingButtonToPointingButton); break;
      case BRIDGE_REMAPTYPE_POINTINGRELATIVETOSCROLL:       CALL_UNION_FUNCTION(p_.pointingRelativeToScroll);       break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 7
0
  void
  RemapClass::Item::remap(RemapPointingParams_scroll& remapParams)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {              \
    if (POINTER) { (POINTER)->remap(remapParams); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_DROPSCROLLWHEEL:          CALL_UNION_FUNCTION(p_.dropScrollWheel);          break;
      case BRIDGE_REMAPTYPE_SCROLLWHEELTOSCROLLWHEEL: CALL_UNION_FUNCTION(p_.scrollWheelToScrollWheel); break;
      case BRIDGE_REMAPTYPE_SCROLLWHEELTOKEY:         CALL_UNION_FUNCTION(p_.scrollWheelToKey);         break;
      case BRIDGE_REMAPTYPE_HOLDINGKEYTOKEY:          CALL_UNION_FUNCTION(p_.holdingKeyToKey);          break;
      case BRIDGE_REMAPTYPE_KEYOVERLAIDMODIFIER:      CALL_UNION_FUNCTION(p_.keyOverlaidModifier);      break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 8
0
  void
  RemapClass::Item::remap_forcenumlockon(ListHookedKeyboard::Item* item)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {       \
    if (POINTER) { (POINTER)->remap(item); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_FORCENUMLOCKON: CALL_UNION_FUNCTION(p_.forceNumLockOn); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 9
0
  void
  RemapClass::Item::remap_setkeyboardtype(KeyboardType& keyboardType)
  {
    if (isblocked()) return;

#define CALL_UNION_FUNCTION(POINTER) {               \
    if (POINTER) { (POINTER)->remap(keyboardType); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_SETKEYBOARDTYPE: CALL_UNION_FUNCTION(p_.setKeyboardType); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }
Exemplo n.º 10
0
  bool
  RemapClass::Item::remap_SimultaneousKeyPresses(void)
  {
    if (isblocked()) return false;

#define CALL_UNION_FUNCTION(POINTER) {          \
    if (POINTER) { return (POINTER)->remap(); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_SIMULTANEOUSKEYPRESSES: CALL_UNION_FUNCTION(p_.simultaneousKeyPresses); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION

    return false;
  }
Exemplo n.º 11
0
  bool
  RemapClass::Item::drop(const Params_KeyboardEventCallBack& params)
  {
    if (isblocked()) return false;

#define CALL_UNION_FUNCTION(POINTER) {               \
    if (POINTER) { return (POINTER)->drop(params); } \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_DROPKEYAFTERREMAP: CALL_UNION_FUNCTION(p_.dropKeyAfterRemap); break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION

    return false;
  }
Exemplo n.º 12
0
  void
  RemapClass::Item::remap(RemapPointingParams_relative& remapParams)
  {
    if (remapParams.params.ex_isbuttondown) {
      if (isblocked()) return;
    } else {
      // We ignore filters_ if active_ is set at ButtonDown.
      if (isblocked() && ! active_) return;
    }

#define CALL_UNION_FUNCTION(POINTER) {            \
    if (POINTER) {                                \
      if ((POINTER)->remap(remapParams)) {        \
        if (remapParams.params.ex_isbuttondown) { \
          active_ = true;                         \
        } else {                                  \
          active_ = false;                        \
        }                                         \
      }                                           \
    }                                             \
}

    switch (type_) {
      case BRIDGE_REMAPTYPE_DROPPOINTINGRELATIVECURSORMOVE: CALL_UNION_FUNCTION(p_.dropPointingRelativeCursorMove); break;
      case BRIDGE_REMAPTYPE_POINTINGBUTTONTOKEY:            CALL_UNION_FUNCTION(p_.pointingButtonToKey);            break;
      case BRIDGE_REMAPTYPE_POINTINGBUTTONTOPOINTINGBUTTON: CALL_UNION_FUNCTION(p_.pointingButtonToPointingButton); break;
      case BRIDGE_REMAPTYPE_POINTINGRELATIVETOSCROLL:       CALL_UNION_FUNCTION(p_.pointingRelativeToScroll);       break;
      case BRIDGE_REMAPTYPE_HOLDINGKEYTOKEY:                CALL_UNION_FUNCTION(p_.holdingKeyToKey);                break;
      case BRIDGE_REMAPTYPE_KEYOVERLAIDMODIFIER:            CALL_UNION_FUNCTION(p_.keyOverlaidModifier);            break;
      default:
        // do nothing. (Do not call IOLOG_ERROR)
        break;
    }

#undef CALL_UNION_FUNCTION
  }