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

List:       kde-commits
Subject:    playground/base/plasma/declarative-applets/replacements/microblog
From:       Marco Martin <notmart () gmail ! com>
Date:       2011-04-10 15:05:06
Message-ID: 20110410150506.828F4AC8D1 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1227577 by mart:

use a big widget for details on a dent


 M  +4 -0      contents/ui/ComplexComponents/MessageList.qml  
 M  +13 -7     platformcontents/application/generic/ui/BasicComponents/MessageWidget.qml \
  M  +30 -0     platformcontents/application/tablet/ui/MainWidget/MainWidget.qml  
 A             platformcontents/application/tablet/ui/MainWidget/MessageWidgetDetails.qml \
[License: LGPL (v2+)]  M  +2 -1      \
platformcontents/application/tablet/ui/MainWidget/qmldir  


--- trunk/playground/base/plasma/declarative-applets/replacements/microblog/contents/ui/ComplexComponents/MessageList.qml \
#1227576:1227577 @@ -29,6 +29,8 @@
 
     clip: true
 
+    signal itemClicked(variant item)
+
     property string timelineType: "TimelineWithFriends"
     property string login: userName
     property string url: serviceUrl
@@ -53,6 +55,8 @@
     }
 
     delegate: MessageWidget {
+        id: messageWidget
         width: entryList.width
+        onClicked: itemClicked(messageWidget)
     }
 }
--- trunk/playground/base/plasma/declarative-applets/replacements/microblog/platformcontents/application/generic/ui/BasicComponents/MessageWidget.qml \
#1227576:1227577 @@ -26,6 +26,12 @@
 ListItem {
     implicitHeight: infoLabel.height+bodyText.height
 
+    property string messageId: model["Id"]
+    property string user: model["User"]
+    property string source: model["Source"]
+    property bool isFavorite: model["IsFavorite"]
+    property string status: model["Status"]
+
     QtExtraComponents.QImageItem {
         id: userIcon
         smooth: true
@@ -33,7 +39,7 @@
         anchors.top: padding.top
         width: 32
         height: 32
-        image: microblogSource.data["UserImages:"+serviceUrl][model['User']]
+        image: microblogSource.data["UserImages:"+serviceUrl][user]
     }
     Text {
         id: infoLabel
@@ -41,7 +47,7 @@
         anchors.left: userIcon.right
         anchors.right: padding.right
         anchors.top: padding.top
-        text: i18n("%1 from %2", model["User"], model["Source"])
+        text: i18n("%1 from %2", user, source)
     }
     Row {
         id: toolBoxRow
@@ -52,9 +58,9 @@
             text: "♥"
             width: 24
             height: 24
-            down: model["IsFavorite"]
+            down: isFavourite
             onClicked: {
-                main.favoriteAsked(model["Id"], model["IsFavorite"] != "true");
+                main.favoriteAsked(messageId, isFavourite != "true");
             }
         }
         PlasmaComponents.ToolButton {
@@ -63,7 +69,7 @@
             width: 24
             height: 24
             onClicked: {
-                main.replyAsked(model["Id"], "@" + model["User"] + ": ");
+                main.replyAsked(messageId, "@" + user + ": ");
             }
         }
         PlasmaComponents.ToolButton {
@@ -72,7 +78,7 @@
             width: 24
             height: 24
             onClicked: {
-                main.retweetAsked(model["Id"]);
+                main.retweetAsked(messageId);
             }
         }
     }
@@ -83,7 +89,7 @@
         anchors.right: padding.right
         anchors.top: toolBoxRow.bottom
         anchors.bottomMargin: 5
-        text: model['Status']
+        text: status
         wrapMode: Text.WordWrap
     }
 }
--- trunk/playground/base/plasma/declarative-applets/replacements/microblog/platformcontents/application/tablet/ui/MainWidget/MainWidget.qml \
#1227576:1227577 @@ -53,21 +53,51 @@
                 width: messageContainer.columnWidth
                 anchors.top: parent.top
                 anchors.bottom: parent.bottom
+                onItemClicked: {
+                    messageDetails.messageId = item.messageId
+                    messageDetails.user = item.user
+                    messageDetails.source = item.source
+                    messageDetails.isFavorite = item.isFavorite
+                    messageDetails.status = item.status
+                    messageDetails.state = "visible"
             }
+            }
             MessageList {
                 id: repliesList
                 width: messageContainer.columnWidth
                 anchors.top: parent.top
                 anchors.bottom: parent.bottom
                 timelineType: "Replies"
+                onItemClicked: {
+                    messageDetails.messageId = item.messageId
+                    messageDetails.user = item.user
+                    messageDetails.source = item.source
+                    messageDetails.isFavorite = item.isFavorite
+                    messageDetails.status = item.status
+                    messageDetails.state = "visible"
             }
+            }
             MessageList {
                 id: messageList
                 width: messageContainer.columnWidth
                 anchors.top: parent.top
                 anchors.bottom: parent.bottom
                 timelineType: "Messages"
+                onItemClicked: {
+                    messageDetails.messageId = item.messageId
+                    messageDetails.user = item.user
+                    messageDetails.source = item.source
+                    messageDetails.isFavorite = item.isFavorite
+                    messageDetails.status = item.status
+                    messageDetails.state = "visible"
             }
         }
     }
 }
+
+    MessageWidgetDetails {
+        id: messageDetails
+        anchors.fill: parent
+        state: "hidden"
+    }
+}
--- trunk/playground/base/plasma/declarative-applets/replacements/microblog/platformcontents/application/tablet/ui/MainWidget/qmldir \
#1227576:1227577 @@ -1 +1,2 @@
-MainWidget 1.0 MainWidget.qml
\ No newline at end of file
+MainWidget 1.0 MainWidget.qml
+MessageWidgetDetails 1.0 MessageWidgetDetails.qml
\ No newline at end of file


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

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