Move simulation frame panel togglers to sch_actions and eechema.Simulator domain

This commit is contained in:
aris-kimi 2025-06-09 12:10:43 +03:00 committed by Ian McInerney
parent 28369ee4dd
commit 9c5b2c55fb
11 changed files with 51 additions and 45 deletions

View File

@ -951,16 +951,6 @@ TOOL_ACTION ACTIONS::hideLibraryTree( TOOL_ACTION_ARGS()
.FriendlyName( _( "Hide Library Tree" ) )
.Icon( BITMAPS::search_tree ) );
TOOL_ACTION ACTIONS::toggleSimulationSidePanel( TOOL_ACTION_ARGS()
.Name( "common.Control.toggleSimulationSidePanel" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Show Side Panel" ) ) );
TOOL_ACTION ACTIONS::toggleConsole( TOOL_ACTION_ARGS()
.Name( "common.Control.toggleConsole" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Show Console Panel" ) ) );
TOOL_ACTION ACTIONS::libraryTreeSearch( TOOL_ACTION_ARGS()
.Name( "common.Control.libraryTreeSearch" )
.Scope( AS_GLOBAL )

View File

@ -590,15 +590,15 @@ bool SIMULATOR_FRAME::SaveWorkbook( const wxString& aPath )
}
void SIMULATOR_FRAME::ToggleConsole()
void SIMULATOR_FRAME::ToggleSimConsole()
{
m_ui->ToggleConsole();
m_ui->ToggleSimConsole();
}
void SIMULATOR_FRAME::ToggleSimulationSidePanel()
void SIMULATOR_FRAME::ToggleSimSidePanel()
{
m_ui->ToggleSimulationSidePanel();
m_ui->ToggleSimSidePanel();
}
@ -756,27 +756,29 @@ void SIMULATOR_FRAME::setupUIConditions()
return plotTab && plotTab->GetPlotWin()->RedoZoomStackSize() > 0;
};
auto isConsoleShown =
// clang-format off
auto isSimConsoleShown =
[this]( const SELECTION& aSel )
{
bool aBool = false;
if( m_simulator )
return m_ui->IsConsoleShown();
return m_ui->IsSimConsoleShown();
return aBool;
};
auto isSidePanelShown =
auto isSimSidePanelShown =
[this]( const SELECTION& aSel )
{
bool aBool = false;
if( m_simulator )
return m_ui->IsSidePanelShown();
return m_ui->IsSimSidePanelShown();
return aBool;
};
// clang-format on
#define ENABLE( x ) ACTION_CONDITIONS().Enable( x )
#define CHECK( x ) ACTION_CONDITIONS().Check( x )
@ -790,8 +792,8 @@ void SIMULATOR_FRAME::setupUIConditions()
mgr->SetConditions( SCH_ACTIONS::exportPlotToClipboard, ENABLE( havePlot ) );
mgr->SetConditions( SCH_ACTIONS::exportPlotToSchematic, ENABLE( havePlot ) );
mgr->SetConditions( ACTIONS::toggleSimulationSidePanel, CHECK( isSidePanelShown ) );
mgr->SetConditions( ACTIONS::toggleConsole, CHECK( isConsoleShown ) );
mgr->SetConditions( SCH_ACTIONS::toggleSimSidePanel, CHECK( isSimSidePanelShown ) );
mgr->SetConditions( SCH_ACTIONS::toggleSimConsole, CHECK( isSimConsoleShown ) );
mgr->SetConditions( ACTIONS::zoomUndo, ENABLE( haveZoomUndo ) );
mgr->SetConditions( ACTIONS::zoomRedo, ENABLE( haveZoomRedo ) );

View File

@ -151,9 +151,9 @@ public:
*/
SIM_TAB* GetCurrentSimTab() const;
void ToggleConsole();
void ToggleSimConsole();
void ToggleSimulationSidePanel();
void ToggleSimSidePanel();
/**
* Toggle dark-mode of the plot tabs.

View File

@ -2713,25 +2713,25 @@ void SIMULATOR_FRAME_UI::TogglePanel( wxPanel* aPanel, wxSplitterWindow* aSplitt
}
bool SIMULATOR_FRAME_UI::IsConsoleShown()
bool SIMULATOR_FRAME_UI::IsSimConsoleShown()
{
return m_panelConsole->IsShown();
}
void SIMULATOR_FRAME_UI::ToggleConsole()
void SIMULATOR_FRAME_UI::ToggleSimConsole()
{
TogglePanel( m_panelConsole, m_splitterPlotAndConsole, m_splitterPlotAndConsoleSashPosition );
}
bool SIMULATOR_FRAME_UI::IsSidePanelShown()
bool SIMULATOR_FRAME_UI::IsSimSidePanelShown()
{
return m_sidePanel->IsShown();
}
void SIMULATOR_FRAME_UI::ToggleSimulationSidePanel()
void SIMULATOR_FRAME_UI::ToggleSimSidePanel()
{
TogglePanel( m_sidePanel, m_splitterLeftRight, m_splitterLeftRightSashPosition );
}

View File

@ -176,10 +176,10 @@ public:
*/
const SPICE_CIRCUIT_MODEL* GetExporter() const;
bool IsConsoleShown();
void ToggleConsole();
bool IsSidePanelShown();
void ToggleSimulationSidePanel();
bool IsSimConsoleShown();
void ToggleSimConsole();
bool IsSimSidePanelShown();
void ToggleSimSidePanel();
bool DarkModePlots() const { return m_darkMode; }
void ToggleDarkModePlots();

View File

@ -115,9 +115,10 @@ void SIMULATOR_FRAME::doReCreateMenuBar()
//-- View menu -----------------------------------------------------------
//
ACTION_MENU* viewMenu = new ACTION_MENU( false, tool );
viewMenu->Add( ACTIONS::toggleSimulationSidePanel, ACTION_MENU::CHECK );
viewMenu->Add( ACTIONS::toggleConsole, ACTION_MENU::CHECK );
// clang-format off
viewMenu->Add( SCH_ACTIONS::toggleSimSidePanel, ACTION_MENU::CHECK );
viewMenu->Add( SCH_ACTIONS::toggleSimConsole, ACTION_MENU::CHECK );
// clang-format on
viewMenu->AppendSeparator();
viewMenu->Add( ACTIONS::zoomUndo );

View File

@ -40,6 +40,7 @@ class DESIGN_BLOCK;
#undef _
#define _(s) s
// clang-format off
// SCH_INSPECTION_TOOL
//
@ -1579,6 +1580,16 @@ TOOL_ACTION SCH_ACTIONS::exportPlotToSchematic( TOOL_ACTION_ARGS()
.FriendlyName( _( "Export Current Plot to Schematic" ) )
.Icon( BITMAPS::export_png ) );
TOOL_ACTION SCH_ACTIONS::toggleSimSidePanel( TOOL_ACTION_ARGS()
.Name( "eeschema.Simulator.toggleSimSidePanel" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Show Simulation Side Panel" ) ) );
TOOL_ACTION SCH_ACTIONS::toggleSimConsole( TOOL_ACTION_ARGS()
.Name( "eeschema.Simulator.toggleSimConsole" )
.Scope( AS_GLOBAL )
.FriendlyName( _( "Show Simulation Console Panel" ) ) );
TOOL_ACTION SCH_ACTIONS::toggleLegend( TOOL_ACTION_ARGS()
.Name( "eeschema.Simulator.toggleLegend" )
.Scope( AS_GLOBAL )
@ -1645,3 +1656,5 @@ TOOL_ACTION SCH_ACTIONS::showNetlist( TOOL_ACTION_ARGS()
.Scope( AS_GLOBAL )
.FriendlyName( _( "Show SPICE Netlist" ) )
.Icon( BITMAPS::netlist ) );
// clang-format on

View File

@ -282,6 +282,8 @@ public:
static TOOL_ACTION showSimulator;
static TOOL_ACTION simProbe;
static TOOL_ACTION simTune;
static TOOL_ACTION toggleSimConsole;
static TOOL_ACTION toggleSimSidePanel;
static TOOL_ACTION toggleLegend;
static TOOL_ACTION toggleDottedSecondary;
static TOOL_ACTION toggleDarkModePlots;

View File

@ -399,19 +399,19 @@ int SIMULATOR_CONTROL::RedoZoom( const TOOL_EVENT& aEvent )
}
int SIMULATOR_CONTROL::ToggleConsolePanel( const TOOL_EVENT& aEvent )
int SIMULATOR_CONTROL::ToggleSimConsolePanel( const TOOL_EVENT& aEvent )
{
if( m_simulatorFrame )
m_simulatorFrame->ToggleConsole();
m_simulatorFrame->ToggleSimConsole();
return 0;
}
int SIMULATOR_CONTROL::ToggleSimulationSidePanel( const TOOL_EVENT& aEvent )
int SIMULATOR_CONTROL::ToggleSimSidePanel( const TOOL_EVENT& aEvent )
{
if( m_simulatorFrame )
m_simulatorFrame->ToggleSimulationSidePanel();
m_simulatorFrame->ToggleSimSidePanel();
return 0;
}
@ -641,6 +641,7 @@ int SIMULATOR_CONTROL::ShowNetlist( const TOOL_EVENT& aEvent )
void SIMULATOR_CONTROL::setTransitions()
{
// clang-format off
Go( &SIMULATOR_CONTROL::NewAnalysisTab, SCH_ACTIONS::newAnalysisTab.MakeEvent() );
Go( &SIMULATOR_CONTROL::OpenWorkbook, SCH_ACTIONS::openWorkbook.MakeEvent() );
Go( &SIMULATOR_CONTROL::SaveWorkbook, SCH_ACTIONS::saveWorkbook.MakeEvent() );
@ -652,9 +653,8 @@ void SIMULATOR_CONTROL::setTransitions()
Go( &SIMULATOR_CONTROL::Close, ACTIONS::quit.MakeEvent() );
Go( &SIMULATOR_CONTROL::ToggleConsolePanel, ACTIONS::toggleConsole.MakeEvent() );
Go( &SIMULATOR_CONTROL::ToggleSimulationSidePanel, ACTIONS::toggleSimulationSidePanel.MakeEvent() );
Go( &SIMULATOR_CONTROL::ToggleSimConsolePanel, SCH_ACTIONS::toggleSimConsole.MakeEvent() );
Go( &SIMULATOR_CONTROL::ToggleSimSidePanel, SCH_ACTIONS::toggleSimSidePanel.MakeEvent() );
Go( &SIMULATOR_CONTROL::Zoom, ACTIONS::zoomInCenter.MakeEvent() );
Go( &SIMULATOR_CONTROL::Zoom, ACTIONS::zoomOutCenter.MakeEvent() );
@ -678,4 +678,5 @@ void SIMULATOR_CONTROL::setTransitions()
Go( &SIMULATOR_CONTROL::EditUserDefinedSignals, SCH_ACTIONS::editUserDefinedSignals.MakeEvent() );
Go( &SIMULATOR_CONTROL::ShowNetlist, SCH_ACTIONS::showNetlist.MakeEvent() );
// clang-format on
}

View File

@ -63,8 +63,8 @@ public:
int ExportPlotToSchematic( const TOOL_EVENT& aEvent );
int Close( const TOOL_EVENT& aEvent );
int ToggleConsolePanel( const TOOL_EVENT& aEvent );
int ToggleSimulationSidePanel( const TOOL_EVENT& aEvent );
int ToggleSimConsolePanel( const TOOL_EVENT& aEvent );
int ToggleSimSidePanel( const TOOL_EVENT& aEvent );
int Zoom( const TOOL_EVENT& aEvent );
int UndoZoom( const TOOL_EVENT& aEvent );
int RedoZoom( const TOOL_EVENT& aEvent );

View File

@ -161,9 +161,6 @@ public:
static TOOL_ACTION showLibraryTree;
static TOOL_ACTION hideLibraryTree;
static TOOL_ACTION toggleConsole;
static TOOL_ACTION toggleSimulationSidePanel;
static TOOL_ACTION libraryTreeSearch;
/// Cursor control with keyboard