I wonder why gEDA attribute handling works not in this simple manner: - attributes can be defined in symbols
- gschem takes these attributes from symbols and allows overwriting. (For each attribute of the form a=v the position (relative to the symbol reference point) and visibility is stored.) If a symbol is inserted in a schematic gschem has only to store the path to that symbol file and the position in the schematic. All attributes are accessible in gschems attribute editor, and the visible attributes are displayed and printed. Now the user can redefine arbitrary attributes -- they overwrite/shadow the attributes from the symbol. And of course the user can define new additional symbols. Example: Attributes of a symbol: a1=v1 a2=v2 a3=v3 a4=v4 a5=v5 For the first instance of this symbol in the schematic the user overwrites the content of a1 in gschem: a1=vx To display, print or present the list of attributes in an attribute editor gschem takes all attributes from the symbols and replaces some of it resulting in a1=vx a2=v2 a3=v3 a4=v4 a5=v5 Only a1=vx needs to be stored in the schematic. Similar to the second instance of this symbol, a1=vy, a6=v6 and position or visibility of a2=v2 in modified. So gschem has to store a1=vy a6=v6 a2=v2 (position/visibility) in the schematic. The complete set is a1=v1 replaced by a1=vy a2=v2 replaced by a2=v2 (position/visibility) a3=v3 a4=v4 a5=v5 a6=v6 added. Where is the problem by this simple approach? Best regards Stefan Salewski _______________________________________________ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user