当前位置: 首页>>代码示例>>C++>>正文


C++ wxKeyEvent::GetModifiers方法代码示例

本文整理汇总了C++中wxKeyEvent::GetModifiers方法的典型用法代码示例。如果您正苦于以下问题:C++ wxKeyEvent::GetModifiers方法的具体用法?C++ wxKeyEvent::GetModifiers怎么用?C++ wxKeyEvent::GetModifiers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在wxKeyEvent的用法示例。


在下文中一共展示了wxKeyEvent::GetModifiers方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: OnChar

void wxGxTreeViewBase::OnChar(wxKeyEvent& event)
{
	if(event.GetModifiers() & wxMOD_ALT)
		return;
	if(event.GetModifiers() & wxMOD_CONTROL)
		return;
	if(event.GetModifiers() & wxMOD_SHIFT)
		return;
    switch(event.GetKeyCode())
    {
    case WXK_DELETE:
    case WXK_NUMPAD_DELETE:
        if(m_pDeleteCmd)
            m_pDeleteCmd->OnClick();
        break;
    case WXK_UP:
        SelectItem(GetPrevVisible(GetSelection()));        
        break;
    case WXK_DOWN:
        SelectItem(GetNextVisible(GetSelection())); 
        break;
    default:
        break;
    }
}
开发者ID:Mileslee,项目名称:wxgis,代码行数:25,代码来源:gxtreeview.cpp

示例2: OnChar

void wxGxContentView::OnChar(wxKeyEvent& event)
{
	if(event.GetModifiers() & wxMOD_ALT)
		return;
	if(event.GetModifiers() & wxMOD_CONTROL)
		return;
    switch(event.GetKeyCode())
    {
    case WXK_DELETE:
    case WXK_NUMPAD_DELETE:
        if (event.GetModifiers() & wxMOD_SHIFT)
        {
            //TODO: complete delete
        }
        else
        {
            if (NULL != m_pDeleteCmd)
            {
                //TODO: delete to trash can
                m_pDeleteCmd->OnClick();
            }
        }
        break;
    case WXK_UP:
    case WXK_DOWN:
        SelectItem(event.GetKeyCode(), event.GetModifiers() & wxMOD_SHIFT);
        break;
    default:
        break;
    }
}
开发者ID:GimpoByte,项目名称:nextgismanager,代码行数:31,代码来源:gxcontentview.cpp

示例3: On_Key_Down

//---------------------------------------------------------
void CVIEW_Map_Control::On_Key_Down(wxKeyEvent &event)
{
	if( m_pMap->Find_Layer(Get_Active_Layer()) && Get_Active_Layer()->Edit_On_Key_Down(event.GetKeyCode()) )
	{
		return;
	}

	switch( event.GetKeyCode() )
	{
	default:
		event.Skip();
		break;

	case WXK_PAGEUP:
		_Zoom(m_pMap->Get_Extent().Get_Center(), true);
		break;

	case WXK_PAGEDOWN:
		_Zoom(m_pMap->Get_Extent().Get_Center(), false);
		break;

	case WXK_LEFT:
		_Move(wxPoint(-10,   0));
		break;

	case WXK_RIGHT:
		_Move(wxPoint( 10,   0));
		break;

	case WXK_UP:
		_Move(wxPoint(  0, -10));
		break;

	case WXK_DOWN:
		_Move(wxPoint(  0,  10));
		break;

	case WXK_F2:
		m_pMap->SaveAs_Image();
		break;

	case 'C':
		if( event.GetModifiers() == wxMOD_CONTROL )
		{
			m_pMap->SaveAs_Image_Clipboard(false);
		}
		else if( event.GetModifiers() == wxMOD_ALT )
		{
			m_pMap->SaveAs_Image_Clipboard(GetClientSize().x, GetClientSize().y, -1);
		}
		break;

	case 'L':
		if( event.GetModifiers() == wxMOD_CONTROL )
		{
			m_pMap->SaveAs_Image_Clipboard(true);
		}
	}
}
开发者ID:johanvdw,项目名称:SAGA-GIS-git-mirror,代码行数:60,代码来源:view_map_control.cpp

示例4: OnChar

