int FPID::SetLibNickname( const UTF8& aLogical ) { int offset = okLogical( aLogical ); if( offset == -1 ) { nickname = aLogical; } return offset; }
int FP_LIB_ID::SetLogicalLib( const std::string& aLogical ) { int offset = okLogical( aLogical ); if( offset == -1 ) { logical = aLogical; } return offset; }
UTF8 FPID::Format( const UTF8& aLogicalLib, const UTF8& aFootprintName, const UTF8& aRevision ) throw( PARSE_ERROR ) { UTF8 ret; int offset; if( aLogicalLib.size() ) { offset = okLogical( aLogicalLib ); if( offset != -1 ) { THROW_PARSE_ERROR( _( "Illegal character found in logical library name" ), wxString::FromUTF8( aLogicalLib.c_str() ), aLogicalLib.c_str(), 0, offset ); } ret += aLogicalLib; ret += ':'; } if( aRevision.size() ) { offset = okRevision( aRevision ); if( offset != -1 ) { THROW_PARSE_ERROR( _( "Illegal character found in revision" ), wxString::FromUTF8( aRevision.c_str() ), aRevision.c_str(), 0, offset ); } ret += '/'; ret += aRevision; } return ret; }