[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    =?utf-8?q?=5Brocs=5D_/=3A_More_work_in_the_Node_Properties_Dialo?=
From:       Tomaz Canabrava <tcanabrava () kde ! org>
Date:       2011-04-09 15:24:13
Message-ID: 20110409152413.27CABA60AE () git ! kde ! org
[Download RAW message or body]

Git commit 6cd5e13780c3d7ffe552cb743b2b4ab3ebd23a3a by Tomaz Canabrava.
Committed on 09/04/2011 at 16:17.
Pushed by tcanabrava into branch 'master'.

More work in the Node Properties Dialog

M  +10   -1    graphics/iconpacks/CMakeLists.txt     
M  +1    -1    src/Actions/AbstractAction.cpp     
M  +2    -1    src/CMakeLists.txt     
M  +2    -7    src/GraphicsItem/DataItem.cpp     
M  +0    -1    src/GraphicsItem/DataItem.h     
M  +20   -5    src/Interface/NodePropertiesWidget.cpp     
M  +129  -79   src/Interface/NodePropertiesWidget.ui     

http://commits.kde.org/rocs/6cd5e13780c3d7ffe552cb743b2b4ab3ebd23a3a

diff --git a/graphics/iconpacks/CMakeLists.txt b/graphics/iconpacks/CMakeLists.txt
index f369b8e..9d8d04e 100644
--- a/graphics/iconpacks/CMakeLists.txt
+++ b/graphics/iconpacks/CMakeLists.txt
@@ -1 +1,10 @@
-install( FILES default.svg DESTINATION ${DATA_INSTALL_DIR}/rocs/iconpacks  )
\ No newline at end of file
+install(
+FILES
+    computer.svg
+    default.svg
+    sphere1.svg
+    sphere2.svg
+    world.svg
+DESTINATION 
+    ${DATA_INSTALL_DIR}/rocs/iconpacks
+)
diff --git a/src/Actions/AbstractAction.cpp b/src/Actions/AbstractAction.cpp
index 1c0306f..98ba290 100644
--- a/src/Actions/AbstractAction.cpp
+++ b/src/Actions/AbstractAction.cpp
@@ -63,7 +63,7 @@ bool AbstractAction::eventFilter ( QObject * watched, QEvent * \
event ){  }
         case QEvent::GraphicsSceneMouseDoubleClick :{
             QGraphicsSceneMouseEvent *e = \
                static_cast<QGraphicsSceneMouseEvent*>(event);
-            return executePress(e->scenePos());
+            return executeDoubleClick(e->scenePos());
         }
         case QEvent::KeyPress: {
             QKeyEvent *e = static_cast<QKeyEvent*>(event);
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index d739222..45bf93f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -98,6 +98,7 @@ set( rocs_interface_SRCS
   Interface/CodeEditor.cpp
   Interface/NodePropertiesWidget.cpp
   Interface/edgepropertieswidget.cpp
+  Interface/svgpixmap.cpp
 )
 
 set( rocs_models_SRCS
@@ -111,7 +112,7 @@ set( rocs_models_SRCS
 #   UndoRedo/URAddEdge.cpp
 # )
 
-set ( rocs_script_SRC
+set ( rocs_script_SRC 
         Scripts/IncludeManager.cpp
 )
 
diff --git a/src/GraphicsItem/DataItem.cpp b/src/GraphicsItem/DataItem.cpp
index 61a00c2..fcca5f6 100644
--- a/src/GraphicsItem/DataItem.cpp
+++ b/src/GraphicsItem/DataItem.cpp
@@ -69,13 +69,8 @@ void DataItem::updateRenderer(){
 }
 
 void DataItem::updateIcon(){
-   if ( elementId().isEmpty() ){
-      _element = _datum->icon();
-      setElementId(_element);
-      setTransformOriginPoint(boundingRect().width()/2, boundingRect().width()/2);
-   }else if( elementId() != _datum->icon()){
-      _element = _datum->icon();
-      setElementId(_element);
+   if ( elementId().isEmpty() ||  elementId() != _datum->icon() ){
+      setElementId(_datum->icon());
       setTransformOriginPoint(boundingRect().width()/2, boundingRect().width()/2);
    }
 }
diff --git a/src/GraphicsItem/DataItem.h b/src/GraphicsItem/DataItem.h
index 5a78019..263dd0f 100644
--- a/src/GraphicsItem/DataItem.h
+++ b/src/GraphicsItem/DataItem.h
@@ -39,7 +39,6 @@ private:
 
     Data *_datum;
     QString _iconPackage;
-    QString _element;
     QGraphicsSimpleTextItem *_name;
     QGraphicsSimpleTextItem *_value;
     QGraphicsColorizeEffect *_colorizer;
diff --git a/src/Interface/NodePropertiesWidget.cpp \
b/src/Interface/NodePropertiesWidget.cpp index 34301f2..c89e0dc 100644
--- a/src/Interface/NodePropertiesWidget.cpp
+++ b/src/Interface/NodePropertiesWidget.cpp
@@ -6,11 +6,17 @@
 #include "DataStructure.h"
 #include "model_GraphProperties.h"
 #include <DataStructurePluginManager.h>
-
-DataPropertiesWidget::DataPropertiesWidget (MainWindow* /*parent*/  ): QWidget(0) {
+#include <QMap>
+#include <QPainter>
+#include <QImage>
+#include "svgpixmap.h"
+
+DataPropertiesWidget::DataPropertiesWidget (MainWindow* /*parent*/  ): 
+    QWidget(0),
+    _data(0),
+    _item(0){
     setupUi(this);
-    _item = 0;
-    _data = 0;
+    connect(_btnClose, SIGNAL(clicked()), this, SLOT(hide()));
 }
 
 void DataPropertiesWidget::setData(DataItem *n, QPointF pos) {
@@ -95,6 +101,8 @@ void DataPropertiesWidget::reflectAttributes(){
     }
 
     QXmlStreamReader reader(&svgFile);
+    QSvgRenderer *renderer = _item->_renders.value(svgFile.fileName());
+    
     while(!reader.atEnd()){
         reader.readNext();
         if (!reader.attributes().hasAttribute("id")){
@@ -102,8 +110,15 @@ void DataPropertiesWidget::reflectAttributes(){
         }
         QString attribute = reader.attributes().value("id").toString();
         if (attribute.startsWith("rocs_")){
+            QImage iconImage = QImage(80, 80, QImage::Format_ARGB32);                \
 +
+            QPainter painter;
+            painter.begin(&iconImage);
+            renderer->render(painter, attribute);
+            painter.end();
+
             attribute.remove("rocs_");
-            _images->addItem(attribute);
+            _images->addItem(iconImage, attribute);
         }
     }
 }
diff --git a/src/Interface/NodePropertiesWidget.ui \
b/src/Interface/NodePropertiesWidget.ui index 6c7febd..f97744a 100644
--- a/src/Interface/NodePropertiesWidget.ui
+++ b/src/Interface/NodePropertiesWidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>431</width>
-    <height>372</height>
+    <width>527</width>
+    <height>433</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -19,7 +19,7 @@
   <property name="windowTitle">
    <string>Node Properties</string>
   </property>
-  <layout class="QGridLayout" name="gridLayout">
+  <layout class="QGridLayout" name="gridLayout_2">
    <item row="0" column="0">
     <widget class="QLabel" name="label">
      <property name="sizePolicy">
@@ -36,10 +36,10 @@
      </property>
     </widget>
    </item>
-   <item row="0" column="1" colspan="2">
+   <item row="0" column="1">
     <widget class="KLineEdit" name="_name"/>
    </item>
-   <item row="0" column="3">
+   <item row="0" column="2">
     <widget class="QCheckBox" name="_showName">
      <property name="text">
       <string/>
@@ -49,13 +49,33 @@
      </property>
     </widget>
    </item>
-   <item row="0" column="4" rowspan="3">
+   <item row="0" column="3" rowspan="3">
     <widget class="Line" name="line">
      <property name="orientation">
       <enum>Qt::Vertical</enum>
      </property>
     </widget>
    </item>
+   <item row="0" column="4">
+    <widget class="QLabel" name="label_6">
+     <property name="toolTip">
+      <string>Node color</string>
+     </property>
+     <property name="text">
+      <string>Color:</string>
+     </property>
+     <property name="alignment">
+      <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+     </property>
+    </widget>
+   </item>
+   <item row="0" column="5">
+    <widget class="KColorCombo" name="_color">
+     <property name="toolTip">
+      <string>Node color</string>
+     </property>
+    </widget>
+   </item>
    <item row="1" column="0">
     <widget class="QLabel" name="label_2">
      <property name="sizePolicy">
@@ -72,10 +92,10 @@
      </property>
     </widget>
    </item>
-   <item row="1" column="1" colspan="2">
+   <item row="1" column="1">
     <widget class="KLineEdit" name="_value"/>
    </item>
-   <item row="1" column="3">
+   <item row="1" column="2">
     <widget class="QCheckBox" name="_showValue">
      <property name="text">
       <string/>
@@ -85,51 +105,31 @@
      </property>
     </widget>
    </item>
-   <item row="6" column="0" colspan="9">
-    <widget class="QTableView" name="_propertiesTable"/>
-   </item>
-   <item row="7" column="0">
-    <widget class="QLabel" name="label_7">
+   <item row="1" column="4" colspan="2">
+    <widget class="QCheckBox" name="_disableColor">
      <property name="text">
-      <string>Name</string>
+      <string>Disable Color</string>
      </property>
     </widget>
    </item>
-   <item row="7" column="2">
-    <widget class="QLabel" name="label_8">
+   <item row="2" column="0">
+    <widget class="QLabel" name="label_3">
      <property name="text">
-      <string>Value</string>
-     </property>
-    </widget>
-   </item>
-   <item row="7" column="7">
-    <widget class="QLabel" name="label_9">
-     <property name="text">
-      <string>Global</string>
+      <string>Image</string>
      </property>
     </widget>
    </item>
-   <item row="8" column="0" colspan="2">
-    <widget class="KLineEdit" name="_propertyName"/>
-   </item>
-   <item row="8" column="2" colspan="5">
-    <widget class="KLineEdit" name="_propertyValue"/>
-   </item>
-   <item row="8" column="7">
-    <widget class="QCheckBox" name="_isPropertyGlobal">
-     <property name="text">
-      <string/>
-     </property>
-    </widget>
+   <item row="2" column="1" colspan="2">
+    <widget class="KComboBox" name="_images"/>
    </item>
-   <item row="8" column="8">
-    <widget class="KPushButton" name="_addProperty">
-     <property name="text">
-      <string>add</string>
+   <item row="3" column="0" colspan="6">
+    <widget class="Line" name="line_2">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
      </property>
     </widget>
    </item>
-   <item row="4" column="0" rowspan="2" colspan="9">
+   <item row="4" column="0" colspan="6">
     <widget class="QFrame" name="extraItens">
      <property name="frameShape">
       <enum>QFrame::StyledPanel</enum>
@@ -139,45 +139,101 @@
      </property>
     </widget>
    </item>
-   <item row="0" column="6" colspan="3">
-    <widget class="KColorCombo" name="_color">
-     <property name="toolTip">
-      <string>Node color</string>
-     </property>
-    </widget>
-   </item>
-   <item row="1" column="6" colspan="3">
-    <widget class="KComboBox" name="_images"/>
+   <item row="5" column="0" rowspan="2" colspan="5">
+    <widget class="QTableView" name="_propertiesTable"/>
    </item>
-   <item row="1" column="5">
-    <widget class="QLabel" name="label_10">
-     <property name="text">
-      <string>Image</string>
-     </property>
-     <property name="alignment">
-      <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+   <item row="5" column="5">
+    <widget class="QGroupBox" name="groupBox">
+     <property name="title">
+      <string>Add Property</string>
      </property>
+     <layout class="QGridLayout" name="gridLayout">
+      <item row="0" column="0">
+       <widget class="QLabel" name="label_7">
+        <property name="text">
+         <string>Name</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="0" colspan="2">
+       <widget class="KLineEdit" name="_propertyName"/>
+      </item>
+      <item row="2" column="0">
+       <widget class="QLabel" name="label_8">
+        <property name="text">
+         <string>Value</string>
+        </property>
+       </widget>
+      </item>
+      <item row="3" column="0" colspan="2">
+       <widget class="KLineEdit" name="_propertyValue"/>
+      </item>
+      <item row="4" column="0" colspan="2">
+       <widget class="QCheckBox" name="_isPropertyGlobal">
+        <property name="text">
+         <string>Apply to all nodes</string>
+        </property>
+       </widget>
+      </item>
+      <item row="6" column="1">
+       <spacer name="verticalSpacer">
+        <property name="orientation">
+         <enum>Qt::Vertical</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>20</width>
+          <height>40</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="5" column="1">
+       <widget class="KPushButton" name="_addProperty">
+        <property name="text">
+         <string>add</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
     </widget>
    </item>
-   <item row="0" column="5">
-    <widget class="QLabel" name="label_6">
-     <property name="toolTip">
-      <string>Node color</string>
-     </property>
-     <property name="text">
-      <string>Color:</string>
+   <item row="6" column="5">
+    <spacer name="verticalSpacer_2">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
      </property>
-     <property name="alignment">
-      <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>42</height>
+      </size>
      </property>
-    </widget>
+    </spacer>
    </item>
-   <item row="3" column="0" colspan="9">
-    <widget class="Line" name="line_2">
-     <property name="orientation">
-      <enum>Qt::Horizontal</enum>
-     </property>
-    </widget>
+   <item row="7" column="0" colspan="6">
+    <layout class="QHBoxLayout" name="horizontalLayout">
+     <item>
+      <spacer name="horizontalSpacer">
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>40</width>
+         <height>20</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="_btnClose">
+       <property name="text">
+        <string>Close</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
    </item>
   </layout>
  </widget>
@@ -206,13 +262,7 @@
  <tabstops>
   <tabstop>_name</tabstop>
   <tabstop>_showName</tabstop>
-  <tabstop>_value</tabstop>
-  <tabstop>_showValue</tabstop>
   <tabstop>_propertiesTable</tabstop>
-  <tabstop>_propertyName</tabstop>
-  <tabstop>_propertyValue</tabstop>
-  <tabstop>_isPropertyGlobal</tabstop>
-  <tabstop>_addProperty</tabstop>
  </tabstops>
  <resources/>
  <connections>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic