[umbrello] [Bug 363582] It would be nice for XMI file to have stable format.
    Ralf Habacker 
    bugzilla_noreply at kde.org
       
    Tue Jul 17 00:18:03 BST 2018
    
    
  
https://bugs.kde.org/show_bug.cgi?id=363582
--- Comment #12 from Ralf Habacker <ralf.habacker at freenet.de> ---
(In reply to Ralf Habacker from comment #9)
> Currently not. In general I see several options to fix this:
> 2. use a different xml writer 
The very rudimentary xml writer as shown below may be used as starting point
class KDomElement {
public:
  KDomElement(const QString &name = QString()) : m_tag(name) {}
  void setAttribute(const QString &name, const QString &value)
  {
    m_attributes.append(QString("%1=\"%2\"").arg(name, value));
  }
  // add more methods
  void appendChild(KDomElement &element)
  {
    m_childs.append(element);
  }
  QString toString() const
  {
    if (m_childs.size() > 0) {
      QString s = !m_tag.isEmpty() ? QString("<%1 %2>\n").arg(m_tag,
m_attributes.join(" ")) : "";
      foreach(const KDomElement &child, m_childs) {
        s += child.toString();
      }
      s += !m_tag.isEmpty() ? QString("</%1>\n").arg(m_tag) : "";
      return s;
    } else
      return !m_tag.isEmpty() ? QString("<%1 %2 />\n").arg(m_tag,
m_attributes.join(" ")) : "";
  }
protected:
  QString m_tag;
  QStringList m_attributes;
  QList<KDomElement> m_childs;
};
class KDomDocument : public KDomElement {
public:
  KDomDocument(const QString &name=QString())
    : KDomElement(name)
  {
  }
  KDomElement createElement(const QString &name)
  {
    return KDomElement(name);
  }
};
-- 
You are receiving this mail because:
You are the assignee for the bug.
    
    
More information about the umbrello-devel
mailing list