Impleent persistence for no-connect pad setting.
Also moves rotation increment from a display property to and edit property. (Both issues were discovered while working on a 7.0 feature.)
This commit is contained in:
parent
2cdd3c9ebf
commit
04fa678265
|
@ -57,6 +57,7 @@ public:
|
|||
bool m_DisplayViaFill;
|
||||
bool m_DisplayPadNum; // show pads numbers
|
||||
bool m_DisplayPadClearance;
|
||||
bool m_DisplayPadNoConnects;
|
||||
bool m_DisplayGraphicsFill; // How to display fp drawings ( sketch/ filled )
|
||||
bool m_DisplayTextFill; // How to display fp texts ( sketch/ filled )
|
||||
bool m_DisplayPcbTrackFill; // false : tracks are show in sketch mode, true = filled.
|
||||
|
|
|
@ -107,6 +107,7 @@ bool PANEL_DISPLAY_OPTIONS::TransferDataFromWindow()
|
|||
displ_opts.m_DisplayPadNum = m_OptDisplayPadNumber->GetValue();
|
||||
|
||||
pcbEdit->SetElementVisibility( LAYER_NO_CONNECTS, m_OptDisplayPadNoConn->GetValue() );
|
||||
displ_opts.m_DisplayPadNoConnects = m_OptDisplayPadNoConn->GetValue();
|
||||
|
||||
displ_opts.m_DisplayNetNamesMode = m_ShowNetNamesOption->GetSelection();
|
||||
displ_opts.m_Live3DRefresh = m_live3Drefresh->GetValue();
|
||||
|
|
|
@ -38,6 +38,7 @@ PCB_DISPLAY_OPTIONS::PCB_DISPLAY_OPTIONS()
|
|||
m_DisplayViaFill = FILLED;
|
||||
m_DisplayPadNum = true;
|
||||
m_DisplayPadClearance = true;
|
||||
m_DisplayPadNoConnects = true;
|
||||
|
||||
m_DisplayGraphicsFill = FILLED;
|
||||
m_DisplayTextFill = FILLED;
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
|
||||
///! Update the schema version whenever a migration is required
|
||||
const int pcbnewSchemaVersion = 0;
|
||||
const int pcbnewSchemaVersion = 1;
|
||||
|
||||
|
||||
PCBNEW_SETTINGS::PCBNEW_SETTINGS()
|
||||
|
@ -133,6 +133,9 @@ PCBNEW_SETTINGS::PCBNEW_SETTINGS()
|
|||
m_params.emplace_back( new PARAM<bool>( "editing.allow_free_pads",
|
||||
&m_AllowFreePads, false ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<int>( "editing.rotation_angle",
|
||||
&m_RotationAngle, 900, 1, 900 ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<bool>( "pcb_display.graphic_items_fill",
|
||||
&m_Display.m_DisplayGraphicsFill, true ) );
|
||||
|
||||
|
@ -151,6 +154,9 @@ PCBNEW_SETTINGS::PCBNEW_SETTINGS()
|
|||
m_params.emplace_back( new PARAM<bool>( "pcb_display.pad_clearance",
|
||||
&m_Display.m_DisplayPadClearance, true ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<bool>( "pcb_display.pad_no_connects",
|
||||
&m_Display.m_DisplayPadNoConnects, true ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<bool>( "pcb_display.pad_fill",
|
||||
&m_Display.m_DisplayPadFill, true ) );
|
||||
|
||||
|
@ -166,9 +172,6 @@ PCBNEW_SETTINGS::PCBNEW_SETTINGS()
|
|||
m_params.emplace_back( new PARAM<bool>( "pcb_display.ratsnest_curved",
|
||||
&m_Display.m_DisplayRatsnestLinesCurved, false ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<int>( "pcb_display.rotation_angle",
|
||||
&m_RotationAngle, 900, 1, 900 ) );
|
||||
|
||||
m_params.emplace_back( new PARAM<int>( "pcb_display.track_clearance_mode",
|
||||
reinterpret_cast<int*>( &m_Display.m_ShowTrackClearanceMode ),
|
||||
PCB_DISPLAY_OPTIONS::SHOW_TRACK_CLEARANCE_WITH_VIA_WHILE_ROUTING ) );
|
||||
|
@ -515,6 +518,23 @@ PCBNEW_SETTINGS::PCBNEW_SETTINGS()
|
|||
|
||||
m_params.emplace_back( new PARAM<wxString>( "system.last_footprint3d_dir",
|
||||
&m_lastFootprint3dDir, "" ) );
|
||||
|
||||
registerMigration( 0, 1,
|
||||
[&]()
|
||||
{
|
||||
if( OPT<int> optval = Get<int>( "pcb_display.rotation_angle" ) )
|
||||
Set( "editing.rotation_angle", optval.get() );
|
||||
|
||||
try
|
||||
{
|
||||
At( "pcb_display" ).erase( "rotation_angle" );
|
||||
}
|
||||
catch( ... )
|
||||
{}
|
||||
|
||||
return true;
|
||||
} );
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue