Merge
This commit is contained in:
commit
a2765a8564
|
@ -4,6 +4,17 @@ KiCad ChangeLog 2010
|
|||
Please add newer entries at the top, list the date and your name with
|
||||
email address.
|
||||
|
||||
2010-may-18, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
|
||||
================================================================================
|
||||
++All:
|
||||
Set minimum cmake version requirement to 2.6.4
|
||||
(does not works with 2.6.1)
|
||||
++Pcbnew, Module Editor:
|
||||
Added footprint name edition in the module properties dialog.
|
||||
Until now, the footprint name used to retrieve a footprint in lib was
|
||||
set only when saving the footprint in lib, and could not be edited without saving
|
||||
the footprint in lib.
|
||||
|
||||
2010-may-01, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
|
||||
================================================================================
|
||||
++Pcbnew:
|
||||
|
|
|
@ -2,9 +2,9 @@ project(kicad)
|
|||
|
||||
# test the minimum Cmake version requirement (could be different under unix or Windows
|
||||
if(WIN32)
|
||||
cmake_minimum_required(VERSION 2.8.0 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 2.6.4 FATAL_ERROR)
|
||||
else(WIN32)
|
||||
cmake_minimum_required(VERSION 2.8.0 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 2.6.4 FATAL_ERROR)
|
||||
endif(WIN32)
|
||||
|
||||
# Path to local CMake modules.
|
||||
|
|
|
@ -284,6 +284,7 @@ void WinEDA_DrawFrame::PlotWorkSheet( PLOTTER* plotter, BASE_SCREEN* screen )
|
|||
case WS_IDENTSHEET:
|
||||
if( WsItem->m_Legende )
|
||||
msg = WsItem->m_Legende;
|
||||
if( screen->m_NumberOfScreen > 1 )
|
||||
msg << screen->m_ScreenNumber;
|
||||
plotter->text( pos, color,
|
||||
msg, TEXT_ORIENT_HORIZ, text_size,
|
||||
|
|
|
@ -121,8 +121,8 @@ bool IsOK( wxWindow* parent, const wxString& text )
|
|||
* Leading and trailing spaces are removed
|
||||
* Buffer is the initial text displayed, anr the returned text
|
||||
* Return:
|
||||
* 1 if OK
|
||||
* 0 if ESCAPE
|
||||
* 0 if OK
|
||||
* 1 if CANCEL
|
||||
*/
|
||||
int Get_Message( const wxString& title, // The question
|
||||
const wxString& frame_caption, // The frame caption
|
||||
|
|
|
@ -549,7 +549,7 @@ Ki_WorkSheetData WS_Art =
|
|||
&WS_Mass,
|
||||
STAMP_X_50 - 30, STAMP_Y_35 + 90,
|
||||
0, 0,
|
||||
wxT( "Арт." ),NULL
|
||||
wxT( "Лит." ),NULL
|
||||
};
|
||||
|
||||
Ki_WorkSheetData WS_Mass =
|
||||
|
@ -1147,6 +1147,7 @@ void WinEDA_DrawFrame::TraceWorkSheet( wxDC* DC, BASE_SCREEN* screen,
|
|||
case WS_IDENTSHEET:
|
||||
if( WsItem->m_Legende )
|
||||
msg = WsItem->m_Legende;
|
||||
if( screen->m_NumberOfScreen > 1 )
|
||||
msg << screen->m_ScreenNumber;
|
||||
DrawGraphicText( DrawPanel, DC, pos, Color, msg,
|
||||
TEXT_ORIENT_HORIZ, size, GR_TEXT_HJUSTIFY_LEFT,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
update=13/5/2006-07:55:36
|
||||
update=16/05/2010 14:21:37
|
||||
version=1
|
||||
last_client=pcbnew
|
||||
[common]
|
||||
|
@ -62,64 +62,28 @@ NetType=0
|
|||
EquName1=devcms
|
||||
[pcbnew]
|
||||
version=1
|
||||
PadDril=1200
|
||||
PadDimH=1500
|
||||
PadDimV=1500
|
||||
PadForm=1
|
||||
PadMask=14745599
|
||||
ViaDiam=600
|
||||
ViaDril=250
|
||||
Isol=110
|
||||
Countlayer=2
|
||||
Lpiste=170
|
||||
RouteTo=15
|
||||
RouteBo=0
|
||||
TypeVia=3
|
||||
Segm45=1
|
||||
Racc45=1
|
||||
Unite=0
|
||||
SegFill=1
|
||||
SegAffG=0
|
||||
NewAffG=1
|
||||
PadFill=1
|
||||
PadAffG=1
|
||||
PadSNum=1
|
||||
ModAffC=1
|
||||
ModAffT=1
|
||||
PcbAffT=1
|
||||
PadDrlX=430
|
||||
PadDimH=550
|
||||
PadDimV=550
|
||||
BoardThickness=630
|
||||
SgPcb45=1
|
||||
TxtPcbV=800
|
||||
TxtPcbH=600
|
||||
TxtModV=600
|
||||
TxtModH=600
|
||||
TxtModW=120
|
||||
HPGLnum=1
|
||||
HPGdiam=15
|
||||
HPGLSpd=20
|
||||
HPGLrec=2
|
||||
HPGLorg=0
|
||||
GERBmin=15
|
||||
VEgarde=100
|
||||
DrawLar=150
|
||||
EdgeLar=150
|
||||
EdgeLar=50
|
||||
TxtLar=170
|
||||
MSegLar=150
|
||||
ForPlot=1
|
||||
WpenSer=10
|
||||
UserGrX=0,1
|
||||
UserGrY=0,1
|
||||
UserGrU=0
|
||||
DivGrPc=1
|
||||
TimeOut=600
|
||||
MaxLnkS=3
|
||||
ShowRat=0
|
||||
ShowMRa=1
|
||||
LastNetListRead=interf_u.net
|
||||
[pcbnew/libraries]
|
||||
LibDir=
|
||||
LibName1=connect
|
||||
LibName2=discret
|
||||
LibName3=pin_array
|
||||
LibName4=divers
|
||||
LibName5=libcms
|
||||
LibName6=supports
|
||||
LibName4=sockets
|
||||
LibName5=divers
|
||||
LibName6=libcms
|
||||
LibName7=display
|
||||
|
|
|
@ -4,27 +4,28 @@
|
|||
LicenseLangString MUILicense ${LANG_RUSSIAN} "..\licendoc.txt"
|
||||
|
||||
;component option
|
||||
LangString TITLE_SEC01 ${LANG_RUSSIAN} "Главная программа"
|
||||
LangString TITLE_SEC02 ${LANG_RUSSIAN} "Архивы и компоненты"
|
||||
LangString TITLE_SEC03 ${LANG_RUSSIAN} "Проекты демонстрации"
|
||||
LangString TITLE_SEC04 ${LANG_RUSSIAN} "Архивы помощи"
|
||||
LangString TITLE_SEC01 ${LANG_RUSSIAN} "Основные программы"
|
||||
LangString TITLE_SEC02 ${LANG_RUSSIAN} "Библиотеки и компоненты"
|
||||
LangString TITLE_SEC03 ${LANG_RUSSIAN} "Демонстрационные проекты"
|
||||
LangString TITLE_SEC04 ${LANG_RUSSIAN} "Файлы помощи"
|
||||
|
||||
;component option descriptions
|
||||
LangString DESC_SEC01 ${LANG_RUSSIAN} "Архивы главной программы."
|
||||
LangString DESC_SEC02 ${LANG_RUSSIAN} "Архивы и компоненты необходимы если они ранее не установить."
|
||||
LangString DESC_SEC03 ${LANG_RUSSIAN} "Некоторые проекты и консультации демонстрации."
|
||||
LangString DESC_SEC04 ${LANG_RUSSIAN} "Архивы помощи."
|
||||
LangString DESC_SEC01 ${LANG_RUSSIAN} "Файлы основных программ."
|
||||
LangString DESC_SEC02 ${LANG_RUSSIAN} "Библиотеки и компоненты необходимы, если они ранее не установлены."
|
||||
LangString DESC_SEC03 ${LANG_RUSSIAN} "Некоторые проекты для демонстрации и консультации."
|
||||
LangString DESC_SEC04 ${LANG_RUSSIAN} "Файлы помощи в формате pdf."
|
||||
|
||||
;warning messages
|
||||
LangString WINGS3D_PROMPT ${LANG_RUSSIAN} "Редактировать или создавать модели предмета, котор 3D вы установить Wings3D. \
|
||||
Wings3D и руководство потребителя могут быть download свободно от проверки web page Wings3D эта коробка для того чтобы \
|
||||
раскрыть web page Wings3D."
|
||||
LangString WINGS3D_PROMPT ${LANG_RUSSIAN} "Для создания или редактирования 3D моделей нобходимо установить Wings3D. \
|
||||
Wings3D и руководство пользователя могут быть свободно загружены с web-страницы Wings3D. \
|
||||
Установите этот флажок для того, чтобы открыть web-страницу Wings3D."
|
||||
|
||||
LangString UNINST_PROMPT ${LANG_RUSSIAN} "Вы уверены вы хотите вполне извлечь $(^name) и весь из своих компонентов? $\n \
|
||||
Это также извлекает все доработанные и новые архивы, архивы и модули в директории программы"
|
||||
LangString UNINST_PROMPT ${LANG_RUSSIAN} "Вы уверены, что хотите полностью удалить ${product_name} и все компоненты? $\n \
|
||||
Это также удалит с Вашего компьютера все измененные и новые файлы, библиотеки и модули в директории программы"
|
||||
|
||||
LangString UNINST_SUCCESS ${LANG_RUSSIAN} "$(^name) успешно извлеклось от вашего компьютера."
|
||||
LangString INSTALLER_RUNNING ${LANG_RUSSIAN} "Установитель уже бежит."
|
||||
LangString UNINSTALLER_RUNNING ${LANG_RUSSIAN} "Установитель уже бежит."
|
||||
LangString ALREADY_INSTALLED ${LANG_RUSSIAN} "${product_name} уже установлено. Установите этот пакет overwrite existing архивы. \
|
||||
Вы хотите продолжать?"
|
||||
LangString UNINST_SUCCESS ${LANG_RUSSIAN} "$(^name) успешно удален с Вашего компьютера."
|
||||
LangString INSTALLER_RUNNING ${LANG_RUSSIAN} "Программа установки $(^name) уже запущена."
|
||||
LangString UNINSTALLER_RUNNING ${LANG_RUSSIAN} "Программа удаления $(^name) уже запущена."
|
||||
LangString ALREADY_INSTALLED ${LANG_RUSSIAN} "${product_name} уже установлен. $\n \
|
||||
Установка этого пакета перезапишет существующие фйалы. \
|
||||
Продолжить?"
|
||||
|
|
|
@ -259,7 +259,7 @@ install(TARGETS pcbnew
|
|||
# The specctra test fails to build properly using MS Visual Studio.
|
||||
if(NOT MSVC)
|
||||
# This one gets made only when testing.
|
||||
add_executable(specctra_test EXCLUDE_FROM_ALL specctra.cpp)
|
||||
add_executable(specctra_test EXCLUDE_FROM_ALL specctra_test.cpp specctra.cpp)
|
||||
target_link_libraries(specctra_test common ${wxWidgets_LIBRARIES})
|
||||
endif(NOT MSVC)
|
||||
|
||||
|
|
|
@ -77,7 +77,8 @@ void DIALOG_MODULE_MODULE_EDITOR::InitModeditProperties()
|
|||
m_ValueCopy->Copy(m_CurrentModule->m_Value);
|
||||
m_ReferenceCtrl->SetValue( m_ReferenceCopy->m_Text );
|
||||
m_ValueCtrl->SetValue( m_ValueCopy->m_Text );
|
||||
|
||||
m_ValueCtrl->SetValue( m_ValueCopy->m_Text );
|
||||
m_FootprintNameCtrl->SetValue( m_CurrentModule->m_LibRef );
|
||||
|
||||
#if wxCHECK_VERSION( 2, 8, 0 )
|
||||
m_AttributsCtrl->SetItemToolTip( 0, _( "Use this attribute for most non smd components" ) );
|
||||
|
@ -343,6 +344,10 @@ void DIALOG_MODULE_MODULE_EDITOR::OnOkClick( wxCommandEvent& event )
|
|||
m_CurrentModule->m_Doc = m_DocCtrl->GetValue();
|
||||
m_CurrentModule->m_KeyWord = m_KeywordCtrl->GetValue();
|
||||
|
||||
// Init footprint name in library
|
||||
if( ! m_FootprintNameCtrl->GetValue( ).IsEmpty() )
|
||||
m_CurrentModule->m_LibRef = m_FootprintNameCtrl->GetValue( );
|
||||
|
||||
// Init Fields:
|
||||
m_CurrentModule->m_Reference->Copy(m_ReferenceCopy );
|
||||
m_CurrentModule->m_Value->Copy(m_ValueCopy );
|
||||
|
@ -429,3 +434,4 @@ void DIALOG_MODULE_MODULE_EDITOR::OnEditValue(wxCommandEvent& event)
|
|||
m_Parent->GetScreen()->m_Curseur = tmp;
|
||||
m_ValueCtrl->SetValue(m_ValueCopy->m_Text);
|
||||
}
|
||||
|
||||
|
|
|
@ -65,6 +65,20 @@ DIALOG_MODULE_MODULE_EDITOR_BASE::DIALOG_MODULE_MODULE_EDITOR_BASE( wxWindow* pa
|
|||
|
||||
PropLeftSizer->Add( sbSizerValue, 0, wxEXPAND, 5 );
|
||||
|
||||
|
||||
PropLeftSizer->Add( 0, 20, 0, 0, 5 );
|
||||
|
||||
wxStaticBoxSizer* sbSizerFootprintName;
|
||||
sbSizerFootprintName = new wxStaticBoxSizer( new wxStaticBox( m_PanelProperties, wxID_ANY, _("Footprint Name in Lib") ), wxHORIZONTAL );
|
||||
|
||||
m_FootprintNameCtrl = new wxTextCtrl( m_PanelProperties, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||
sbSizerFootprintName->Add( m_FootprintNameCtrl, 1, 0, 5 );
|
||||
|
||||
|
||||
sbSizerFootprintName->Add( 0, 0, 0, 0, 5 );
|
||||
|
||||
PropLeftSizer->Add( sbSizerFootprintName, 0, wxEXPAND, 5 );
|
||||
|
||||
m_PanelPropertiesBoxSizer->Add( PropLeftSizer, 1, wxEXPAND, 5 );
|
||||
|
||||
m_PropRightSizer = new wxBoxSizer( wxVERTICAL );
|
||||
|
|
|
@ -578,6 +578,95 @@
|
|||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<property name="height">20</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticBoxSizer" expanded="1">
|
||||
<property name="id">wxID_ANY</property>
|
||||
<property name="label">Footprint Name in Lib</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">sbSizerFootprintName</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
<property name="permission">none</property>
|
||||
<event name="OnUpdateUI"></event>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxTextCtrl" expanded="1">
|
||||
<property name="bg"></property>
|
||||
<property name="context_help"></property>
|
||||
<property name="enabled">1</property>
|
||||
<property name="fg"></property>
|
||||
<property name="font"></property>
|
||||
<property name="hidden">0</property>
|
||||
<property name="id">wxID_ANY</property>
|
||||
<property name="maximum_size"></property>
|
||||
<property name="maxlength">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">m_FootprintNameCtrl</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style"></property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="value"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnChar"></event>
|
||||
<event name="OnEnterWindow"></event>
|
||||
<event name="OnEraseBackground"></event>
|
||||
<event name="OnKeyDown"></event>
|
||||
<event name="OnKeyUp"></event>
|
||||
<event name="OnKillFocus"></event>
|
||||
<event name="OnLeaveWindow"></event>
|
||||
<event name="OnLeftDClick"></event>
|
||||
<event name="OnLeftDown"></event>
|
||||
<event name="OnLeftUp"></event>
|
||||
<event name="OnMiddleDClick"></event>
|
||||
<event name="OnMiddleDown"></event>
|
||||
<event name="OnMiddleUp"></event>
|
||||
<event name="OnMotion"></event>
|
||||
<event name="OnMouseEvents"></event>
|
||||
<event name="OnMouseWheel"></event>
|
||||
<event name="OnPaint"></event>
|
||||
<event name="OnRightDClick"></event>
|
||||
<event name="OnRightDown"></event>
|
||||
<event name="OnRightUp"></event>
|
||||
<event name="OnSetFocus"></event>
|
||||
<event name="OnSize"></event>
|
||||
<event name="OnText"></event>
|
||||
<event name="OnTextEnter"></event>
|
||||
<event name="OnTextMaxLen"></event>
|
||||
<event name="OnTextURL"></event>
|
||||
<event name="OnUpdateUI"></event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag"></property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
|
|
|
@ -56,6 +56,9 @@ class DIALOG_MODULE_MODULE_EDITOR_BASE : public wxDialog
|
|||
wxButton* m_button4;
|
||||
wxTextCtrl* m_ValueCtrl;
|
||||
wxButton* m_button5;
|
||||
|
||||
wxTextCtrl* m_FootprintNameCtrl;
|
||||
|
||||
wxRadioBox* m_AttributsCtrl;
|
||||
wxRadioBox* m_AutoPlaceCtrl;
|
||||
wxStaticText* m_staticText11;
|
||||
|
|
|
@ -391,9 +391,9 @@ void WinEDA_ModuleEditFrame::Delete_Module_In_Library(
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* Save library:
|
||||
* All new modules (ie modules not already exist (if NewModulesOnly == true)
|
||||
/** function Archive_Modules
|
||||
* Save in the library:
|
||||
* All new modules (ie modules not found in this lib) (if NewModulesOnly == true)
|
||||
* all modules (if NewModulesOnly == FALSE)
|
||||
*/
|
||||
void WinEDA_BasePcbFrame::Archive_Modules( const wxString& LibName,
|
||||
|
@ -522,8 +522,8 @@ int WinEDA_BasePcbFrame::Save_Module_In_Library( const wxString& aLibName,
|
|||
|
||||
if( aDisplayDialog )
|
||||
{
|
||||
Get_Message( _( "Name:" ), _( "Save module" ), Name_Cmp, this );
|
||||
if( Name_Cmp.IsEmpty() )
|
||||
int cancel = Get_Message( _( "Name:" ), _( "Save module" ), Name_Cmp, this );
|
||||
if( Name_Cmp.IsEmpty() || cancel )
|
||||
return 0;
|
||||
Name_Cmp.Trim( true );
|
||||
Name_Cmp.Trim( FALSE );
|
||||
|
|
|
@ -47,25 +47,13 @@
|
|||
*/
|
||||
|
||||
|
||||
|
||||
#include <cstdarg>
|
||||
#include <cstdio>
|
||||
|
||||
#include "specctra.h"
|
||||
#include "common.h" // IsOK() & EDA_FileSelector()
|
||||
|
||||
#include <wx/ffile.h>
|
||||
|
||||
// To build the DSN beautifier and unit tester, simply uncomment this and then
|
||||
// use CMake's makefile to build target "specctra_test".
|
||||
//#define SPECCTRA_TEST // define for "stand alone, i.e. unit testing"
|
||||
|
||||
|
||||
#if defined(SPECCTRA_TEST)
|
||||
#define EDA_BASE // build_version.h behavior
|
||||
#undef COMMON_GLOBL
|
||||
#define COMMON_GLOBL // build_version.h behavior
|
||||
#endif
|
||||
#include "build_version.h"
|
||||
|
||||
|
||||
|
@ -510,9 +498,6 @@ wxString SPECCTRA_DB::GetTokenString( int aTok )
|
|||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#if !defined(SPECCTRA_TEST)
|
||||
|
||||
void SPECCTRA_DB::buildLayerMaps( BOARD* aBoard )
|
||||
{
|
||||
// specctra wants top physical layer first, then going down to the
|
||||
|
@ -536,7 +521,6 @@ void SPECCTRA_DB::buildLayerMaps( BOARD* aBoard )
|
|||
layerIds.push_back( CONV_TO_UTF8( aBoard->GetLayerName( kilayer ) ) );
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
int SPECCTRA_DB::findLayerName( const std::string& aLayerName ) const
|
||||
|
@ -4321,71 +4305,4 @@ void PLACE::Format( OUTPUTFORMATTER* out, int nestLevel ) throw( IOError )
|
|||
} // namespace DSN
|
||||
|
||||
|
||||
// unit test this source file. You can use the beautifiers below to output
|
||||
// exactly what you read in but beautified and without #comments. This can
|
||||
// then be used along with program 'diff' to test the parsing and formatting
|
||||
// of every element. You may have to run the first output back through to
|
||||
// get two files that should match, the 2nd and 3rd outputs.
|
||||
|
||||
|
||||
#if defined(SPECCTRA_TEST)
|
||||
|
||||
using namespace DSN;
|
||||
|
||||
|
||||
int main( int argc, char** argv )
|
||||
{
|
||||
// wxString filename( wxT("/tmp/fpcroute/Sample_1sided/demo_1sided.dsn") );
|
||||
// wxString filename( wxT("/tmp/testdesigns/test.dsn") );
|
||||
// wxString filename( wxT("/tmp/testdesigns/test.ses") );
|
||||
wxString filename( wxT("/tmp/specctra_big.dsn") );
|
||||
|
||||
SPECCTRA_DB db;
|
||||
bool failed = false;
|
||||
|
||||
SetLocaleTo_C_standard( ); // Switch the locale to standard C
|
||||
|
||||
if( argc == 2 )
|
||||
{
|
||||
filename = CONV_FROM_UTF8( argv[1] );
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
// db.LoadPCB( filename );
|
||||
db.LoadSESSION( filename );
|
||||
}
|
||||
catch( IOError ioe )
|
||||
{
|
||||
fprintf( stderr, "%s\n", CONV_TO_UTF8(ioe.errorText) );
|
||||
failed = true;
|
||||
}
|
||||
|
||||
if( !failed )
|
||||
fprintf( stderr, "loaded OK\n" );
|
||||
|
||||
// export what we read in, making this test program basically a beautifier
|
||||
// hose the beautified DSN file to stdout. If an exception occurred,
|
||||
// we will be outputting only a portion of what we wanted to read in.
|
||||
db.SetFILE( stdout );
|
||||
|
||||
#if 0
|
||||
// export a PCB
|
||||
DSN::PCB* pcb = db.GetPCB();
|
||||
pcb->Format( &db, 0 );
|
||||
|
||||
#else
|
||||
// export a SESSION file.
|
||||
DSN::SESSION* ses = db.GetSESSION();
|
||||
ses->Format( &db, 0 );
|
||||
#endif
|
||||
|
||||
SetLocaleTo_Default( ); // revert to the current locale
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
//EOF
|
||||
|
||||
|
|
|
@ -0,0 +1,110 @@
|
|||
/*
|
||||
* This program source code file is part of KICAD, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2010 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
|
||||
* Copyright (C) 2010 Kicad Developers, see change_log.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
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, you may find one here:
|
||||
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
||||
* or you may search the http://www.gnu.org website for the version 2 license,
|
||||
* or you may write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
|
||||
// unit test the specctra.cpp file. You can use the beautifiers below to output
|
||||
// exactly what you read in but beautified and without #comments. This can
|
||||
// then be used along with program 'diff' to test the parsing and formatting
|
||||
// of every element. You may have to run the first output back through to
|
||||
// get two files that should match, the 2nd and 3rd outputs.
|
||||
|
||||
|
||||
|
||||
#include <cstdarg>
|
||||
#include <cstdio>
|
||||
|
||||
#include "specctra.h"
|
||||
#include "common.h"
|
||||
|
||||
|
||||
using namespace DSN;
|
||||
|
||||
|
||||
int main( int argc, char** argv )
|
||||
{
|
||||
// wxString filename( wxT("/tmp/fpcroute/Sample_1sided/demo_1sided.dsn") );
|
||||
// wxString filename( wxT("/tmp/testdesigns/test.dsn") );
|
||||
// wxString filename( wxT("/tmp/testdesigns/test.ses") );
|
||||
wxString filename( wxT("/tmp/specctra_big.dsn") );
|
||||
|
||||
SPECCTRA_DB db;
|
||||
bool failed = false;
|
||||
|
||||
SetLocaleTo_C_standard( ); // Switch the locale to standard C
|
||||
|
||||
if( argc == 2 )
|
||||
{
|
||||
filename = CONV_FROM_UTF8( argv[1] );
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
// db.LoadPCB( filename );
|
||||
db.LoadSESSION( filename );
|
||||
}
|
||||
catch( IOError ioe )
|
||||
{
|
||||
fprintf( stderr, "%s\n", CONV_TO_UTF8(ioe.errorText) );
|
||||
failed = true;
|
||||
}
|
||||
|
||||
if( !failed )
|
||||
fprintf( stderr, "loaded OK\n" );
|
||||
|
||||
// export what we read in, making this test program basically a beautifier
|
||||
// hose the beautified DSN file to stdout. If an exception occurred,
|
||||
// we will be outputting only a portion of what we wanted to read in.
|
||||
db.SetFILE( stdout );
|
||||
|
||||
#if 0
|
||||
// export a PCB
|
||||
DSN::PCB* pcb = db.GetPCB();
|
||||
pcb->Format( &db, 0 );
|
||||
|
||||
#else
|
||||
// export a SESSION file.
|
||||
DSN::SESSION* ses = db.GetSESSION();
|
||||
ses->Format( &db, 0 );
|
||||
#endif
|
||||
|
||||
SetLocaleTo_Default( ); // revert to the current locale
|
||||
}
|
||||
|
||||
//-----<dummy code>---------------------------------------------------
|
||||
|
||||
// a dummy to satisfy link of specctra_test without pulling in BOARD stuff.
|
||||
int BOARD::GetCopperLayerCount() const
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// a dummy to satisfy link of specctra_test without pulling in BOARD stuff.
|
||||
wxString BOARD::GetLayerName( int aLayer ) const
|
||||
{
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
//-----</dummy code>--------------------------------------------------
|
||||
|
||||
//EOF
|
Loading…
Reference in New Issue