void wxGISToolExecuteView::OnChar(wxKeyEvent& event)
{
    if(event.GetModifiers() & wxMOD_ALT)
        return;
    if(event.GetModifiers() & wxMOD_CONTROL)
        return;
    if(event.GetModifiers() & wxMOD_SHIFT)
        return;
    switch(event.GetKeyCode())
    {
    case WXK_DELETE:
    case WXK_NUMPAD_DELETE:
        if(m_pDeleteCmd)
            m_pDeleteCmd->OnClick();
        break;
    case WXK_UP:
    {
        long nSelItem = GetNextItem(wxNOT_FOUND, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
        if(nSelItem == wxNOT_FOUND)
            SetItemState(0, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
        else
        {
            SetItemState(nSelItem, wxLIST_STATE_DONTCARE, wxLIST_STATE_SELECTED);
            if(nSelItem == 0)
            {
                SetItemState(GetItemCount() - 1, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
            }
            else
            {
                SetItemState(nSelItem - 1, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
            }
        }
    }
    break;
    case WXK_DOWN:
    {
        long nSelItem = GetNextItem(wxNOT_FOUND, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
        if(nSelItem == wxNOT_FOUND)
            SetItemState(0, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
        else
        {
            SetItemState(nSelItem, wxLIST_STATE_DONTCARE, wxLIST_STATE_SELECTED);
            if(nSelItem == GetItemCount() - 1)
            {
                SetItemState(0, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
            }
            else
            {
                SetItemState(nSelItem + 1, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
            }
        }
    }
    break;
    default:
        break;
    }
}
开发者ID:GimpoByte,项目名称:nextgismanager,代码行数:57,代码来源:gxtoolexecview.cpp

示例5: OnLevelTableKeyPress

void STISpectrumDialog::OnLevelTableKeyPress( wxKeyEvent& event )
{
#ifndef __WXMAC__
    if( (event.GetModifiers() == 3) )              // Ctrl+C  ascii translated code.
#else
    if( (event.GetModifiers() == wxMOD_CMD) &&    // Command+C  on Apple machines
    	 event.GetKeyCode() == 99 )
#endif
    {   
	    wxCommandEvent cmd(wxEVT_COMMAND_MENU_SELECTED, ID_LEVEL_COPY_SELECTION_MENU);
        OnLevelTableCopySelection(cmd);
    }
}
开发者ID:TheHamSlam,项目名称:aurora-for-audacity,代码行数:13,代码来源:spectrum.cpp

示例6: OnKeyDown

void IncrementalSearch::OnKeyDown(wxKeyEvent& event)
{
    if(m_pTextCtrl)
    {
        m_LastInsertionPoint = m_pTextCtrl->GetInsertionPoint();
    }

    if(!m_IsAttached || !m_pEditor || !m_pEditor->GetControl() )
    {
        event.Skip();
        return;
    }
    if(event.GetModifiers() == wxMOD_ALT && event.GetKeyCode() == WXK_DELETE)
    {
        DoClearText();
    }
    else if(event.GetModifiers() == wxMOD_SHIFT && event.GetKeyCode() == WXK_RETURN)
    {
        if(m_pToolbar->GetToolEnabled(XRCID("idIncSearchPrev")))
           DoSearchPrev();
    }
    else if(event.GetModifiers() == wxMOD_NONE && event.GetKeyCode() == WXK_ESCAPE)
    {
        cbStyledTextCtrl* control = m_pEditor->GetControl();
        // delete all stylings for found phrases
        control->SetIndicatorCurrent(m_IndicFound);
        control->IndicatorClearRange(0, control->GetLength());
        // then for highlighted phrases
        control->SetIndicatorCurrent(m_IndicHighlight);
        control->IndicatorClearRange(0, control->GetLength());
        control->GotoPos(m_NewPos);

        CodeBlocksEvent evt(cbEVT_CURSOR_POS_SAVE);
        Manager::Get()->GetPluginManager()->NotifyPlugins(evt);

        if(Manager::Get()->GetConfigManager(_T("editor"))->ReadBool(_T("/incremental_search/select_found_text_on_escape"),false))
        {
            m_SelStart = m_NewPos;
            m_SelEnd = m_SelStart + m_LengthFound;
            m_OldPos = m_NewPos;
            control->SetSelectionVoid(m_SelStart, m_SelEnd);
        }
        control->SetFocus();
    }
    else
    {
        event.Skip();
    }
}
开发者ID:stahta01,项目名称:EmBlocks_old,代码行数:49,代码来源:IncrementalSearch.cpp

示例7: OnCharHook

void FileEditorWnd::OnCharHook(wxKeyEvent& event)
{
	int modifiers = event.GetModifiers();
	auto keycode = event.GetKeyCode();

	if (modifiers == wxMOD_CONTROL && keycode == 'S') // Save
	{
		save();
	}
	else if (modifiers == wxMOD_CONTROL && keycode == 'R')
	{
		/*
		m_textCtrl->DiscardEdits();
		m_textCtrl->LoadFile(m_file->fullpath.widen());
		*/
	}
	else if (modifiers == 0 && keycode == WXK_F9)
	{
		doBreakpoint(m_textCtrl->GetCurrentLine());
	}
	else // Skip this event (nothing we have to do)
	{
		event.Skip();
	}
}
开发者ID:ruifig,项目名称:nutcracker,代码行数:25,代码来源:FileEditorWnd.cpp

示例8: IsEscapeKey

// On mac command-stop does the same thing as Esc, let the base class know
// about it
bool wxDialog::IsEscapeKey(const wxKeyEvent& event)
{
    if ( event.GetKeyCode() == '.' && event.GetModifiers() == wxMOD_CMD )
        return true;

    return wxDialogBase::IsEscapeKey(event);
}
开发者ID:beanhome,项目名称:dev,代码行数:9,代码来源:dialog_osx.cpp

示例9: OnKey

void KeyMonitorTextCtrl::OnKey(wxKeyEvent &event)
{
	if(event.GetKeyCode() != 308){
		//printf("key:%d %d\n", event.GetKeyCode(), event.GetModifiers());
	}
    // backspace cannot be used as shortcut key...
    if (event.GetKeyCode() == WXK_BACK)
    {
        // this text ctrl contains something and the user pressed backspace...
        // we must delete the keypress...
        Clear();
        return;
    }

    if (event.GetEventType() == wxEVT_KEY_DOWN ||
        (event.GetEventType() == wxEVT_KEY_UP && !IsValidKeyComb()))
    {
        // the user pressed some key combination which must be displayed
        // in this text control.... or he has just stopped pressing a
        // modifier key like shift, ctrl or alt without adding any
        // other alphanumeric char, thus generating an invalid keystroke
        // which must be cleared out...

        KeyBinder::Key key;
        key.code    = event.GetKeyCode();
        key.flags   = event.GetModifiers();
		
        SetValue(KeyBinder::GetKeyBindingAsText(key));
        SetInsertionPointEnd();

    }

}
开发者ID:Super-Man,项目名称:luacode,代码行数:33,代码来源:KeyMonitorTextCtrl.cpp

示例10: OnKeyDown

void wxTextCtrl::OnKeyDown(wxKeyEvent& event)
{
    if ( event.GetModifiers() == wxMOD_CONTROL )
    {
        switch( event.GetKeyCode() )
        {
            case 'A':
                SelectAll();
                return;
            case 'C':
                if ( CanCopy() )
                    Copy() ;
                return;
            case 'V':
                if ( CanPaste() )
                    Paste() ;
                return;
            case 'X':
                if ( CanCut() )
                    Cut() ;
                return;
            default:
                break;
        }
    }
    // no, we didn't process it
    event.Skip();
}
开发者ID:CustomCardsOnline,项目名称:wxWidgets,代码行数:28,代码来源:textctrl_osx.cpp

示例11: OnKeyDown

void CKeyInputCtrl::OnKeyDown(wxKeyEvent &event)
{
	int nKeyCode = event.GetKeyCode();
	OnKeysModifierChange(event.GetModifiers());
	SetValue(GetKeyCodeAsString(nKeyCode));
	event.Skip(true);
}
开发者ID:valiyuneski,项目名称:wxquickrun,代码行数:7,代码来源:KeyInputCtrl.cpp

示例12: onKeyUp

/* MapCanvas::onKeyUp
 * Called when a key is released within the canvas
 *******************************************************************/
void MapCanvas::onKeyUp(wxKeyEvent& e)
{
	// Send to editor
	context_->input().updateKeyModifiersWx(e.GetModifiers());
	context_->input().keyUp(KeyBind::keyName(e.GetKeyCode()));

	e.Skip();
}
开发者ID:Talon1024,项目名称:SLADE,代码行数:11,代码来源:MapCanvas.cpp

示例13: OnKeyDown

void CQueueViewBase::OnKeyDown(wxKeyEvent& event)
{
    const int code = event.GetKeyCode();
    const int mods = event.GetModifiers();
    if (code == 'A' && (mods == wxMOD_CMD || mods == (wxMOD_CONTROL | wxMOD_META))) {
        for (unsigned int i = 0; i < (unsigned int)GetItemCount(); i++)
            SetItemState(i, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
    }
    else
        event.Skip();
}
开发者ID:comutt,项目名称:FileZilla3,代码行数:11,代码来源:queue.cpp

示例14: onKeyDown

/* InputKeyCtrl::onKeyDown
 * Called when a key is pressed in the control
 *******************************************************************/
void InputKeyCtrl::onKeyDown(wxKeyEvent& e)
{
	// Ignore if modifier key
	if (e.GetKeyCode() == WXK_SHIFT || e.GetKeyCode() == WXK_ALT || e.GetKeyCode() == WXK_CONTROL || e.GetKeyCode() == WXK_COMMAND)
	{
		e.Skip();
		return;
	}

	key = KeyBind::asKeyPress(e.GetKeyCode(), e.GetModifiers());
	SetValue(key.as_string());
}
开发者ID:Blzut3,项目名称:SLADE,代码行数:15,代码来源:InputPrefsPanel.cpp

示例15: OnKey

void cWindowInputCtrl::OnKey(wxKeyEvent& e) {
    if (e.GetModifiers() == wxMOD_CONTROL) {
        if (e.GetKeyCode() == 0x4B) { // K key
            cColorDialog *Dialog = new cColorDialog(wxGetApp().GetTopWindow(),wxID_ANY,wxString("Pick a Color"),wxDefaultPosition,wxSize(300,300));
            Dialog->m_WindowID = m_WindowID;
            Dialog->m_WindowType = m_WindowType;
            Dialog->Ask();
            return;
        }
    }
    e.Skip();
}
开发者ID:ekumlin,项目名称:Cubyx-IRC,代码行数:12,代码来源:gui.cpp


注:本文中的wxKeyEvent::GetModifiers方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。