[umbrello] [Bug 56184] Support loading of foreign XMI file formats
Oliver Kellogg
bugzilla_noreply at kde.org
Mon May 16 20:18:39 BST 2022
https://bugs.kde.org/show_bug.cgi?id=56184
--- Comment #107 from Oliver Kellogg <okellogg at users.sourceforge.net> ---
Git commit a8037fbad138b311b88ac1136f797e59f4f9d92c by Oliver Kellogg.
Committed on 16/05/2022 at 19:18.
Pushed by okellogg into branch 'master'.
Followup to commit 5803dcd - add basic support for loading StarUML and
MagicDraw/Cameo while preserving load of native XMI:
umbrello/model_utils.{h,cpp}
- New function loadCommentFromXMI returns the text of an <ownedComment>
UML2 element from a QDomElement. It attempts to read the attribute
"body" and if that returns empty then attempts to read the text of the
nested element <body>.
umbrello/umldoc.cpp
- In function loadFromXMI case outerTag "XMI" or "xmi:XMI" for-loop of
node:
- If outerTag stripped of namespace is "Model" or "Package" or
"packagedElement" and the call to loadUMLObjectsFromXMI(element)
returns false then do not return false.
Reason: This gives better results on loading foreign XMI formats.
- Support tagEq(tag, "DataType") alongside "Package", "Class", etc.
- Support tagEq(tag, "ownedComment") using
Model_Utils::loadCommentFromXMI(element).
- In function loadUMLObjectsFromXMI for-loop of node:
1) Move up declaration of xmiType and setting of type from xmiType to
before handling of tagEq(type, "Model").
2) Remove test (type == "packagedElement"), it is obsoleted by 1).
3) If loadUMLObjectsFromXMI(tempElement) returns false then do not
return false.
Reason: This gives better results on loading foreign XMI formats.
4) Support loading of <ownedComment> using Model_Utils::
loadCommentFromXMI(tempElement).
5) If pObject->loadFromXMI(tempElement) returns false then do not
return false.
Reason: This gives better results on loading foreign XMI formats.
umbrello/umlmodel/umlobject.cpp
- In function loadFromXMI case element.hasChildNodes() while-loop of
elem add loading of <ownedComment> using Model_Utils::
loadCommentFromXMI(elem).
M +22 -0 umbrello/model_utils.cpp
M +1 -0 umbrello/model_utils.h
M +17 -14 umbrello/umldoc.cpp
M +2 -0 umbrello/umlmodel/umlobject.cpp
https://invent.kde.org/sdk/umbrello/commit/a8037fbad138b311b88ac1136f797e59f4f9d92c
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the umbrello-devel
mailing list