Commit 10e13ae5 authored by dickelbeck's avatar dickelbeck
Browse files

layer names in *.brd file

parent 7c482f68
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -5,16 +5,27 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with
email address.

2008-Mar-3 UPDATE   Dick Hollenbeck <dick@softplc.com>
================================================================================
+pcbnew
    Completed transision to BOARD::GetLayerName() and away from ReturnPcbLayerName().
    LayerNames and LAYER_T are saved int the *.brd file and may be edited
    there with a text editor until the UI is in place to edit them in PCBNEW.
    To understand the strategy, see BOARD::GetLayerName() in class_board.cpp
    and see WinEDA_BasePcbFrame::ReadSetup().  I will be adding "Board" menu
    item to Preferences, but there is more to come before the UI gets done:
    net classes.


2008-mars-03 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
3d display:
    Added Jonas Diemer's patch (enhanced movings from mouse and tools)


2008-Mar-1 UPDATE   Dick Hollenbeck <dick@softplc.com>
================================================================================
+pcbnew

    Changed ioascii.cpp to save and load board specific layer names, for DEBUG
    build only. I want to add class LAYER, see below. Added
    BOARD::SetLayerName(), BOARD::SetLayerType(), and BOARD::GetLayerType().
+2 −63
Original line number Diff line number Diff line
@@ -265,8 +265,6 @@ void MyFree( void* pt_mem )
}




/**************************************************************/
wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding )
/**************************************************************/
@@ -276,32 +274,11 @@ wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding )
 *  (not internatinalized, no space)
 */
{

#if 1 && defined(DEBUG)

    // Dick: this code is working fine, but we have no place to store the layer names yet.

    const unsigned LAYER_LIMIT = 29;

    // @todo: these layer names should be configurable on a per project basis.
    // In anticipation of that enhancement, here is a different strategy for
    // deriving the file names from the "configured" layer names.
    // The main idea is to use a single array of names, and then remove
    // spaces on the fly from the names when writing to disk.
    // These are only default layer names.  For PCBNEW, the copper names
    // may be over-ridden in the BOARD file *.brd.


#if 1   // my specific layer names
    static const wxString layer_name_list[] = {
        _( "H2 Bottom" ), _( "Power" ),     _( "V2 Signal" ), _( "H1 Signal" ),
        _( "Ground" ),    _( "Inner L5" ),  _( "Inner L6" ),  _( "Inner L7" ),
        _( "Inner L8" ),  _( "Inner L9" ),  _( "Inner L10" ), _( "Inner L11" ),
        _( "Inner L12" ), _( "Inner L13" ), _( "Inner L14" ), _( "Component" ),
        _( "Adhes Cop" ), _( "Adhes Cmp" ), _( "SoldP Cop" ), _( "SoldP Cmp" ),
        _( "SilkS Cop" ), _( "SilkS Cmp" ), _( "Mask Cop" ),  _( "Mask Cmp" ),
        _( "Drawings " ), _( "Comments" ),  _( "Eco1" ),      _( "Eco2" ),
        _( "Edges Pcb" ), _( "BAD INDEX" ),
    };
#else
    static const wxString layer_name_list[] = {
        _( "Copper   " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ),
        _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ),
@@ -313,8 +290,6 @@ wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding )
        _( "Edges Pcb" ), _( "BAD INDEX" ),
    };

#endif

    if( (unsigned) layer_number > LAYER_LIMIT )
        layer_number = LAYER_LIMIT;

@@ -332,42 +307,6 @@ wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding )
    }
    else
        return *p;

#else   // long standing established code:

    static const wxString layer_name_list[] = {
        _( "Copper   " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ),
        _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ),
        _( "Inner L8 " ), _( "Inner L9 " ), _( "Inner L10" ), _( "Inner L11" ),
        _( "Inner L12" ), _( "Inner L13" ), _( "Inner L14" ), _( "Component" ),
        _( "Adhes Cop" ), _( "Adhes Cmp" ), _( "SoldP Cop" ), _( "SoldP Cmp" ),
        _( "SilkS Cop" ), _( "SilkS Cmp" ), _( "Mask Cop " ), _( "Mask Cmp " ),
        _( "Drawings " ), _( "Comments " ), _( "Eco1     " ), _( "Eco2     " ),
        _( "Edges Pcb" ), _( "---      " ), _( "---      " ), _( "---      " )
    };


    // Same as layer_name_list, without space, not internationalized
    static const wxString layer_name_list_for_filename[] = {
        wxT( "Copper" ),   wxT( "InnerL1" ),  wxT( "InnerL2" ),  wxT( "InnerL3" ),
        wxT( "InnerL4" ),  wxT( "InnerL5" ),  wxT( "InnerL6" ),  wxT( "InnerL7" ),
        wxT( "InnerL8" ),  wxT( "InnerL9" ),  wxT( "InnerL10" ), wxT( "InnerL11" ),
        wxT( "InnerL12" ), wxT( "InnerL13" ), wxT( "InnerL14" ), wxT( "Component" ),
        wxT( "AdhesCop" ), wxT( "AdhesCmp" ), wxT( "SoldPCop" ), wxT( "SoldPCmp" ),
        wxT( "SilkSCop" ), wxT( "SilkSCmp" ), wxT( "MaskCop" ),  wxT( "MaskCmp" ),
        wxT( "Drawings" ), wxT( "Comments" ), wxT( "Eco1" ),     wxT( "Eco2" ),
        wxT( "EdgesPcb" ), wxT( "---" ),      wxT( "---" ),      wxT( "---" )
    };


    if( (unsigned) layer_number >= 31u )
        layer_number = 31;

    return omitSpacePadding  ?
        layer_name_list_for_filename[layer_number] :
        layer_name_list[layer_number];
