psa: using 2 flickables
[feedingit] / psa_harmattan / feedingit / deb_dist / feedingit-0.1.0 / qml / ArticleViewer.qml
index f4a18a9..4d93576 100644 (file)
@@ -8,10 +8,12 @@ Item {
     property string feedid: parent.feedid
     //property string feedid: "61ac1458d761423344998dc76770e36e" //articlesItem.feedid;
     //property string hideReadArticles: "";
-    property alias articleShown: articleView.visible;
+    //property alias articleShown: articleView.visible;
     property bool zoomEnabled: false;
     property bool vertPanningEnabled: true
 
+    signal openArticle(string articleid);
+
     function modulo(x,y) {
         // Fixes modulo for negative numbers
         return ((x%y)+y)%y;
@@ -22,20 +24,6 @@ Item {
         articles.reload()
     }
 
-    function next() {
-        if (articleView.visible) {
-            //articleView.positionViewAtIndex(modulo(articleView.currentIndex+1, articleView.count), ListView.Contain);
-            articleView.incrementCurrentIndex();
-        }
-    }
-
-    function prev() {
-        if (articleView.visible) {
-            //articleView.positionViewAtIndex(modulo(articleView.currentIndex-1, articleView.count), ListView.Contain);
-            articleView.decrementCurrentIndex();
-        }
-    }
-
     function markAllAsRead() {
         if (feedid!="") {
             controller.markAllAsRead(feedid)
@@ -61,22 +49,23 @@ Item {
         clip: true
     }
 
-    ListView {
-        id: articleView;
-        model: articles;
-        delegate: viewer
-        orientation: ListView.Horizontal
-        width: parent.width;
-        height: updateBarArticles.visible? parent.height-updateBarArticles.height : parent.height;
-        visible: false; z:8
-        onCurrentIndexChanged: articlesView.positionViewAtIndex(currentIndex, ListView.Contain)
-        highlightRangeMode: ListView.StrictlyEnforceRange; snapMode: ListView.SnapOneItem
-        //cacheBuffer: 5;
-        onMovementStarted: articleViewer.vertPanningEnabled=false;
-        onMovementEnded: articleViewer.vertPanningEnabled=true;
-        highlightMoveDuration: 300;
-        clip: true
-    }
+//    ListView {
+//        id: articleView;
+//        property int webviewFontSize: settings.webviewFontSize
+//        model: articles;
+//        delegate: viewer
+//        orientation: ListView.Horizontal
+//        width: parent.width;
+//        height: updateBarArticles.visible? parent.height-updateBarArticles.height : parent.height;
+//        visible: false; z:8
+//        onCurrentIndexChanged: articleView.positionViewAtIndex(currentIndex, ListView.Contain)
+//        highlightRangeMode: ListView.StrictlyEnforceRange; snapMode: ListView.SnapOneItem
+//        //cacheBuffer: 5;
+//        onMovementStarted: articleViewer.vertPanningEnabled=false;
+//        onMovementEnded: articleViewer.vertPanningEnabled=true;
+//        highlightMoveDuration: 300;
+//        clip: true
+//    }
 
     ProgressBar {
         id: updateBarArticles
@@ -165,41 +154,44 @@ Item {
                     font.pointSize: settings.articleListingTextSize
                 }
                 MouseArea { anchors.fill: listItem;
-                    onClicked: { articleView.currentIndex = index; articleView.visible = true; }
+                    onClicked: {
+                        articleViewer.openArticle(articleid)
+                        //articleView.currentIndex = index; articleView.visible = true;
+                    }
                 }
             }
 
     }
 
-    Component {
-        id: viewer
-        Item {
-            id: flipItem;
-            width: articleDisplay.width;
-            height: articleView.height;
-
-            //property string url: (articleView.visible && Math.abs(articleView.currentIndex-index)<2) ? path: "";
-            property string html: controller.getArticle(articleViewer.feedid, articleid)
-            ArticleDisplay {
-                id: articleDisplay
-                zoomEnabled: articleViewer.zoomEnabled;
-                property bool vertPanningEnabled: articleViewer.vertPanningEnabled;
-
-                states: [ State {
-                        name: 'articleIsRead';
-                    when: articleView.visible && articleView.currentIndex == index;
-                    StateChangeScript {
-                        name: "myScript"
-                        script: {
-                            //flipItem.url=path;
-                            controller.setEntryRead(articleViewer.feedid, articleid)
-                        }
-                    }
-                    }
-                ]
-            }
-        }
-    }
+//    Component {
+//        id: viewer
+//        Item {
+//            id: flipItem;
+//            width: articleDisplay.width;
+//            height: articleView.height;
+
+//            //property string url: (articleView.visible && Math.abs(articleView.currentIndex-index)<2) ? path: "";
+//            property string html: controller.getArticle(articleViewer.feedid, articleid)
+//            ArticleDisplay {
+//                id: articleDisplay
+//                zoomEnabled: articleViewer.zoomEnabled;
+//                property bool vertPanningEnabled: articleViewer.vertPanningEnabled;
+
+//                states: [ State {
+//                        name: 'articleIsRead';
+//                    when: articleView.visible && articleView.currentIndex == index;
+//                    StateChangeScript {
+//                        name: "myScript"
+//                        script: {
+//                            //flipItem.url=path;
+//                            controller.setEntryRead(articleViewer.feedid, articleid)
+//                        }
+//                    }
+//                    }
+//                ]
+//            }
+//        }
+//    }
 
     XmlListModel {
         id: articles