Loading change_log.txt +7 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,13 @@ Please add newer entries at the top, list the date and your name with email address. email address. 2007-Sep-30 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ + pcbnew Added dedicated Show() function for SEGVIA. Enhanced BOARD_ITEM::MenuText() for SEGVIA. Added to todo.txt. 2007-Sep-29 UPDATE Dick Hollenbeck <dick@softplc.com> 2007-Sep-29 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ ================================================================================ + pcbnew + pcbnew Loading common/common.cpp +7 −10 Original line number Original line Diff line number Diff line Loading @@ -265,7 +265,7 @@ void MyFree( void* pt_mem ) /**************************************************************/ /**************************************************************/ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding ) /**************************************************************/ /**************************************************************/ /* Return the name of the layer number "layer_number". /* Return the name of the layer number "layer_number". Loading @@ -273,7 +273,6 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) * (not internatinalized, no space) * (not internatinalized, no space) */ */ { { wxString layer_name; static const wxString layer_name_list[] = { static const wxString layer_name_list[] = { _( "Copper " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ), _( "Copper " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ), _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ), _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ), Loading @@ -285,6 +284,7 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) _( "Edges Pcb" ), _( "--- " ), _( "--- " ), _( "--- " ) _( "Edges Pcb" ), _( "--- " ), _( "--- " ), _( "--- " ) }; }; // Same as layer_name_list, without space, not internationalized // Same as layer_name_list, without space, not internationalized static const wxString layer_name_list_for_filename[] = { static const wxString layer_name_list_for_filename[] = { wxT( "Copper" ), wxT( "InnerL1" ), wxT( "InnerL2" ), wxT( "InnerL3" ), wxT( "Copper" ), wxT( "InnerL1" ), wxT( "InnerL2" ), wxT( "InnerL3" ), Loading @@ -297,15 +297,12 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) wxT( "EdgesPcb" ), wxT( "---" ), wxT( "---" ), wxT( "---" ) wxT( "EdgesPcb" ), wxT( "---" ), wxT( "---" ), wxT( "---" ) }; }; if( layer_number >= 31 ) if( (unsigned) layer_number >= 31u ) layer_number = 31; layer_number = 31; if( is_filename ) return omitSpacePadding ? layer_name = layer_name_list_for_filename[layer_number]; layer_name_list_for_filename[layer_number] : else layer_name_list[layer_number]; layer_name = layer_name_list[layer_number]; return layer_name; } } Loading pcbnew/class_board_item.cpp +28 −10 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const case TYPEMODULE: case TYPEMODULE: text << _( "Footprint" ) << wxT( " " ) << ( (MODULE*) item )->GetReference(); text << _( "Footprint" ) << wxT( " " ) << ( (MODULE*) item )->GetReference(); text << wxT( " (" ) << ReturnPcbLayerName( item->m_Layer ) << wxT( ")" ); text << wxT( " (" ) << ReturnPcbLayerName( item->m_Layer ).Trim() << wxT( ")" ); break; break; case TYPEPAD: case TYPEPAD: Loading @@ -47,7 +47,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const break; break; case TYPEDRAWSEGMENT: case TYPEDRAWSEGMENT: text << _( "Pcb Graphic" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); // @todo: extend text text << _( "Pcb Graphic" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); // @todo: extend text break; break; case TYPETEXTE: case TYPETEXTE: Loading @@ -56,7 +56,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const text << ( (TEXTE_PCB*) item )->m_Text; text << ( (TEXTE_PCB*) item )->m_Text; else else text += ( (TEXTE_PCB*) item )->m_Text.Left( 10 ) + wxT( ".." ); text += ( (TEXTE_PCB*) item )->m_Text.Left( 10 ) + wxT( ".." ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPETEXTEMODULE: case TYPETEXTEMODULE: Loading Loading @@ -130,7 +130,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPEZONE: case TYPEZONE: Loading @@ -145,16 +145,34 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPEVIA: case TYPEVIA: text << _( "Via" ) << wxT( " " ) << ( (SEGVIA*) item )->m_NetCode; { net = aPcb->FindNet( ( (TRACK*) item )->m_NetCode ); SEGVIA* via = (SEGVIA*) item; text << _( "Via" ) << wxT( " " ) << via->m_NetCode; int shape = via->Shape(); if( shape == VIA_ENTERREE ) text << wxT(" ") << _( "Blind" ); else if( shape == VIA_BORGNE ) text << wxT(" ") << _("Buried"); // else say nothing about normal vias net = aPcb->FindNet( via->m_NetCode ); if( net ) if( net ) { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } // say which layers, only two for now int topLayer; int botLayer; via->ReturnLayerPair( &topLayer, &botLayer ); text << _( " on " ) << ReturnPcbLayerName( topLayer).Trim() << wxT(" <-> ") << ReturnPcbLayerName( botLayer ).Trim(); } break; break; case TYPEMARQUEUR: case TYPEMARQUEUR: Loading @@ -170,7 +188,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const break; break; case TYPEEDGEZONE: case TYPEEDGEZONE: text << _( "Edge Zone" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); // @todo: extend text text << _( "Edge Zone" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); // @todo: extend text break; break; default: default: Loading pcbnew/class_track.cpp +46 −2 Original line number Original line Diff line number Diff line Loading @@ -816,6 +816,7 @@ bool TRACK::HitTest( const wxPoint& ref_pos ) #if defined(DEBUG) #if defined(DEBUG) /** /** * Function Show * Function Show * is used to output the object tree, currently for debugging only. * is used to output the object tree, currently for debugging only. Loading @@ -826,10 +827,10 @@ bool TRACK::HitTest( const wxPoint& ref_pos ) void TRACK::Show( int nestLevel, std::ostream& os ) void TRACK::Show( int nestLevel, std::ostream& os ) { { NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << " shape=\"" << m_Shape << '"' << // " shape=\"" << m_Shape << '"' << " layer=\"" << m_Layer << '"' << " layer=\"" << m_Layer << '"' << " width=\"" << m_Width << '"' << " width=\"" << m_Width << '"' << " drill=\"" << m_Drill << '"' << // " drill=\"" << m_Drill << '"' << " netcode=\"" << m_NetCode << "\">" << " netcode=\"" << m_NetCode << "\">" << "<start" << m_Start << "/>" << "<start" << m_Start << "/>" << "<end" << m_End << "/>"; "<end" << m_End << "/>"; Loading @@ -837,6 +838,49 @@ void TRACK::Show( int nestLevel, std::ostream& os ) os << "</" << GetClass().Lower().mb_str() << ">\n"; os << "</" << GetClass().Lower().mb_str() << ">\n"; } } /** * Function Show * is used to output the object tree, currently for debugging only. * @param nestLevel An aid to prettier tree indenting, and is the level * of nesting of this object within the overall tree. * @param os The ostream& to output to. */ void SEGVIA::Show( int nestLevel, std::ostream& os ) { const char* cp; switch( Shape() ) { case VIA_NORMALE: cp = "through"; break; case VIA_ENTERREE: cp = "blind"; break; case VIA_BORGNE: cp = "buried"; break; default: case VIA_NOT_DEFINED: cp = "undefined"; break; } int topLayer; int botLayer; ReturnLayerPair( &topLayer, &botLayer ); NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << " type=\"" << cp << '"' << " layers=\"" << ReturnPcbLayerName( topLayer).Trim().mb_str() << "," << ReturnPcbLayerName( botLayer ).Trim().mb_str() << '"' << " width=\"" << m_Width << '"' << " drill=\"" << m_Drill << '"' << " netcode=\"" << m_NetCode << "\">" << "<pos" << m_Start << "/>"; os << "</" << GetClass().Lower().mb_str() << ">\n"; } #endif #endif pcbnew/class_track.h +16 −1 Original line number Original line Diff line number Diff line Loading @@ -146,6 +146,8 @@ public: return wxT("TRACK"); return wxT("TRACK"); } } #if defined(DEBUG) /** /** * Function Show * Function Show * is used to output the object tree, currently for debugging only. * is used to output the object tree, currently for debugging only. Loading @@ -154,7 +156,7 @@ public: * @param os The ostream& to output to. * @param os The ostream& to output to. */ */ void Show( int nestLevel, std::ostream& os ); void Show( int nestLevel, std::ostream& os ); #endif }; }; Loading Loading @@ -211,6 +213,19 @@ public: { { return wxT("VIA"); return wxT("VIA"); } } #if defined(DEBUG) /** * Function Show * is used to output the object tree, currently for debugging only. * @param nestLevel An aid to prettier tree indenting, and is the level * of nesting of this object within the overall tree. * @param os The ostream& to output to. */ void Show( int nestLevel, std::ostream& os ); #endif }; }; Loading Loading
change_log.txt +7 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,13 @@ Please add newer entries at the top, list the date and your name with email address. email address. 2007-Sep-30 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ + pcbnew Added dedicated Show() function for SEGVIA. Enhanced BOARD_ITEM::MenuText() for SEGVIA. Added to todo.txt. 2007-Sep-29 UPDATE Dick Hollenbeck <dick@softplc.com> 2007-Sep-29 UPDATE Dick Hollenbeck <dick@softplc.com> ================================================================================ ================================================================================ + pcbnew + pcbnew Loading
common/common.cpp +7 −10 Original line number Original line Diff line number Diff line Loading @@ -265,7 +265,7 @@ void MyFree( void* pt_mem ) /**************************************************************/ /**************************************************************/ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) wxString ReturnPcbLayerName( int layer_number, bool omitSpacePadding ) /**************************************************************/ /**************************************************************/ /* Return the name of the layer number "layer_number". /* Return the name of the layer number "layer_number". Loading @@ -273,7 +273,6 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) * (not internatinalized, no space) * (not internatinalized, no space) */ */ { { wxString layer_name; static const wxString layer_name_list[] = { static const wxString layer_name_list[] = { _( "Copper " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ), _( "Copper " ), _( "Inner L1 " ), _( "Inner L2 " ), _( "Inner L3 " ), _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ), _( "Inner L4 " ), _( "Inner L5 " ), _( "Inner L6 " ), _( "Inner L7 " ), Loading @@ -285,6 +284,7 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) _( "Edges Pcb" ), _( "--- " ), _( "--- " ), _( "--- " ) _( "Edges Pcb" ), _( "--- " ), _( "--- " ), _( "--- " ) }; }; // Same as layer_name_list, without space, not internationalized // Same as layer_name_list, without space, not internationalized static const wxString layer_name_list_for_filename[] = { static const wxString layer_name_list_for_filename[] = { wxT( "Copper" ), wxT( "InnerL1" ), wxT( "InnerL2" ), wxT( "InnerL3" ), wxT( "Copper" ), wxT( "InnerL1" ), wxT( "InnerL2" ), wxT( "InnerL3" ), Loading @@ -297,15 +297,12 @@ wxString ReturnPcbLayerName( int layer_number, bool is_filename ) wxT( "EdgesPcb" ), wxT( "---" ), wxT( "---" ), wxT( "---" ) wxT( "EdgesPcb" ), wxT( "---" ), wxT( "---" ), wxT( "---" ) }; }; if( layer_number >= 31 ) if( (unsigned) layer_number >= 31u ) layer_number = 31; layer_number = 31; if( is_filename ) return omitSpacePadding ? layer_name = layer_name_list_for_filename[layer_number]; layer_name_list_for_filename[layer_number] : else layer_name_list[layer_number]; layer_name = layer_name_list[layer_number]; return layer_name; } } Loading
pcbnew/class_board_item.cpp +28 −10 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const case TYPEMODULE: case TYPEMODULE: text << _( "Footprint" ) << wxT( " " ) << ( (MODULE*) item )->GetReference(); text << _( "Footprint" ) << wxT( " " ) << ( (MODULE*) item )->GetReference(); text << wxT( " (" ) << ReturnPcbLayerName( item->m_Layer ) << wxT( ")" ); text << wxT( " (" ) << ReturnPcbLayerName( item->m_Layer ).Trim() << wxT( ")" ); break; break; case TYPEPAD: case TYPEPAD: Loading @@ -47,7 +47,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const break; break; case TYPEDRAWSEGMENT: case TYPEDRAWSEGMENT: text << _( "Pcb Graphic" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); // @todo: extend text text << _( "Pcb Graphic" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); // @todo: extend text break; break; case TYPETEXTE: case TYPETEXTE: Loading @@ -56,7 +56,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const text << ( (TEXTE_PCB*) item )->m_Text; text << ( (TEXTE_PCB*) item )->m_Text; else else text += ( (TEXTE_PCB*) item )->m_Text.Left( 10 ) + wxT( ".." ); text += ( (TEXTE_PCB*) item )->m_Text.Left( 10 ) + wxT( ".." ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPETEXTEMODULE: case TYPETEXTEMODULE: Loading Loading @@ -130,7 +130,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPEZONE: case TYPEZONE: Loading @@ -145,16 +145,34 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); text << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); break; break; case TYPEVIA: case TYPEVIA: text << _( "Via" ) << wxT( " " ) << ( (SEGVIA*) item )->m_NetCode; { net = aPcb->FindNet( ( (TRACK*) item )->m_NetCode ); SEGVIA* via = (SEGVIA*) item; text << _( "Via" ) << wxT( " " ) << via->m_NetCode; int shape = via->Shape(); if( shape == VIA_ENTERREE ) text << wxT(" ") << _( "Blind" ); else if( shape == VIA_BORGNE ) text << wxT(" ") << _("Buried"); // else say nothing about normal vias net = aPcb->FindNet( via->m_NetCode ); if( net ) if( net ) { { text << wxT( " [" ) << net->m_Netname << wxT( "]" ); text << wxT( " [" ) << net->m_Netname << wxT( "]" ); } } // say which layers, only two for now int topLayer; int botLayer; via->ReturnLayerPair( &topLayer, &botLayer ); text << _( " on " ) << ReturnPcbLayerName( topLayer).Trim() << wxT(" <-> ") << ReturnPcbLayerName( botLayer ).Trim(); } break; break; case TYPEMARQUEUR: case TYPEMARQUEUR: Loading @@ -170,7 +188,7 @@ wxString BOARD_ITEM::MenuText( const BOARD* aPcb ) const break; break; case TYPEEDGEZONE: case TYPEEDGEZONE: text << _( "Edge Zone" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ); // @todo: extend text text << _( "Edge Zone" ) << _( " on " ) << ReturnPcbLayerName( item->GetLayer() ).Trim(); // @todo: extend text break; break; default: default: Loading
pcbnew/class_track.cpp +46 −2 Original line number Original line Diff line number Diff line Loading @@ -816,6 +816,7 @@ bool TRACK::HitTest( const wxPoint& ref_pos ) #if defined(DEBUG) #if defined(DEBUG) /** /** * Function Show * Function Show * is used to output the object tree, currently for debugging only. * is used to output the object tree, currently for debugging only. Loading @@ -826,10 +827,10 @@ bool TRACK::HitTest( const wxPoint& ref_pos ) void TRACK::Show( int nestLevel, std::ostream& os ) void TRACK::Show( int nestLevel, std::ostream& os ) { { NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << " shape=\"" << m_Shape << '"' << // " shape=\"" << m_Shape << '"' << " layer=\"" << m_Layer << '"' << " layer=\"" << m_Layer << '"' << " width=\"" << m_Width << '"' << " width=\"" << m_Width << '"' << " drill=\"" << m_Drill << '"' << // " drill=\"" << m_Drill << '"' << " netcode=\"" << m_NetCode << "\">" << " netcode=\"" << m_NetCode << "\">" << "<start" << m_Start << "/>" << "<start" << m_Start << "/>" << "<end" << m_End << "/>"; "<end" << m_End << "/>"; Loading @@ -837,6 +838,49 @@ void TRACK::Show( int nestLevel, std::ostream& os ) os << "</" << GetClass().Lower().mb_str() << ">\n"; os << "</" << GetClass().Lower().mb_str() << ">\n"; } } /** * Function Show * is used to output the object tree, currently for debugging only. * @param nestLevel An aid to prettier tree indenting, and is the level * of nesting of this object within the overall tree. * @param os The ostream& to output to. */ void SEGVIA::Show( int nestLevel, std::ostream& os ) { const char* cp; switch( Shape() ) { case VIA_NORMALE: cp = "through"; break; case VIA_ENTERREE: cp = "blind"; break; case VIA_BORGNE: cp = "buried"; break; default: case VIA_NOT_DEFINED: cp = "undefined"; break; } int topLayer; int botLayer; ReturnLayerPair( &topLayer, &botLayer ); NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << " type=\"" << cp << '"' << " layers=\"" << ReturnPcbLayerName( topLayer).Trim().mb_str() << "," << ReturnPcbLayerName( botLayer ).Trim().mb_str() << '"' << " width=\"" << m_Width << '"' << " drill=\"" << m_Drill << '"' << " netcode=\"" << m_NetCode << "\">" << "<pos" << m_Start << "/>"; os << "</" << GetClass().Lower().mb_str() << ">\n"; } #endif #endif
pcbnew/class_track.h +16 −1 Original line number Original line Diff line number Diff line Loading @@ -146,6 +146,8 @@ public: return wxT("TRACK"); return wxT("TRACK"); } } #if defined(DEBUG) /** /** * Function Show * Function Show * is used to output the object tree, currently for debugging only. * is used to output the object tree, currently for debugging only. Loading @@ -154,7 +156,7 @@ public: * @param os The ostream& to output to. * @param os The ostream& to output to. */ */ void Show( int nestLevel, std::ostream& os ); void Show( int nestLevel, std::ostream& os ); #endif }; }; Loading Loading @@ -211,6 +213,19 @@ public: { { return wxT("VIA"); return wxT("VIA"); } } #if defined(DEBUG) /** * Function Show * is used to output the object tree, currently for debugging only. * @param nestLevel An aid to prettier tree indenting, and is the level * of nesting of this object within the overall tree. * @param os The ostream& to output to. */ void Show( int nestLevel, std::ostream& os ); #endif }; }; Loading