#endif

}


+4 −3
Original line number Diff line number Diff line
@@ -319,7 +319,8 @@ bool WinEDA_App::ReadProjectConfig( const wxString& local_config_filename,
        {
            #undef PTCFG
            #define PTCFG ( (PARAM_CFG_DOUBLE*) pt_cfg )
            double ftmp = 0; wxString msg;
            double ftmp = 0;
            wxString msg;
            if( pt_cfg->m_Setup )
                msg = m_EDA_Config->Read( pt_cfg->m_Ident, wxT( "" ) );
            else
+55 −47
Original line number Diff line number Diff line
@@ -20,13 +20,14 @@
/**************************************************/
void Read_Config( const wxString& FileName )
/**************************************************/
/* lit la configuration
	1 - lit cvpcb.cnf
	2 - si non trouve lit <chemin de cvpcb.exe>/cvpcb.cnf
	3 - si non trouve: init des variables aux valeurs par defaut

Remarque:
	le chemin de l'executable cvpcb.exe doit etre dans BinDir
/* lit la configuration
  * 1 - lit cvpcb.cnf
  * 2 - si non trouve lit <chemin de cvpcb.exe>/cvpcb.cnf
  * 3 - si non trouve: init des variables aux valeurs par defaut
 *
  * Remarque:
  * le chemin de l'executable cvpcb.exe doit etre dans BinDir
 */
{
    wxString FullFileName = FileName;
@@ -38,8 +39,11 @@ wxString FullFileName = FileName ;
    g_EDA_Appl->ReadProjectConfig( FullFileName,
        GROUP, ParamCfgList, FALSE );

	if ( PkgInExtBuffer.IsEmpty() ) PkgInExtBuffer = wxT(".pkg");
	if ( NetInExtBuffer.IsEmpty() ) NetInExtBuffer = wxT(".net"),
    if( PkgInExtBuffer.IsEmpty() )
        PkgInExtBuffer = wxT( ".pkg" );

    if( NetInExtBuffer.IsEmpty() )
        NetInExtBuffer = wxT( ".net" );

    /* Inits autres variables */
    SetRealLibraryPath( wxT( "modules" ) );
@@ -49,19 +53,22 @@ wxString FullFileName = FileName ;
/************************************************************/
void WinEDA_CvpcbFrame::Update_Config( wxCommandEvent& event )
/************************************************************/

/* fonction relai d'appel a Save_Config,
	la vraie fonction de sauvegarde de la config
  * la vraie fonction de sauvegarde de la config
 */
{
    Save_Config( this );
}


/************************************/
void Save_Config( wxWindow* parent )
/************************************/
/* enregistrement de la config */
{
    wxString path, FullFileName;

    wxString mask( wxT( "*" ) );

    FullFileName = FFileName;
@@ -77,9 +84,10 @@ wxString mask( wxT("*"));
        wxFD_SAVE,
        TRUE
        );
	if ( FullFileName.IsEmpty()) return;

    if( FullFileName.IsEmpty() )
        return;

    /* ecriture de la configuration */
    g_EDA_Appl->WriteProjectConfig( FullFileName, GROUP, ParamCfgList );
}
+0 −2
Original line number Diff line number Diff line
@@ -55,8 +55,6 @@ bool WinEDA_App::OnInit()
    SetTopWindow( m_GerberFrame );
    m_GerberFrame->Show( TRUE );

    m_GerberFrame->m_Pcb = new  BOARD( NULL, m_GerberFrame );

    m_GerberFrame->Zoom_Automatique( TRUE );

    if( argc > 1 )
Loading