Fp editor and board editor have now a separate color setup.
fp viewer uses the default colors, because it has no color setup dialog. class_colors_design_settings: remove not used members. Fix issue in modedit: the color config was never read.
This commit is contained in:
parent
8c7175b00d
commit
e15acbb00d
|
@ -55,7 +55,7 @@ PANEL_PREV_3D::PANEL_PREV_3D( wxWindow* aParent, S3D_CACHE* aCacheManager,
|
|||
m_dummyBoard->SetColorsSettings( aColors );
|
||||
else
|
||||
{
|
||||
static COLORS_DESIGN_SETTINGS defaultColors;
|
||||
static COLORS_DESIGN_SETTINGS defaultColors( FRAME_PCB_DISPLAY3D );
|
||||
m_dummyBoard->SetColorsSettings( &defaultColors );
|
||||
}
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2014 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
||||
* Copyright (C) 2014 KiCad Developers, see CHANGELOG.TXT for contributors.
|
||||
* Copyright (C) 2014 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
|
@ -35,11 +35,12 @@
|
|||
* in Eeschema, Pcbnew and GerbView
|
||||
*/
|
||||
|
||||
/* Initial colors values: optimized for Pcbnew 64 layers.
|
||||
/* Initial colors values: optimized for Pcbnew up to 64 layers.
|
||||
* The table is not actually used by Eeschema.
|
||||
* these values are superseded by config reading
|
||||
*/
|
||||
static const EDA_COLOR_T default_layer_color[] = {
|
||||
// Copper layers
|
||||
RED, YELLOW, LIGHTMAGENTA, LIGHTRED,
|
||||
CYAN, GREEN, BLUE, DARKGRAY,
|
||||
MAGENTA, LIGHTGRAY, MAGENTA, RED,
|
||||
|
@ -50,17 +51,20 @@ static const EDA_COLOR_T default_layer_color[] = {
|
|||
MAGENTA, LIGHTGRAY, MAGENTA, RED,
|
||||
BROWN, LIGHTGRAY, BLUE, GREEN,
|
||||
|
||||
BLUE, MAGENTA,
|
||||
LIGHTCYAN, RED,
|
||||
MAGENTA, CYAN,
|
||||
BROWN, MAGENTA,
|
||||
LIGHTGRAY,
|
||||
BLUE,
|
||||
GREEN, YELLOW,
|
||||
YELLOW,
|
||||
LIGHTMAGENTA,
|
||||
YELLOW,
|
||||
DARKGRAY
|
||||
// tech layers
|
||||
BLUE, MAGENTA, // B_Adhes, F_Adhes
|
||||
LIGHTCYAN, RED, // B_Paste, F_Paste
|
||||
MAGENTA, CYAN, // B_SilkS, F_SilkS
|
||||
BROWN, MAGENTA, // B_Mask, F_Mask
|
||||
|
||||
// user layers
|
||||
LIGHTGRAY, BLUE, GREEN, YELLOW, // Dwgs_User, Cmts_User, Eco1_User, Eco2_User
|
||||
|
||||
// Special layers
|
||||
YELLOW, // Edge_Cuts
|
||||
LIGHTMAGENTA, // Margin
|
||||
DARKGRAY, LIGHTGRAY, // B_CrtYd, F_CrtYd,
|
||||
BLUE, DARKGRAY // B_Fab, F_Fab
|
||||
};
|
||||
|
||||
|
||||
|
@ -86,8 +90,10 @@ static const EDA_COLOR_T default_items_color[] = {
|
|||
};
|
||||
|
||||
|
||||
COLORS_DESIGN_SETTINGS::COLORS_DESIGN_SETTINGS()
|
||||
COLORS_DESIGN_SETTINGS::COLORS_DESIGN_SETTINGS( FRAME_T aFrameType )
|
||||
{
|
||||
m_frameType = aFrameType;
|
||||
|
||||
for( unsigned src = 0, dst = 0; dst < DIM( m_LayersColors ); ++dst )
|
||||
{
|
||||
m_LayersColors[dst] = COLOR4D( default_layer_color[src++] );
|
||||
|
@ -105,6 +111,7 @@ COLORS_DESIGN_SETTINGS::COLORS_DESIGN_SETTINGS()
|
|||
m_LayersColors[ LAYER_CURSOR ] = WHITE;
|
||||
m_LayersColors[ LAYER_AUX_ITEMS ] = WHITE;
|
||||
m_LayersColors[ LAYER_WORKSHEET ] = DARKRED;
|
||||
m_LayersColors[ LAYER_GRID ] = DARKGRAY;
|
||||
|
||||
setupConfigParams();
|
||||
}
|
||||
|
@ -161,31 +168,65 @@ void COLORS_DESIGN_SETTINGS::SetAllColorsAs( COLOR4D aColor )
|
|||
void COLORS_DESIGN_SETTINGS::setupConfigParams()
|
||||
{
|
||||
wxASSERT( DIM( m_LayersColors ) >= PCB_LAYER_ID_COUNT );
|
||||
for( int i = 0; i<PCB_LAYER_ID_COUNT; ++i )
|
||||
{
|
||||
wxString vn = wxString::Format(
|
||||
wxT( "Color4DPCBLayer_%s" ),
|
||||
LSET::Name( PCB_LAYER_ID( i ) ) );
|
||||
|
||||
Add( vn, LOC_COLOR(i), m_LayersColors[i] );
|
||||
wxString currprefix = GetConfigPrefix();
|
||||
|
||||
switch( m_frameType )
|
||||
{
|
||||
case FRAME_PCB: break; // no prefix
|
||||
|
||||
case FRAME_PCB_MODULE_EDITOR:
|
||||
SetConfigPrefix( "ModEdit" );
|
||||
break;
|
||||
|
||||
case FRAME_PCB_MODULE_VIEWER:
|
||||
case FRAME_PCB_MODULE_VIEWER_MODAL:
|
||||
case FRAME_PCB_FOOTPRINT_WIZARD_MODAL:
|
||||
case FRAME_PCB_FOOTPRINT_PREVIEW:
|
||||
SetConfigPrefix( "fpview_" );
|
||||
break;
|
||||
|
||||
case FRAME_PCB_DISPLAY3D:
|
||||
SetConfigPrefix( "fp3d_" );
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Add( wxT( "Color4DTxtFrontEx" ), ITEM_COLOR( LAYER_MOD_TEXT_FR ), LIGHTGRAY );
|
||||
Add( wxT( "Color4DTxtBackEx" ), ITEM_COLOR( LAYER_MOD_TEXT_BK ), BLUE );
|
||||
Add( wxT( "Color4DTxtInvisEx" ), ITEM_COLOR( LAYER_MOD_TEXT_INVISIBLE ), DARKGRAY );
|
||||
Add( wxT( "Color4DPadBackEx" ), ITEM_COLOR( LAYER_PAD_BK ), GREEN );
|
||||
Add( wxT( "Color4DAnchorEx" ), ITEM_COLOR( LAYER_ANCHOR ), BLUE );
|
||||
Add( wxT( "Color4DPadFrontEx" ), ITEM_COLOR( LAYER_PAD_FR ), RED );
|
||||
Add( wxT( "Color4DViaThruEx" ), ITEM_COLOR( LAYER_VIA_THROUGH ), LIGHTGRAY );
|
||||
Add( wxT( "Color4DViaBBlindEx" ), ITEM_COLOR( LAYER_VIA_BBLIND ), BROWN );
|
||||
Add( wxT( "Color4DViaMicroEx" ), ITEM_COLOR( LAYER_VIA_MICROVIA ), CYAN );
|
||||
Add( wxT( "Color4DNonPlatedEx" ), ITEM_COLOR( LAYER_NON_PLATED ), YELLOW );
|
||||
Add( wxT( "Color4DRatsEx" ), ITEM_COLOR( LAYER_RATSNEST ), WHITE );
|
||||
Add( wxT( "Color4DPCBBackground" ), ITEM_COLOR( LAYER_PCB_BACKGROUND ), BLACK );
|
||||
Add( wxT( "Color4DPCBCursor" ), ITEM_COLOR( LAYER_CURSOR ), WHITE );
|
||||
Add( wxT( "Color4DAuxItems" ), ITEM_COLOR( LAYER_AUX_ITEMS ), WHITE );
|
||||
Add( wxT( "Color4DWorksheet" ), ITEM_COLOR( LAYER_WORKSHEET ), DARKRED );
|
||||
|
||||
wxString fmt( "Color4DPCBLayer_%s" );
|
||||
|
||||
for( int i = 0; i < PCB_LAYER_ID_COUNT; ++i )
|
||||
{
|
||||
wxString cfgkey = wxString::Format( fmt, LSET::Name( PCB_LAYER_ID( i ) ) );
|
||||
Add( cfgkey, LOC_COLOR(i), m_LayersColors[i] );
|
||||
}
|
||||
|
||||
Add( "Color4DTxtFrontEx", ITEM_COLOR( LAYER_MOD_TEXT_FR ), LIGHTGRAY );
|
||||
Add( "Color4DTxtBackEx", ITEM_COLOR( LAYER_MOD_TEXT_BK ), BLUE );
|
||||
Add( "Color4DTxtInvisEx", ITEM_COLOR( LAYER_MOD_TEXT_INVISIBLE ), DARKGRAY );
|
||||
Add( "Color4DPadBackEx", ITEM_COLOR( LAYER_PAD_BK ), GREEN );
|
||||
Add( "Color4DAnchorEx", ITEM_COLOR( LAYER_ANCHOR ), BLUE );
|
||||
Add( "Color4DPadFrontEx", ITEM_COLOR( LAYER_PAD_FR ), RED );
|
||||
Add( "Color4DNonPlatedEx", ITEM_COLOR( LAYER_NON_PLATED ), YELLOW );
|
||||
Add( "Color4DPCBBackground", ITEM_COLOR( LAYER_PCB_BACKGROUND ), BLACK );
|
||||
Add( "Color4DPCBCursor", ITEM_COLOR( LAYER_CURSOR ), WHITE );
|
||||
Add( "Color4DAuxItems", ITEM_COLOR( LAYER_AUX_ITEMS ), WHITE );
|
||||
Add( "Color4DWorksheet", ITEM_COLOR( LAYER_WORKSHEET ), DARKRED );
|
||||
Add( "Color4DGrid", ITEM_COLOR( LAYER_GRID ), DARKGRAY );
|
||||
|
||||
|
||||
// Add prms only relevant in board editor
|
||||
if( m_frameType == FRAME_PCB )
|
||||
{
|
||||
Add( "Color4DViaThruEx", ITEM_COLOR( LAYER_VIA_THROUGH ), LIGHTGRAY );
|
||||
Add( "Color4DViaBBlindEx", ITEM_COLOR( LAYER_VIA_BBLIND ), BROWN );
|
||||
Add( "Color4DViaMicroEx", ITEM_COLOR( LAYER_VIA_MICROVIA ), CYAN );
|
||||
Add( "Color4DRatsEx", ITEM_COLOR( LAYER_RATSNEST ), WHITE );
|
||||
}
|
||||
|
||||
SetConfigPrefix( currprefix );
|
||||
}
|
||||
|
||||
void COLORS_DESIGN_SETTINGS::Load( wxConfigBase *aConfig )
|
||||
|
|
|
@ -50,6 +50,9 @@
|
|||
|
||||
#include <3d_viewer/eda_3d_viewer.h>
|
||||
|
||||
// Colors for layers and items
|
||||
COLORS_DESIGN_SETTINGS g_ColorsSettings( FRAME_CVPCB_DISPLAY );
|
||||
|
||||
|
||||
BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME )
|
||||
EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow )
|
||||
|
@ -78,7 +81,6 @@ DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME( KIWAY* aKiway, CVPCB_MAINFRA
|
|||
|
||||
// Give an icon
|
||||
wxIcon icon;
|
||||
|
||||
icon.CopyFromBitmap( KiBitmap( icon_cvpcb_xpm ) );
|
||||
SetIcon( icon );
|
||||
|
||||
|
|
|
@ -44,9 +44,6 @@
|
|||
|
||||
#include <wx/snglinst.h>
|
||||
|
||||
// Colors for layers and items
|
||||
COLORS_DESIGN_SETTINGS g_ColorsSettings;
|
||||
|
||||
// Constant string definitions for CvPcb
|
||||
const wxString EquFileExtension( wxT( "equ" ) );
|
||||
|
||||
|
|
|
@ -35,10 +35,6 @@
|
|||
#include <hotkeys.h>
|
||||
#include <gerbview_frame.h>
|
||||
|
||||
// Colors for layers and items
|
||||
COLORS_DESIGN_SETTINGS g_ColorsSettings;
|
||||
|
||||
|
||||
const wxChar* g_GerberPageSizeList[] = {
|
||||
wxT( "GERBER" ), // index 0: full size page selection, and do not show page limits
|
||||
wxT( "GERBER" ), // index 1: full size page selection, and show page limits
|
||||
|
|
|
@ -57,6 +57,9 @@ static const wxString cfgShowNegativeObjects( wxT( "ShowNegativeObjectsOpt" )
|
|||
static const wxString cfgShowBorderAndTitleBlock( wxT( "ShowBorderAndTitleBlock" ) );
|
||||
|
||||
|
||||
// Colors for layers and items
|
||||
COLORS_DESIGN_SETTINGS g_ColorsSettings( FRAME_GERBER );
|
||||
|
||||
GERBVIEW_FRAME::GERBVIEW_FRAME( KIWAY* aKiway, wxWindow* aParent ):
|
||||
EDA_DRAW_FRAME( aKiway, aParent, FRAME_GERBER, wxT( "GerbView" ),
|
||||
wxDefaultPosition, wxDefaultSize, KICAD_DEFAULT_DRAWFRAME_STYLE, GERBVIEW_FRAME_NAME )
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2016 Jean-Pierre Charras, jp.charras at wanadoo.fr
|
||||
* Copyright (C) 2016 KiCad Developers, see CHANGELOG.TXT for contributors.
|
||||
* Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
|
@ -37,23 +37,22 @@ using KIGFX::COLOR4D;
|
|||
|
||||
class wxConfigBase;
|
||||
class wxString;
|
||||
#include <frame_type.h>
|
||||
|
||||
class PARAM_CFG_ARRAY;
|
||||
|
||||
/**
|
||||
* Class COLORS_DESIGN_SETTINGS
|
||||
* is a list of color settings for designs in Eeschema, Pcbnew and GerbView
|
||||
* is a list of color settings for designs in Pcbnew
|
||||
*/
|
||||
class COLORS_DESIGN_SETTINGS : public SETTINGS
|
||||
{
|
||||
public:
|
||||
// Color options for screen display of the Printed Board and schematic:
|
||||
|
||||
// Common to Eeschema, Pcbnew, GerbView
|
||||
// Color options for screen display of the Printed Board or schematic:
|
||||
COLOR4D m_LayersColors[LAYER_ID_COUNT]; ///< Layer colors (tracks and graphic items)
|
||||
|
||||
public:
|
||||
COLORS_DESIGN_SETTINGS();
|
||||
COLORS_DESIGN_SETTINGS( FRAME_T aFrameType );
|
||||
|
||||
~COLORS_DESIGN_SETTINGS() override
|
||||
{}
|
||||
|
@ -96,6 +95,7 @@ public:
|
|||
void SetAllColorsAs( COLOR4D aColor );
|
||||
|
||||
private:
|
||||
FRAME_T m_frameType;
|
||||
|
||||
void setupConfigParams();
|
||||
|
||||
|
|
|
@ -44,11 +44,21 @@ class SETTINGS
|
|||
virtual ~SETTINGS()
|
||||
{}
|
||||
|
||||
void SetConfigPrefix ( const wxString& aPrefix )
|
||||
/** Set a prefix that will be prepent to the keywords when adding a setting in list
|
||||
* @param aPrefix is the string to prepend to the keywords
|
||||
*/
|
||||
void SetConfigPrefix( const wxString& aPrefix )
|
||||
{
|
||||
m_prefix = aPrefix;
|
||||
}
|
||||
|
||||
/** @return the current prefix
|
||||
*/
|
||||
const wxString& GetConfigPrefix()
|
||||
{
|
||||
return m_prefix;
|
||||
}
|
||||
|
||||
virtual void Load( wxConfigBase *aConfig );
|
||||
virtual void Save( wxConfigBase *aConfig );
|
||||
|
||||
|
@ -82,22 +92,22 @@ class SETTINGS
|
|||
|
||||
void Add ( const wxString& name, int* aPtr, int aDefaultValue )
|
||||
{
|
||||
m_params.push_back ( new PARAM_CFG_INT ( name, aPtr, aDefaultValue ) );
|
||||
m_params.push_back ( new PARAM_CFG_INT ( m_prefix+name, aPtr, aDefaultValue ) );
|
||||
}
|
||||
|
||||
void Add ( const wxString& name, bool* aPtr, bool aDefaultValue )
|
||||
{
|
||||
m_params.push_back ( new PARAM_CFG_BOOL ( name, aPtr, aDefaultValue ) );
|
||||
m_params.push_back ( new PARAM_CFG_BOOL ( m_prefix+name, aPtr, aDefaultValue ) );
|
||||
}
|
||||
|
||||
void Add ( const wxString& name, KIGFX::COLOR4D* aPtr, KIGFX::COLOR4D aDefaultValue )
|
||||
{
|
||||
m_params.push_back ( new PARAM_CFG_SETCOLOR ( name, aPtr, aDefaultValue ) );
|
||||
m_params.push_back ( new PARAM_CFG_SETCOLOR ( m_prefix+name, aPtr, aDefaultValue ) );
|
||||
}
|
||||
|
||||
void Add ( const wxString& name, KIGFX::COLOR4D* aPtr, EDA_COLOR_T aDefaultValue )
|
||||
{
|
||||
m_params.push_back ( new PARAM_CFG_SETCOLOR ( name, aPtr, aDefaultValue ) );
|
||||
m_params.push_back ( new PARAM_CFG_SETCOLOR ( m_prefix+name, aPtr, aDefaultValue ) );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -195,7 +195,7 @@ enum GAL_LAYER_ID: int
|
|||
LAYER_GP_OVERLAY, ///< general purpose overlay
|
||||
LAYER_PCB_BACKGROUND, ///< PCB background color
|
||||
LAYER_CURSOR, ///< PCB cursor
|
||||
LAYER_AUX_ITEMS, ///< Auxillary items (guides, rulre, etc)
|
||||
LAYER_AUX_ITEMS, ///< Auxillary items (guides, rule, etc)
|
||||
|
||||
/// This is the end of the layers used for visibility bitmasks in Pcbnew
|
||||
/// There can be at most 32 layers above here.
|
||||
|
|
|
@ -98,7 +98,8 @@ END_EVENT_TABLE()
|
|||
PCB_BASE_FRAME::PCB_BASE_FRAME( KIWAY* aKiway, wxWindow* aParent, FRAME_T aFrameType,
|
||||
const wxString& aTitle, const wxPoint& aPos, const wxSize& aSize,
|
||||
long aStyle, const wxString & aFrameName ) :
|
||||
EDA_DRAW_FRAME( aKiway, aParent, aFrameType, aTitle, aPos, aSize, aStyle, aFrameName )
|
||||
EDA_DRAW_FRAME( aKiway, aParent, aFrameType, aTitle, aPos, aSize, aStyle, aFrameName ),
|
||||
m_configSettings( aFrameType )
|
||||
{
|
||||
m_Pcb = NULL;
|
||||
|
||||
|
|
|
@ -259,7 +259,7 @@ FOOTPRINT_PREVIEW_PANEL::FOOTPRINT_PREVIEW_PANEL(
|
|||
EnableScrolling( false, false ); // otherwise Zoom Auto disables GAL canvas
|
||||
|
||||
m_dummyBoard = std::make_unique<BOARD>();
|
||||
m_colorsSettings = std::make_unique<COLORS_DESIGN_SETTINGS>();
|
||||
m_colorsSettings = std::make_unique<COLORS_DESIGN_SETTINGS>( FRAME_PCB_FOOTPRINT_PREVIEW );
|
||||
|
||||
UseColorScheme( m_colorsSettings.get() );
|
||||
SyncLayersVisibility( &*m_dummyBoard );
|
||||
|
|
|
@ -87,65 +87,65 @@ PARAM_CFG_ARRAY& FOOTPRINT_EDIT_FRAME::GetConfigurationSettings()
|
|||
BOARD_DESIGN_SETTINGS& settings = GetDesignSettings();
|
||||
|
||||
// Update everything
|
||||
m_configSettings.clear(); // boost::ptr_vector destroys the pointers inside
|
||||
m_configParams.clear(); // boost::ptr_vector destroys the pointers inside
|
||||
|
||||
// Display options:
|
||||
m_configSettings.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorUnits" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorUnits" ),
|
||||
(int*)&g_UserUnit, MILLIMETRES ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorDisplayPolarCoords" ),
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorDisplayPolarCoords" ),
|
||||
&displ_opts->m_DisplayPolarCood, false ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorPadDisplayMode" ),
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorPadDisplayMode" ),
|
||||
&displ_opts->m_DisplayPadFill, true ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorGraphicLinesDisplayMode" ),
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorGraphicLinesDisplayMode" ),
|
||||
&displ_opts->m_DisplayModEdgeFill, FILLED ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorTextsDisplayMode" ),
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorTextsDisplayMode" ),
|
||||
&displ_opts->m_DisplayModTextFill, FILLED ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorTextsDisplayMode" ),
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true, wxT( "FpEditorTextsDisplayMode" ),
|
||||
&displ_opts->m_DisplayModTextFill, FILLED ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_WXSTRING( true, wxT( "FpEditorTextsRefDefaultText" ),
|
||||
m_configParams.push_back( new PARAM_CFG_WXSTRING( true, wxT( "FpEditorTextsRefDefaultText" ),
|
||||
&settings.m_RefDefaultText, wxT( "REF**" ) ) );
|
||||
|
||||
// design settings
|
||||
m_configSettings.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorGrlineWidth" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorGrlineWidth" ),
|
||||
&settings.m_ModuleSegmentWidth,
|
||||
Millimeter2iu( DEFAULT_GR_MODULE_THICKNESS ),
|
||||
Millimeter2iu( 0.01 ), Millimeter2iu( 100.0 ),
|
||||
NULL, 1/IU_PER_MM ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultSizeH" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultSizeH" ),
|
||||
&settings.m_ModuleTextSize.x,
|
||||
Millimeter2iu( DEFAULT_TEXT_MODULE_SIZE ),
|
||||
Millimeter2iu( 0.01 ), Millimeter2iu( 100.0 ),
|
||||
NULL, 1/IU_PER_MM ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultSizeV" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultSizeV" ),
|
||||
&settings.m_ModuleTextSize.y,
|
||||
Millimeter2iu( DEFAULT_TEXT_MODULE_SIZE ),
|
||||
Millimeter2iu(0.01), Millimeter2iu( 100.0 ),
|
||||
NULL, 1/IU_PER_MM ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultThickness" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT_WITH_SCALE( true, wxT( "FpEditorTextsDefaultThickness" ),
|
||||
&settings.m_ModuleTextWidth,
|
||||
Millimeter2iu( DEFAULT_GR_MODULE_THICKNESS ),
|
||||
Millimeter2iu( 0.01 ), Millimeter2iu( 20.0 ),
|
||||
NULL, 1/IU_PER_MM ) );
|
||||
|
||||
m_configSettings.push_back( new PARAM_CFG_WXSTRING( true,
|
||||
m_configParams.push_back( new PARAM_CFG_WXSTRING( true,
|
||||
wxT( "FpEditorRefDefaultText" ),
|
||||
&settings.m_RefDefaultText, wxT( "REF**" ) ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true,
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true,
|
||||
wxT( "FpEditorRefDefaultVisibility" ),
|
||||
&settings.m_RefDefaultVisibility, true ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorRefDefaultLayer" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorRefDefaultLayer" ),
|
||||
&settings.m_RefDefaultlayer,
|
||||
int( F_SilkS ), int( F_SilkS ), int( F_Fab ) ) );
|
||||
|
||||
m_configSettings.push_back( new PARAM_CFG_WXSTRING( true, wxT( "FpEditorValueDefaultText" ),
|
||||
m_configParams.push_back( new PARAM_CFG_WXSTRING( true, wxT( "FpEditorValueDefaultText" ),
|
||||
&settings.m_ValueDefaultText, wxT( "" ) ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_BOOL( true,
|
||||
m_configParams.push_back( new PARAM_CFG_BOOL( true,
|
||||
wxT( "FpEditorValueDefaultVisibility" ),
|
||||
&settings.m_ValueDefaultVisibility, true ) );
|
||||
m_configSettings.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorValueDefaultLayer" ),
|
||||
m_configParams.push_back( new PARAM_CFG_INT( true, wxT( "FpEditorValueDefaultLayer" ),
|
||||
&settings.m_ValueDefaultlayer,
|
||||
int( F_Fab ), int( F_SilkS ), int( F_Fab ) ) );
|
||||
|
||||
return m_configSettings;
|
||||
return m_configParams;
|
||||
}
|
||||
|
||||
|
|
|
@ -474,9 +474,10 @@ protected:
|
|||
/// protected so only friend PCB::IFACE::CreateWindow() can act as sole factory.
|
||||
FOOTPRINT_EDIT_FRAME( KIWAY* aKiway, wxWindow* aParent );
|
||||
|
||||
PCB_LAYER_WIDGET* m_Layers;
|
||||
PCB_LAYER_WIDGET* m_Layers; ///< the layer manager
|
||||
|
||||
PARAM_CFG_ARRAY m_configSettings; ///< List of footprint editor configuration settings.
|
||||
/// List of footprint editor configuration parameters.
|
||||
PARAM_CFG_ARRAY m_configParams;
|
||||
|
||||
/**
|
||||
* Function UpdateTitle
|
||||
|
|
|
@ -264,7 +264,10 @@ FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME( KIWAY* aKiway, wxWindow* aParent ) :
|
|||
wxFont font = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT );
|
||||
m_Layers = new PCB_LAYER_WIDGET( this, GetCanvas(), font.GetPointSize(), true );
|
||||
|
||||
// LoadSettings() *after* creating m_LayersManager, because LoadSettings()
|
||||
// initialize parameters in m_LayersManager
|
||||
LoadSettings( config() );
|
||||
|
||||
SetScreen( new PCB_SCREEN( GetPageSettings().GetSizeIU() ) );
|
||||
GetScreen()->SetMaxUndoItems( m_UndoRedoCountMax );
|
||||
GetScreen()->SetCurItem( NULL );
|
||||
|
@ -498,6 +501,8 @@ void FOOTPRINT_EDIT_FRAME::LoadSettings( wxConfigBase* aCfg )
|
|||
PCB_BASE_FRAME::LoadSettings( aCfg );
|
||||
wxConfigLoadSetups( aCfg, GetConfigurationSettings() );
|
||||
|
||||
m_configSettings.Load( aCfg ); // mainly, load the color config
|
||||
|
||||
// Ensure some params are valid
|
||||
BOARD_DESIGN_SETTINGS& settings = GetDesignSettings();
|
||||
|
||||
|
@ -513,6 +518,8 @@ void FOOTPRINT_EDIT_FRAME::LoadSettings( wxConfigBase* aCfg )
|
|||
|
||||
void FOOTPRINT_EDIT_FRAME::SaveSettings( wxConfigBase* aCfg )
|
||||
{
|
||||
m_configSettings.Save( aCfg );
|
||||
|
||||
PCB_BASE_FRAME::SaveSettings( aCfg );
|
||||
wxConfigSaveSetups( aCfg, GetConfigurationSettings() );
|
||||
}
|
||||
|
|
|
@ -555,6 +555,7 @@ void FOOTPRINT_VIEWER_FRAME::ExportSelectedFootprint( wxCommandEvent& event )
|
|||
void FOOTPRINT_VIEWER_FRAME::LoadSettings( wxConfigBase* aCfg )
|
||||
{
|
||||
EDA_DRAW_FRAME::LoadSettings( aCfg );
|
||||
m_configSettings.Load( aCfg ); // mainly, load the color config
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -23,9 +23,13 @@
|
|||
|
||||
#include <pcb_general_settings.h>
|
||||
|
||||
PCB_GENERAL_SETTINGS::PCB_GENERAL_SETTINGS()
|
||||
PCB_GENERAL_SETTINGS::PCB_GENERAL_SETTINGS( FRAME_T aFrameType )
|
||||
: m_colorsSettings( aFrameType )
|
||||
{
|
||||
Add( "LegacyDRCOn", &m_legacyDrcOn, true );
|
||||
m_frameType = aFrameType;
|
||||
|
||||
if( m_frameType == FRAME_PCB )
|
||||
{
|
||||
Add( "LegacyAutoDeleteOldTrack", &m_legacyAutoDeleteOldTrack, true );
|
||||
Add( "LegacyUse45DegreeTracks",&m_legacyUse45DegreeTracks, true);
|
||||
Add( "LegacyUseTwoSegmentTracks", &m_legacyUseTwoSegmentTracks, true);
|
||||
|
@ -33,6 +37,7 @@ PCB_GENERAL_SETTINGS::PCB_GENERAL_SETTINGS()
|
|||
Add( "MagneticPads", reinterpret_cast<int*>( &m_magneticPads ), CAPTURE_CURSOR_IN_TRACK_TOOL );
|
||||
Add( "MagneticTracks", reinterpret_cast<int*>( &m_magneticTracks ), CAPTURE_CURSOR_IN_TRACK_TOOL );
|
||||
Add( "EditActionChangesTrackWidth", &m_editActionChangesTrackWidth, false );
|
||||
}
|
||||
}
|
||||
|
||||
void PCB_GENERAL_SETTINGS::Load( wxConfigBase* aCfg )
|
||||
|
|
|
@ -39,7 +39,7 @@ enum MAGNETIC_PAD_OPTION_VALUES
|
|||
class PCB_GENERAL_SETTINGS : public SETTINGS
|
||||
{
|
||||
public:
|
||||
PCB_GENERAL_SETTINGS();
|
||||
PCB_GENERAL_SETTINGS( FRAME_T aFrameType );
|
||||
|
||||
void Load ( wxConfigBase* aCfg ) override;
|
||||
void Save( wxConfigBase* aCfg ) override;
|
||||
|
@ -51,15 +51,17 @@ public:
|
|||
return m_colorsSettings;
|
||||
}
|
||||
|
||||
bool m_legacyDrcOn = true;
|
||||
FRAME_T m_frameType;
|
||||
|
||||
bool m_legacyDrcOn = true; // Not stored, always true when starting pcbnew,
|
||||
// false only on request during routing, and
|
||||
// always for temporary use
|
||||
bool m_legacyAutoDeleteOldTrack = true;
|
||||
bool m_legacyAlternateTrackPosture = false;
|
||||
bool m_legacyUse45DegreeTracks = true; // True to allow horiz, vert. and 45deg only tracks
|
||||
bool m_use45DegreeGraphicSegments = false; // True to allow horiz, vert. and 45deg only graphic segments
|
||||
bool m_legacyUseTwoSegmentTracks = true;
|
||||
|
||||
bool m_editActionChangesTrackWidth = false;
|
||||
bool m_showFilterDialogAfterEachSelection = false;
|
||||
|
||||
MAGNETIC_PAD_OPTION_VALUES m_magneticPads = CAPTURE_CURSOR_IN_TRACK_TOOL;
|
||||
MAGNETIC_PAD_OPTION_VALUES m_magneticTracks = CAPTURE_CURSOR_IN_TRACK_TOOL;
|
||||
|
|
Loading…
Reference in New Issue