コード例 #1
0
 void dispatch(Receiver& rec) const
 {
     switch (m_type)
     {
     case Type::MouseDown:
         rec.mouseDown(m_coord, m_button, m_mods);
         break;
     case Type::MouseUp:
         rec.mouseUp(m_coord, m_button, m_mods);
         break;
     case Type::MouseMove:
         rec.mouseMove(m_coord);
         break;
     case Type::MouseEnter:
         rec.mouseEnter(m_coord);
         break;
     case Type::MouseLeave:
         rec.mouseLeave(m_coord);
         break;
     case Type::Scroll:
         rec.scroll(m_coord, m_scroll);
         break;
     case Type::TouchDown:
         rec.touchDown(m_tCoord, m_tid);
         break;
     case Type::TouchUp:
         rec.touchUp(m_tCoord, m_tid);
         break;
     case Type::TouchMove:
         rec.touchMove(m_tCoord, m_tid);
         break;
     case Type::CharKeyDown:
         rec.charKeyDown(m_charcode, m_mods, m_isRepeat);
         break;
     case Type::CharKeyUp:
         rec.charKeyUp(m_charcode, m_mods);
         break;
     case Type::SpecialKeyDown:
         rec.specialKeyDown(m_special, m_mods, m_isRepeat);
         break;
     case Type::SpecialKeyUp:
         rec.specialKeyUp(m_special, m_mods);
         break;
     case Type::ModKeyDown:
         rec.modKeyDown(m_mods, m_isRepeat);
         break;
     case Type::ModKeyUp:
         rec.modKeyUp(m_mods);
         break;
     default: break;
     }
 }