[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-user: A component cannot contain another component?
[1] says so:
component
Valid in: Schematic files ONLY
///
But if create:
$ cat share/gschem/test-1.sym
v 20080127 1
C 100 1300 1 270 0 led-1.sym
{
T 700 500 5 10 0 0 270 0 1
device=LED
T 500 500 5 10 1 1 270 0 1
refdes=LED?
T 900 500 5 10 0 0 270 0 1
symversion=0.1
}
C 400 2000 1 90 0 resistor-2.sym
{
T 50 2400 5 10 0 0 90 0 1
device=RESISTOR
T 100 2200 5 10 1 1 90 0 1
refdes=R?
}
N 300 2000 300 1300 4
Then I can access that "test-1" component from the library browser
and create
$ cat test.sch
v 20080127 1
C 40000 40000 0 0 0 title-B.sym
C 45300 44800 1 0 0 test-1.sym
C 43300 47000 1 270 0 battery-3.sym
{
T 44000 46700 5 10 0 0 270 0 1
device=BATTERY
T 43800 46700 5 10 1 1 270 0 1
refdes=B?
T 44250 46700 5 10 0 0 270 0 1
symversion=0.1
}
L 43500 47000 43500 47800 3 0 0 0 -1 -1
L 43500 47800 45600 47800 3 0 0 0 -1 -1
L 45600 47800 45600 47700 3 0 0 0 -1 -1
L 43500 45900 43500 45200 3 0 0 0 -1 -1
L 45600 45200 43500 45200 3 0 0 0 -1 -1
So, why the restriction (no "C" in sym files)?
///
Looking into libgeda/src/o_complex_basic.c I see that OBJ_COMPLEX
("C" in .sym files) is forbidden in some cases, e.g.:
void o_complex_translate_world(TOPLEVEL *toplevel, int dx, int dy,
OBJECT *object)
{
g_return_if_fail (object != NULL &&
(object->type == OBJ_COMPLEX ||
object->type == OBJ_PLACEHOLDER));
Why is it so (translating could mean to translate the whole object
hierarchy recursively)?
///
I can see (in libgeda/include/libgeda/struct.h) that
"struct st_complex" contains an "GList *prim_objs". The "prim_objs"
is _just a name_, it could just as well contain another complex
elements, or am I wrong ?
Regards,
/Karl
[1] http://geda.seul.org/wiki/geda:file_format_spec?s=file format
-----------------------------------------------------------------------
Karl Hammar Aspö Data karl@xxxxxxxxxxx
Lilla Aspö 148 Networks
S-742 94 Östhammar +46 173 140 57 Computers
Sweden +46 70 511 97 84 Consulting
-----------------------------------------------------------------------
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user