diff --git a/declarativeimports/qtextracomponents/CMakeLists.txt b/declarativeimports/qtextracomponents/CMakeLists.txt index 3264ae8e2..a78644ff2 100644 --- a/declarativeimports/qtextracomponents/CMakeLists.txt +++ b/declarativeimports/qtextracomponents/CMakeLists.txt @@ -19,7 +19,7 @@ qt4_automoc(${qtextracomponents_SRCS}) add_library(qtextracomponentsplugin SHARED ${qtextracomponents_SRCS}) -target_link_libraries(qtextracomponentsplugin ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY}) +target_link_libraries(qtextracomponentsplugin ${KDE4_KDEUI_LIBS} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY}) install(TARGETS qtextracomponentsplugin DESTINATION ${IMPORTS_INSTALL_DIR}/org/kde/qtextracomponents) diff --git a/declarativeimports/qtextracomponents/qiconitem.cpp b/declarativeimports/qtextracomponents/qiconitem.cpp index d72381e47..ef96c3df4 100644 --- a/declarativeimports/qtextracomponents/qiconitem.cpp +++ b/declarativeimports/qtextracomponents/qiconitem.cpp @@ -19,6 +19,7 @@ #include "qiconitem.h" +#include #include @@ -34,9 +35,14 @@ QIconItem::~QIconItem() { } -void QIconItem::setIcon(const QIcon &icon) +void QIconItem::setIcon(QVariant &icon) { - m_icon = icon; + if(icon.canConvert()) { + m_icon = icon.value(); + } + else if(icon.canConvert()) { + m_icon = KIcon(icon.toString()); + } update(); } diff --git a/declarativeimports/qtextracomponents/qiconitem.h b/declarativeimports/qtextracomponents/qiconitem.h index 9972a98fe..e31059c46 100644 --- a/declarativeimports/qtextracomponents/qiconitem.h +++ b/declarativeimports/qtextracomponents/qiconitem.h @@ -21,19 +21,20 @@ #include #include +#include class QIconItem : public QDeclarativeItem { Q_OBJECT - Q_PROPERTY(QIcon icon READ icon WRITE setIcon) + Q_PROPERTY(QVariant icon READ icon WRITE setIcon) Q_PROPERTY(bool smooth READ smooth WRITE setSmooth) public: QIconItem(QDeclarativeItem *parent=0); ~QIconItem(); - void setIcon(const QIcon &icon); + void setIcon(QVariant &icon); QIcon icon() const; void setSmooth(const bool smooth);