[Uml-devel] branches/work/soc-umbrello/umbrello/widgets

Gopala Krishna A krishna.ggk at gmail.com
Tue Aug 18 08:49:54 UTC 2009


SVN commit 1012850 by gopala:

WidgetBase::loadFromXMI: Fixed it to load the brush in valid manner.



 M  +6 -4      widget_utils.cpp  
 M  +3 -3      widget_utils.h  
 M  +2 -1      widgetbase.cpp  


--- branches/work/soc-umbrello/umbrello/widgets/widget_utils.cpp #1012849:1012850
@@ -271,7 +271,7 @@
      *
      * @return True or false based on success or failure of this method.
      */
-    bool loadPixmapFromXMI(const QDomElement &pixEle, QPixmap &pixmap)
+    bool loadPixmapFromXMI(QDomElement &pixEle, QPixmap &pixmap)
     {
         if (pixEle.isNull()) {
             return false;
@@ -333,7 +333,7 @@
      *
      * @return True or false based on success or failure of this method.
      */
-    bool loadGradientFromXMI(const QDomElement &gradientElement, QGradient *&gradient)
+    bool loadGradientFromXMI(QDomElement &gradientElement, QGradient *&gradient)
     {
         if(gradientElement.isNull()) {
             return false;
@@ -454,14 +454,16 @@
      * @param brush The QBrush object into which brush details should
      *              be read into.
      */
-    bool loadBrushFromXMI(const QDomElement &qElement, QBrush &brush)
+    bool loadBrushFromXMI(QDomElement &qElement, QBrush &brush)
     {
         if(qElement.isNull()) {
             return false;
         }
 
         quint8 style = qElement.attribute("style").toShort();
-        QColor color = qElement.attribute("color");
+        const QString colorString = qElement.attribute("color");
+        QColor color;
+        color.setNamedColor(colorString);
 
         if(style == Qt::TexturePattern) {
             QPixmap pixmap;
--- branches/work/soc-umbrello/umbrello/widgets/widget_utils.h #1012849:1012850
@@ -52,15 +52,15 @@
 
     QPointF stringToPoint(const QString& str);
 
-    bool loadPixmapFromXMI(const QDomElement &qElement, QPixmap &pixmap);
+    bool loadPixmapFromXMI(QDomElement &qElement, QPixmap &pixmap);
 
     void savePixmapToXMI(QDomDocument &qDoc, QDomElement &qElement, const QPixmap& pixmap);
 
-    bool loadGradientFromXMI(const QDomElement &qElement, QGradient *&gradient);
+    bool loadGradientFromXMI(QDomElement &qElement, QGradient *&gradient);
 
     void saveGradientToXMI(QDomDocument &qDoc, QDomElement &qElement, const QGradient *gradient);
 
-    bool loadBrushFromXMI(const QDomElement &qElement, QBrush &brush);
+    bool loadBrushFromXMI(QDomElement &qElement, QBrush &brush);
 
     void saveBrushToXMI(QDomDocument &qDoc, QDomElement &qElement,
                         const QBrush& brush);
--- branches/work/soc-umbrello/umbrello/widgets/widgetbase.cpp #1012849:1012850
@@ -537,7 +537,8 @@
 
     // Load the brush.
     QBrush newBrush;
-    bool brushSet = Widget_Utils::loadBrushFromXMI(qElement, newBrush);
+    QDomElement brushElement = qElement.firstChildElement("brush");
+    bool brushSet = Widget_Utils::loadBrushFromXMI(brushElement, newBrush);
 
     // If this fails, we try to load fillColor attribute which is used in kde3 version of umbrello.
     if(!brushSet) {




More information about the umbrello-devel mailing list