[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-panel-devel
Subject: Just a little more help needed with QML and Data Engine
From: Eric Mesa <ericsbinaryworld () gmail ! com>
Date: 2012-01-22 22:51:52
Message-ID: CAKYHq8L4LioXw+AmV5j8PPA8n=gRjqfZrChnh-uq4aLCqqAgfw () mail ! gmail ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Here's what the data in the data engine looks like:
http://i.imgur.com/MBtLw.png
It's a QString.
I want to access that from within my QML Program. But I keep getting the
error:
Result of expression 'viewsSource.data["75"]' [undefined] is not an object.
Here's the code in my QML program:
import Qt 4.7
import "content"
import QtWebKit 1.0
import org.kde.plasma.core 0.1 as PlasmaCore
Rectangle {
id: window
width: 360
height: 360
PlasmaCore.DataSource {
id: viewsSource
engine: "flickrviewsengine"
connectedSources: ["75"]
interval: 0
onSourceAdded: connectSource(viewsSource)
Component.onCompleted: connectedSources = sources
}
property string currentGroup: viewsSource.data["75"]["Group 75"]
//"/home/ermesa/bin/qml/plasmoids/flickrviews/testgrouprss"
property bool loading: feedModel.status == XmlListModel.Loading
XmlListModel{
id:feedModel
source: window.currentGroup //viewsSource.data["75"]["Group 75"]
query: "/rsp/photos/photo"
XmlRole { name: "title"; query: "@title/string()"}
}
Row {
width: 360
height: 43
Rectangle{
width: window.width; height: window.height
color: "blue"
Text {
id: testtext
text: qsTr("buttons will go here!")
}
}
}
Row {
x: 0
y: 43
width: 370
height: 317
Rectangle {
width: window.width/3+10; height: window.height
color: "#efefef"
ListView {
id: list
width: window.width/3; height: window.height
model: feedModel
delegate: ItemDelegate {}
highlight: Rectangle { color: "lightgray" }
highlightMoveSpeed: 9999999
}
}
Rectangle {
width: window.width/3*2
height: window.height
}
}
}
What am I missing?
Thanks!
--
Eric Mesa
http://www.ericsbinaryworld.com
[Attachment #5 (text/html)]
Here's what the data in the data engine looks like: <a \
href="http://i.imgur.com/MBtLw.png">http://i.imgur.com/MBtLw.png</a><div><br></div><div>It's \
a QString.</div><div><br></div><div>I want to access that from within my QML Program. \
But I keep getting the error: <p \
style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px"><span \
style="font-family:'Monospace';font-size:9pt;font-weight:600;color:#0a09b3">Result \
of expression 'viewsSource.data["75"]' [undefined] is not an \
object.</span></p> <p \
style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px"><span \
style="font-family:'Monospace';font-size:9pt;font-weight:600;color:#0a09b3"><br></span></p><p \
style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px"> <span \
style="font-family:'Monospace';font-size:9pt;font-weight:600;color:#0a09b3">Here's \
the code in my QML program:</span></p><p \
style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px"><span \
style="font-family:'Monospace';font-size:9pt;font-weight:600;color:#0a09b3"><br>
</span></p><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px">
</p><pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#808000">import</span><span style="color:#c0c0c0"> </span><span \
style="color:#800080">Qt</span><span style="color:#c0c0c0"> </span>4.7</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span \
style="color:#808000">import</span><span style="color:#c0c0c0"> </span><span \
style="color:#008000">"content"</span></pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span \
style="color:#808000">import</span><span style="color:#c0c0c0"> </span><span \
style="color:#800080">QtWebKit</span><span style="color:#c0c0c0"> </span>1.0</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#808000">import</span><span style="color:#c0c0c0"> \
</span>org.kde.plasma.core<span style="color:#c0c0c0"> </span>0.1<span \
style="color:#c0c0c0"> </span>as<span style="color:#c0c0c0"> </span><span \
style="color:#800080">PlasmaCore</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#800080">Rectangle</span><span style="color:#c0c0c0"> </span>{</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">id</span>:<span style="color:#c0c0c0"> \
</span>window</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span style="color:#800000">width</span>:<span \
style="color:#c0c0c0"> </span>360</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span \
style="color:#800000">height</span>:<span style="color:#c0c0c0"> </span>360</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><br></pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span \
style="color:#800080">PlasmaCore</span>.<span \
style="color:#800080">DataSource</span><span style="color:#c0c0c0"> </span>{</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">id</span>:<span style="color:#c0c0c0"> \
</span>viewsSource</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span style="color:#800000">engine</span>:<span \
style="color:#c0c0c0"> </span><span \
style="color:#008000">"flickrviewsengine"</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">connectedSources</span>:<span \
style="color:#c0c0c0"> </span>[<span \
style="color:#008000">"75"</span>]</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">interval</span>:<span style="color:#c0c0c0"> \
</span>0</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">onSourceAdded</span>:<span style="color:#c0c0c0"> \
</span>connectSource(viewsSource)</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">Component</span>.<span \
style="color:#800000">onCompleted</span>:<span style="color:#c0c0c0"> \
</span>connectedSources<span style="color:#c0c0c0"> </span>=<span \
style="color:#c0c0c0"> </span>sources</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#808000">property</span><span style="color:#c0c0c0"> \
</span><span style="color:#808000">string</span><span style="color:#c0c0c0"> \
</span>currentGroup:<span style="color:#c0c0c0"> </span>viewsSource.data[<span \
style="color:#008000">"75"</span>][<span \
style="color:#008000">"Group</span><span style="color:#c0c0c0"> </span><span \
style="color:#008000">75"</span>]<span style="color:#c0c0c0"> </span><span \
style="color:#008000">//"/home/ermesa/bin/qml/plasmoids/flickrviews/testgrouprss"</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#808000">property</span><span style="color:#c0c0c0"> \
</span><span style="color:#808000">bool</span><span style="color:#c0c0c0"> \
</span>loading:<span style="color:#c0c0c0"> </span>feedModel.status<span \
style="color:#c0c0c0"> </span>==<span style="color:#c0c0c0"> </span><span \
style="color:#800080">XmlListModel</span>.<span \
style="color:#800080">Loading</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">XmlListModel</span>{</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">id</span>:feedModel</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">source</span>:<span style="color:#c0c0c0"> \
</span>window.currentGroup<span style="color:#c0c0c0"> </span><span \
style="color:#008000">//viewsSource.data["75"]["Group</span><span \
style="color:#c0c0c0"> </span><span style="color:#008000">75"]</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">query</span>:<span style="color:#c0c0c0"> \
</span><span style="color:#008000">"/rsp/photos/photo"</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">XmlRole</span><span style="color:#c0c0c0"> \
</span>{<span style="color:#c0c0c0"> </span><span \
style="color:#800000">name</span>:<span style="color:#c0c0c0"> </span><span \
style="color:#008000">"title"</span>;<span style="color:#c0c0c0"> \
</span><span style="color:#800000">query</span>:<span style="color:#c0c0c0"> \
</span><span style="color:#008000">"@title/string()"</span>}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">Row</span><span style="color:#c0c0c0"> \
</span>{</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span style="color:#800000">width</span>:<span \
style="color:#c0c0c0"> </span>360</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>43</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800080">Rectangle</span>{</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">width</span>:<span style="color:#c0c0c0"> \
</span>window.width;<span style="color:#c0c0c0"> </span><span \
style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>window.height</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">color</span>:<span style="color:#c0c0c0"> \
</span><span style="color:#008000">"blue"</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">Text</span><span style="color:#c0c0c0"> \
</span>{</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">id</span>:<span style="color:#c0c0c0"> </span>testtext</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">text</span>:<span style="color:#c0c0c0"> \
</span>qsTr(<span style="color:#008000">"buttons</span><span \
style="color:#c0c0c0"> </span><span style="color:#008000">will</span><span \
style="color:#c0c0c0"> </span><span style="color:#008000">go</span><span \
style="color:#c0c0c0"> </span><span style="color:#008000">here!"</span>)</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span>}</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">Row</span><span style="color:#c0c0c0"> \
</span>{</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span style="color:#800000">x</span>:<span \
style="color:#c0c0c0"> </span>0</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">y</span>:<span style="color:#c0c0c0"> \
</span>43</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span style="color:#800000">width</span>:<span \
style="color:#c0c0c0"> </span>370</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>317</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800080">Rectangle</span><span style="color:#c0c0c0"> </span>{</pre> \
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">width</span>:<span style="color:#c0c0c0"> \
</span>window.width/3+10;<span style="color:#c0c0c0"> </span><span \
style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>window.height</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">color</span>:<span style="color:#c0c0c0"> \
</span><span style="color:#008000">"#efefef"</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">ListView</span><span style="color:#c0c0c0"> \
</span>{</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">id</span>:<span style="color:#c0c0c0"> </span>list</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">width</span>:<span style="color:#c0c0c0"> \
</span>window.width/3;<span style="color:#c0c0c0"> </span><span \
style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>window.height</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">model</span>:<span style="color:#c0c0c0"> \
</span>feedModel</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">delegate</span>:<span style="color:#c0c0c0"> </span><span \
style="color:#800080">ItemDelegate</span><span style="color:#c0c0c0"> </span>{}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">highlight</span>:<span style="color:#c0c0c0"> \
</span><span style="color:#800080">Rectangle</span><span style="color:#c0c0c0"> \
</span>{<span style="color:#c0c0c0"> </span><span \
style="color:#800000">color</span>:<span style="color:#c0c0c0"> </span><span \
style="color:#008000">"lightgray"</span><span style="color:#c0c0c0"> \
</span>}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800000">highlightMoveSpeed</span>:<span \
style="color:#c0c0c0"> </span>9999999</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px"><br></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span><span style="color:#800080">Rectangle</span><span style="color:#c0c0c0"> \
</span>{</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">width</span>:<span style="color:#c0c0c0"> \
</span>window.width/3*2</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span><span \
style="color:#800000">height</span>:<span style="color:#c0c0c0"> \
</span>window.height</pre> <pre style="margin-top:0px;margin-bottom:0px"><span \
style="color:#c0c0c0"> </span>}</pre> <pre \
style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> \
</span>}</pre> <pre style="margin-top:0px;margin-bottom:0px">}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><br></pre><pre \
style="margin-top:0px;margin-bottom:0px"><br></pre><pre \
style="margin-top:0px;margin-bottom:0px"><br></pre><p></p><div>What am I missing? \
</div><div><br></div> <div>Thanks!</div><div><br></div>--<br>Eric Mesa<br><a \
href="http://www.ericsbinaryworld.com">http://www.ericsbinaryworld.com</a><br> </div>
_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic