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
846b2ae2
Commit
846b2ae2
authored
Jan 02, 2015
by
Fat-Zer
Committed by
jean-pierre charras
Jan 02, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix Bug #1381287 (CvPCB ignores the footprint filter field on aliased components)
parent
45fcc04d
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
27 additions
and
0 deletions
+27
-0
netlist.keywords
common/netlist.keywords
+2
-0
kicad_netlist_reader.cpp
pcbnew/kicad_netlist_reader.cpp
+25
-0
No files found.
common/netlist.keywords
View file @
846b2ae2
...
@@ -36,3 +36,5 @@ tstamps
...
@@ -36,3 +36,5 @@ tstamps
uri
uri
value
value
version
version
aliases
alias
pcbnew/kicad_netlist_reader.cpp
View file @
846b2ae2
...
@@ -386,6 +386,9 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
...
@@ -386,6 +386,9 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
{
{
/* Parses a section like
/* Parses a section like
* (libpart (lib device) (part C)
* (libpart (lib device) (part C)
* (aliases
* (alias Cxx)
* (alias Cyy))
* (description "Condensateur non polarise")
* (description "Condensateur non polarise")
* (footprints
* (footprints
* (fp SM*)
* (fp SM*)
...
@@ -405,6 +408,7 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
...
@@ -405,6 +408,7 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
wxString
libName
;
wxString
libName
;
wxString
libPartName
;
wxString
libPartName
;
wxArrayString
footprintFilters
;
wxArrayString
footprintFilters
;
wxArrayString
aliases
;
// The last token read was libpart, so read the next token
// The last token read was libpart, so read the next token
while
(
(
token
=
NextTok
())
!=
T_RIGHT
)
while
(
(
token
=
NextTok
())
!=
T_RIGHT
)
...
@@ -443,6 +447,20 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
...
@@ -443,6 +447,20 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
break
;
break
;
case
T_aliases
:
while
(
(
token
=
NextTok
())
!=
T_RIGHT
)
{
if
(
token
==
T_LEFT
)
token
=
NextTok
();
if
(
token
!=
T_alias
)
Expecting
(
T_alias
);
NeedSYMBOLorNUMBER
();
aliases
.
Add
(
FROM_UTF8
(
CurText
()
)
);
NeedRIGHT
();
}
break
;
default
:
default
:
// Skip not used data (i.e all other tokens)
// Skip not used data (i.e all other tokens)
skipCurrent
();
skipCurrent
();
...
@@ -457,5 +475,12 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
...
@@ -457,5 +475,12 @@ void KICAD_NETLIST_PARSER::parseLibPartList() throw( IO_ERROR, PARSE_ERROR )
if
(
component
->
IsLibSource
(
libName
,
libPartName
)
)
if
(
component
->
IsLibSource
(
libName
,
libPartName
)
)
component
->
SetFootprintFilters
(
footprintFilters
);
component
->
SetFootprintFilters
(
footprintFilters
);
for
(
unsigned
jj
=
0
;
jj
<
aliases
.
GetCount
();
jj
++
)
{
if
(
component
->
IsLibSource
(
libName
,
aliases
[
jj
]
)
)
component
->
SetFootprintFilters
(
footprintFilters
);
}
}
}
}
}
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