Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
kicad-source-mirror
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
kicad-source-mirror
Commits
a2765a85
Commit
a2765a85
authored
May 16, 2010
by
Jerry Jacobs
Browse files
Options
Browse Files
Download
Plain Diff
Merge
parents
d2994d58
727f77db
Changes
15
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
2903 additions
and
2786 deletions
+2903
-2786
CHANGELOG.txt
CHANGELOG.txt
+11
-0
CMakeLists.txt
CMakeLists.txt
+2
-2
common_plot_functions.cpp
common/common_plot_functions.cpp
+3
-2
confirm.cpp
common/confirm.cpp
+2
-2
worksheet.cpp
common/worksheet.cpp
+3
-2
interf_u.pro
demos/interf_u/interf_u.pro
+89
-125
Russian.nsh
packaging/windows/nsis/Russian.nsh
+19
-18
CMakeLists.txt
pcbnew/CMakeLists.txt
+1
-1
dialog_edit_module_for_Modedit.cpp
pcbnew/dialog_edit_module_for_Modedit.cpp
+7
-1
dialog_edit_module_for_Modedit_base.cpp
pcbnew/dialog_edit_module_for_Modedit_base.cpp
+279
-265
dialog_edit_module_for_Modedit_base.fbp
pcbnew/dialog_edit_module_for_Modedit_base.fbp
+2262
-2173
dialog_edit_module_for_Modedit_base.h
pcbnew/dialog_edit_module_for_Modedit_base.h
+110
-107
librairi.cpp
pcbnew/librairi.cpp
+5
-5
specctra.cpp
pcbnew/specctra.cpp
+0
-83
specctra_test.cpp
pcbnew/specctra_test.cpp
+110
-0
No files found.
CHANGELOG.txt
View file @
a2765a85
...
...
@@ -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:
...
...
CMakeLists.txt
View file @
a2765a85
...
...
@@ -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.
...
...
common/common_plot_functions.cpp
View file @
a2765a85
...
...
@@ -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
,
...
...
common/confirm.cpp
View file @
a2765a85
...
...
@@ -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
...
...
common/worksheet.cpp
View file @
a2765a85
...
...
@@ -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
,
...
...
demos/interf_u/interf_u.pro
View file @
a2765a85
update
=
1
3
/
5
/
2006
-
07
:
55
:
36
update
=
1
6
/
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
packaging/windows/nsis/Russian.nsh
View file @
a2765a85
...
...
@@ -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 . \
?"
\ No newline at end of file
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 \
. \
?"
pcbnew/CMakeLists.txt
View file @
a2765a85
...
...
@@ -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
)
...
...
pcbnew/dialog_edit_module_for_Modedit.cpp
View file @
a2765a85
...
...
@@ -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
);
}
pcbnew/dialog_edit_module_for_Modedit_base.cpp
View file @
a2765a85
...
...
@@ -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
);
...
...
pcbnew/dialog_edit_module_for_Modedit_base.fbp
View file @
a2765a85
...
...
@@ -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"
>
...
...
pcbnew/dialog_edit_module_for_Modedit_base.h
View file @
a2765a85
...
...
@@ -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
;
...
...
pcbnew/librairi.cpp
View file @
a2765a85
...
...
@@ -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
);
...
...
pcbnew/specctra.cpp
View file @
a2765a85
...
...
@@ -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
pcbnew/specctra_test.cpp
0 → 100644
View file @
a2765a85
/*
* 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
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment