0.9 beta 3 - Added features to qml interface (dbus, edit mode...)
[feedingit] / src / qml / common / Menu.qml
1 import Qt 4.7
2
3 Item {
4 //    anchors.fill: parent;
5     width: 300; //height: 0;
6     //anchors.top: parent.top; anchors.bottom: parent.bottom
7     y: -parent.height
8
9     function getConfig() {
10         //console.log("XX\n")
11         var doc = new XMLHttpRequest();
12         doc.onreadystatechange = function() {
13             if (doc.readyState == XMLHttpRequest.DONE) {
14                 var a = doc.responseXML.documentElement;
15                 //for (var ii = 0; ii < a.childNodes.length; ++ii) {
16                 //    console.log(ii+ " " + a.childNodes[ii].firstChild.nodeValue);
17                 //}
18
19                 //console.log("node: " + a.childNodes[0].nodeValue)
20                 config.hideReadFeeds = a.childNodes[0].firstChild.nodeValue;
21                 config.hideReadArticles = a.childNodes[1].firstChild.nodeValue;
22                 //console.log("feed " + hideReadFeeds + "\n")
23                 //console.log("Articles " + hideReadArticles + "\n")
24 //                showRequestInfo("Headers -->");
25 //                showRequestInfo(doc.getAllResponseHeaders ());
26 //                showRequestInfo("Last modified -->");
27 //                showRequestInfo(doc.getResponseHeader ("Last-Modified"));
28             }
29         }
30
31         doc.open("GET", "http://localhost:8000/config");
32         doc.send();
33
34     }
35
36     Switch {
37         id: hideReadFeedsSwitch;
38         text: qsTr("Hide Read Feeds");
39         value: config.hideReadFeeds
40         onClicked: config.hideReadFeeds = (config.hideReadFeeds == "False") ? "True" : "False"
41     }
42
43     Switch {
44         id: hideReadArticlesSwitch;
45         text: qsTr("Hide Read Articles");
46         value: config.hideReadArticles
47         onClicked: config.hideReadArticles = (config.hideReadArticles == "False") ? "True" : "False"
48         anchors.top: hideReadFeedsSwitch.bottom
49     }
50
51     Switch {
52         id: lockRotation;
53         text: qsTr("Lock Rotation");
54         value: container.lockRotation ? "True" : "False"
55         onClicked: { container.lockRotation=!container.lockRotation;
56             container.selectedOrientation = (container.lockRotation) ? container.activeOrientation : Orientation.UnknownOrientation }
57         anchors.top: hideReadArticlesSwitch.bottom
58     }
59
60     Switch {
61         id: editMode;
62         text: qsTr("Enter Edit Mode");
63         value: container.editMode ? "True" : "False"
64         onClicked: { container.editMode=!container.editMode; }
65         anchors.top: lockRotation.bottom
66     }
67
68     Rectangle {
69         id: closeButton
70         height: 50;
71         gradient: Gradient {
72             GradientStop {
73                 position: 0.00;
74                 color: "#343434";
75             }
76             GradientStop {
77                 position: 1.00;
78                 color: "#ffffff";
79             }
80         }
81         radius: 10;
82         width:  parent.width
83         anchors.top: editMode.bottom
84
85         MouseArea {
86             id: mouseRegion
87             anchors.fill: closeButton
88             onClicked: { config.isShown = false }
89         }
90     }
91
92 //    ListView {
93 //        id: configList; model: configs; delegate: configDelegate; z: 6;
94 //        cacheBuffer: 100; width: parent.width; height: parent.height;
95 //    }
96
97 //    XmlListModel {
98
99 //        id: configs
100
101 //        //source: "http://api.flickr.com/services/feeds/photos_public.gne?"+(tags ? "tags="+tags+"&" : "")+"format=rss2"
102 //        //source: "/home/ymarcoz/feedlist.xml"
103 //        source: "http://localhost:8000/config"
104 //        query: "/xml/config"
105 //        //namespaceDeclarations: "declare namespace media=\"http://search.yahoo.com/mrss/\";"
106
107 //        XmlRole { name: "hideReadFeeds"; query: "hideReadFeeds/string()" }
108 //        XmlRole { name: "hideReadArticles"; query: "hideReadArticles/string()" }
109 //        //XmlRole { name: "catid"; query: "catid/string()"; isKey: true }
110
111 //    }
112
113 //    Component {
114 //        id: configDelegate
115
116 //        Item {
117
118 //            id: wrapper; width: wrapper.ListView.view.width; height: 86
119 //            Item {
120 //                id: moveMe
121 //                height: parent.height
122 //                Rectangle { color: "black"; opacity: index % 2 ? 0.2 : 0.4; height: 84; width: wrapper.width; y: 1 }
123 //                Rectangle {
124 //                    x: 6; y: 4; width: 77; height: parent.height - 9; color: "white"; smooth: true
125
126 //                }
127 //                Column {
128 //                    x: 92; width: wrapper.ListView.view.width - 95; y: 15; spacing: 2
129 //                    Text { text: title; color: "white"; width: parent.width; font.bold: true; elide: Text.ElideRight; style: Text.Raised; styleColor: "black" }
130 //                    //Text { text: feedname; width: parent.width; elide: Text.ElideLeft; color: "#cccccc"; style: Text.Raised; styleColor: "black" }
131 //                }
132 //            }
133 //            MouseArea { anchors.fill: wrapper; onClicked: { container.categoryClicked(catid); } }
134 //        }
135 //    }
136
137     Component.onCompleted: getConfig();
138 }