Commit 9db22f0a authored by Mikhail Karpenko's avatar Mikhail Karpenko

Merge branch 'master' into teardrops

parents 7e5160ad e3700cae
......@@ -118,6 +118,7 @@ target_link_libraries( cvpcb_kiface
gal
${wxWidgets_LIBRARIES}
${GDI_PLUS_LIBRARIES}
${OPENMP_LIBRARIES} # used by 3d viewer
)
if( BUILD_GITHUB_PLUGIN )
......
......@@ -125,6 +125,12 @@ protected:
void createPopUpBlockMenu( wxMenu* menu );
void createPopUpMenuForMarkers( MARKER_PCB* aMarker, wxMenu* aPopMenu );
/**
* an helper function to enable some menus only active when the display
* is switched to GAL mode and which do nothing in legacy mode
*/
void enableGALSpecificMenus();
// Has meaning only if DKICAD_SCRIPTING_WXPYTHON option is on
/**
......
......@@ -448,14 +448,13 @@ PCB_EDIT_FRAME::PCB_EDIT_FRAME( KIWAY* aKiway, wxWindow* aParent ) :
wxAuiPaneInfo( mesg ).Name( wxT( "MsgPanel" ) ).Bottom().Layer(10) );
ReFillLayerWidget(); // this is near end because contents establish size
m_Layers->ReFillRender(); // Update colors in Render after the config is read
syncLayerWidgetLayer();
m_auimgr.Update();
setupTools();
enableGALSpecificMenus();
Zoom_Automatique( false );
}
......@@ -683,6 +682,8 @@ void PCB_EDIT_FRAME::UseGalCanvas( bool aEnable )
// Redirect all events to the legacy canvas
GetGalCanvas()->SetEventDispatcher( NULL );
}
enableGALSpecificMenus();
}
......@@ -714,6 +715,35 @@ void PCB_EDIT_FRAME::SwitchCanvas( wxCommandEvent& aEvent )
}
void PCB_EDIT_FRAME::enableGALSpecificMenus()
{
// some menus are active only in GAL mode and do nothing in legacy mode.
// So enable or disable them, depending on the display mode
if( GetMenuBar() )
{
// Enable / disable some menus which are usable only on GAL
pcbnew_ids id_list[] =
{
ID_MENU_INTERACTIVE_ROUTER_SETTINGS,
ID_DIFF_PAIR_BUTT,
ID_TUNE_SINGLE_TRACK_LEN_BUTT,
ID_TUNE_DIFF_PAIR_LEN_BUTT,
ID_TUNE_DIFF_PAIR_SKEW_BUTT,
ID_MENU_DIFF_PAIR_DIMENSIONS
};
bool enbl = IsGalCanvasActive();
for( unsigned ii = 0; ii < DIM( id_list ); ii++ )
{
if( GetMenuBar()->FindItem( id_list[ii] ) )
GetMenuBar()->FindItem( id_list[ii] )->Enable( enbl );
}
}
}
void PCB_EDIT_FRAME::ShowDesignRulesEditor( wxCommandEvent& event )
{
DIALOG_DESIGN_RULES dR_editor( this );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment