本文整理汇总了C++中wxKeyEvent::StopPropagation方法的典型用法代码示例。如果您正苦于以下问题:C++ wxKeyEvent::StopPropagation方法的具体用法?C++ wxKeyEvent::StopPropagation怎么用?C++ wxKeyEvent::StopPropagation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wxKeyEvent
的用法示例。
在下文中一共展示了wxKeyEvent::StopPropagation方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnChar
void MainSequencer::OnChar(wxKeyEvent& event)
{
wxChar uc = event.GetUnicodeKey();
KeyBinding *binding = keyBindings.Find(uc);
if (binding != NULL) {
event.StopPropagation();
switch (binding->GetType()) {
case TIMING_ADD:
InsertTimingMarkFromRange();
break;
case TIMING_SPLIT:
SplitTimingMark();
break;
case KEY_ZOOM_IN:
PanelTimeLine->ZoomIn();
break;
case KEY_ZOOM_OUT:
PanelTimeLine->ZoomOut();
break;
case RANDOM_EFFECT:
PanelEffectGrid->Paste("Random\t\t\n");
break;
case EFFECT_STRING:
PanelEffectGrid->Paste(binding->GetEffectName() + "\t" + binding->GetEffectString() + "\t\n");
break;
}
}
//printf("OnChar %d %c\n", uc, uc);
switch(uc)
{
case 'c':
case 'C':
case WXK_CONTROL_C:
if (event.CmdDown() || event.ControlDown()) {
CopySelectedEffects();
PanelEffectGrid->SetCanPaste();
event.StopPropagation();
}
break;
case 'x':
case 'X':
case WXK_CONTROL_X:
if (event.CmdDown() || event.ControlDown()) {
CopySelectedEffects();
PanelEffectGrid->DeleteSelectedEffects();
event.StopPropagation();
}
break;
case 'v':
case 'V':
case WXK_CONTROL_V:
if (event.CmdDown() || event.ControlDown()) {
Paste();
event.StopPropagation();
}
break;
}
}
示例2: OnKeyDown
void AbstractWindow::OnKeyDown(wxKeyEvent& event)
{
if (!app_)
return;
#ifdef __WXGTK__
app_->Test(event.GetKeyCode());
#else
event.StopPropagation();
#endif
}
示例3: OnKeyUpEvent
void HotkeyCtrl::OnKeyUpEvent(wxKeyEvent& e)
{
switch(e.GetKeyCode())
{
case WXK_WINDOWS_LEFT:
case WXK_WINDOWS_RIGHT:
WinDown = false;
e.StopPropagation();
return;
}
e.Skip();
}
示例4: OnCharHook
void AssistPanel::OnCharHook(wxKeyEvent& event)
{
if( mEffect != NULL )
{
if( mEffect->GetEffectIndex() == EffectManager::eff_PICTURES )
{
wxChar uc = event.GetUnicodeKey();
switch(uc)
{
case 'c':
case 'C':
case WXK_CONTROL_C:
if (event.CmdDown() || event.ControlDown()) {
if( mGridCanvas != nullptr )
{
mGridCanvas->Copy();
}
event.StopPropagation();
}
break;
case 'v':
case 'V':
case WXK_CONTROL_V:
if (event.CmdDown() || event.ControlDown()) {
if( mGridCanvas != nullptr )
{
mGridCanvas->Paste();
}
event.StopPropagation();
}
break;
default:
event.Skip();
break;
}
}
}
}
示例5: OnPreKeyUp
bool ShortcutChordCtrl::OnPreKeyUp(wxKeyEvent& event) {
int id = event.GetKeyCode();
// Ignore initial presses on modifier keys
if (id == WXK_SHIFT || id == WXK_ALT || id == WXK_CONTROL ||
id == WXK_WINDOWS_LEFT || id == WXK_WINDOWS_RIGHT)
{
return false;
}
int modifiers = event.GetModifiers();
#ifdef __WXMSW__
// GetModifiers does not report the windows keys
if (::GetKeyState(VK_LWIN) < 0) modifiers |= 0x0008; // wxMOD_META (Left Windows key)
if (::GetKeyState(VK_RWIN) < 0) modifiers |= 0x0008; // wxMOD_META (Right Windows key)
#endif
wxString binding = CodeToString(id, modifiers);
wxString value = GetValue();
if(value.Contains(wxT(" "))) {
value = wxT("");
}
if(!value.empty()) {
value = wxString::Format(wxT("%s %s"), value, binding);
} else {
value = binding;
}
m_binding = value;
SetValue(value);
event.StopPropagation();
// wxLogDebug(wxT("Binding: %s"), m_binding.c_str());
return true;
}
示例6: OnKeyDownEvent
void HotkeyCtrl::OnKeyDownEvent(wxKeyEvent& e)
{
e.StopPropagation();
int code = e.GetKeyCode();
if (code == WXK_WINDOWS_LEFT || code == WXK_WINDOWS_RIGHT)
{
WinDown = true;
return;
}
if (code == WXK_NONE || code == WXK_SHIFT || code == WXK_ALT || code == WXK_CONTROL)
return;
if (code == WXK_DELETE)
{
this->Clear();
return;
}
wxString key;
if (code > 32 && code < 127)
key.Append(e.GetUnicodeKey());
else
key = g_keys.GetKeyString(code);
if (key.empty())
return;
if (e.HasModifiers())
{
int Modifers = e.GetModifiers();
if (Modifers & wxMOD_ALT)
key.insert(0,"Alt+");
if (Modifers & wxMOD_CONTROL)
key.insert(0,"Ctrl+");
if (Modifers & wxMOD_SHIFT)
key.insert(0,"Shift+");
}
if (WinDown)
key.insert(0,"Win+");
this->SetValue(key);
}
示例7: OnCharHook
void MainSequencer::OnCharHook(wxKeyEvent& event)
{
wxChar uc = event.GetKeyCode();
//printf("OnCharHook %d %c\n", uc, uc);
switch(uc)
{
case WXK_BACK:
case WXK_DELETE:
PanelEffectGrid->DeleteSelectedEffects();
event.StopPropagation();
break;
case WXK_SPACE:
{
wxCommandEvent playEvent(EVT_TOGGLE_PLAY);
wxPostEvent(mParent, playEvent);
}
event.StopPropagation();
break;
case WXK_UP:
PanelEffectGrid->MoveSelectedEffectUp(event.ShiftDown());
event.StopPropagation();
break;
case WXK_DOWN:
PanelEffectGrid->MoveSelectedEffectDown(event.ShiftDown());
event.StopPropagation();
break;
case WXK_LEFT:
PanelEffectGrid->MoveSelectedEffectLeft(event.ShiftDown());
event.StopPropagation();
break;
case WXK_RIGHT:
PanelEffectGrid->MoveSelectedEffectRight(event.ShiftDown());
event.StopPropagation();
break;
default:
event.Skip();
break;
}
}
示例8: OnKeyUp
void wxSFMLCanvas::OnKeyUp(wxKeyEvent &evt) { evt.StopPropagation(); }
示例9: OnKeyUp
void AbstractWindow::OnKeyUp(wxKeyEvent& event)
{
#ifndef __WXGTK__
event.StopPropagation();
#endif
}