diff --git a/eeschema/hotkeys.cpp b/eeschema/hotkeys.cpp index f09278d9c5..cd8a72fbf9 100644 --- a/eeschema/hotkeys.cpp +++ b/eeschema/hotkeys.cpp @@ -965,6 +965,12 @@ bool LIB_VIEW_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition, cmd.SetId( ID_ZOOM_PAGE ); GetEventHandler()->ProcessEvent( cmd ); break; + + case HK_CANVAS_CAIRO: + case HK_CANVAS_OPENGL: + cmd.SetInt( HK_Descr->m_Idcommand ); + cmd.SetId( HK_Descr->m_IdMenuEvent ); + GetEventHandler()->ProcessEvent( cmd ); } return true; diff --git a/eeschema/libedit/lib_edit_frame.cpp b/eeschema/libedit/lib_edit_frame.cpp index dbf68cbd4a..8da78ab2e2 100644 --- a/eeschema/libedit/lib_edit_frame.cpp +++ b/eeschema/libedit/lib_edit_frame.cpp @@ -146,6 +146,8 @@ BEGIN_EVENT_TABLE( LIB_EDIT_FRAME, EDA_DRAW_FRAME ) EVT_MENU( ID_HELP_GET_INVOLVED, EDA_DRAW_FRAME::GetKicadContribute ) EVT_MENU( wxID_ABOUT, EDA_BASE_FRAME::GetKicadAbout ) EVT_MENU( ID_GRID_SETTINGS, SCH_BASE_FRAME::OnGridSettings ) + EVT_MENU( ID_MENU_CANVAS_CAIRO, LIB_EDIT_FRAME::OnSwitchCanvas ) + EVT_MENU( ID_MENU_CANVAS_OPENGL, LIB_EDIT_FRAME::OnSwitchCanvas ) EVT_MENU( wxID_PREFERENCES, LIB_EDIT_FRAME::OnPreferencesOptions ) @@ -190,6 +192,8 @@ BEGIN_EVENT_TABLE( LIB_EDIT_FRAME, EDA_DRAW_FRAME ) LIB_EDIT_FRAME::OnUpdateEditingPart ) EVT_UPDATE_UI( ID_LIBEDIT_SHOW_ELECTRICAL_TYPE, LIB_EDIT_FRAME::OnUpdateElectricalType ) EVT_UPDATE_UI( ID_LIBEDIT_SHOW_HIDE_SEARCH_TREE, LIB_EDIT_FRAME::OnUpdateSearchTreeTool ) + EVT_UPDATE_UI( ID_MENU_CANVAS_CAIRO, LIB_EDIT_FRAME::OnUpdateSwitchCanvas ) + EVT_UPDATE_UI( ID_MENU_CANVAS_OPENGL, LIB_EDIT_FRAME::OnUpdateSwitchCanvas ) END_EVENT_TABLE() diff --git a/eeschema/libedit/menubar_libedit.cpp b/eeschema/libedit/menubar_libedit.cpp index 7c278645e9..fc3de52ff9 100644 --- a/eeschema/libedit/menubar_libedit.cpp +++ b/eeschema/libedit/menubar_libedit.cpp @@ -338,6 +338,22 @@ void LIB_EDIT_FRAME::ReCreateMenuBar() // Language submenu Pgm().AddMenuLanguageList( preferencesMenu ); + preferencesMenu->AppendSeparator(); + + text = AddHotkeyName( _( "Modern Toolset (&Accelerated)" ), g_Libedit_Hokeys_Descr, + HK_CANVAS_OPENGL ); + AddMenuItem( preferencesMenu, ID_MENU_CANVAS_OPENGL, text, + _( "Use Modern Toolset with hardware-accelerated graphics (recommended)" ), + KiBitmap( tools_xpm ), wxITEM_RADIO ); + + text = AddHotkeyName( _( "Modern Toolset (Fallba&ck)" ), g_Libedit_Hokeys_Descr, + HK_CANVAS_CAIRO ); + AddMenuItem( preferencesMenu, ID_MENU_CANVAS_CAIRO, text, + _( "Use Modern Toolset with software graphics (fall-back)" ), + KiBitmap( tools_xpm ), wxITEM_RADIO ); + + + // Menu Help: wxMenu* helpMenu = new wxMenu;