symbol library: dependencies are not respected when adding nested symbols
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Situation:
You have a custom symbol library. The symbols in that library partly depend on other symbols in the same library. The .svg library file is copied to the share/symbols/ subfolder of the Inkscape installation directory.
Problem:
When adding such symbols to a new document (by using the symbol library in the GUI), only the dragged symbol gets imported to the document, but not other symbols from the same library that are required to render the desired symbol correctly. No error message is shown, but the symbol is simply rendered incompletely.
I've added a TESTCASE to this bug report:
- copy "testcase-lib.svg" to the share/symbols/ subdirectory
- open Inkscape
- open the Symbols panel and select the testcase symbol set (it will probably be named "unnamed symbols")
- drag the *orange* symbol to the document
- ==> you only see "outerSymbol" on the canvas and a orange rectable
- drag the *yellow* symbol to some empty space on the document
- ==> two "innerSymbol" will appear, one inside the "outerSymbol"
NB: Since we're using Inkscape to draw SCADA/HMI diagrams, we depend on nested symbols a lot. We effectively copy our own libraries directly into share/symbols/ since AFAIK there is no other way to reuse custom symbols.
BTW, when copying/pasting symbol instances (<use>) between documents, the required symbol definitions are not copied either - resulting in a <use> tag with a xlink:href to a inexistent symbol.