3 import com.nokia.android 1.1
10 initialPage: mainpageComponent
13 property Component dialogComponent
14 // property alias m: mainPage
20 iconSource: "toolbar-back"
21 onClicked: mainWindow.pageStack.depth <= 1 ? Qt.quit() : mainWindow.pageStack.pop()
29 onElevatorChanged:{if(drone.confUseJoyStick) drone.pitch=elevator;}
30 onAileronChanged: {if(drone.confUseJoyStick) drone.roll=-1.0*aileron;}
31 onThrotleChanged: {if(drone.confUseJoyStick) drone.vVelocity=throtle;}
32 onRudderChanged: {if(drone.confUseJoyStick) drone.yaw=rudder;}
36 console.debug("QML:Keys.onUpPressed",event.key)
37 if (event.key == Qt.Key_TopMenu)
38 console.debug("QML: opening menu!")
39 else if (event.key == Qt.Key_MediaPrevious) {
40 console.debug("QML: closing! (maybe)")
41 pageStack.depth <= 1 ? Qt.quit() : pageStack.pop()
45 console.debug("QML:Keys.onPressed",event.key)
46 if (event.key == Qt.Key_TopMenu)
47 console.debug("QML: opening menu!")
48 else if (event.key == Qt.Key_MediaPrevious) {
49 console.debug("QML: closing! (maybe)")
50 pageStack.depth <= 1 ? Qt.quit() : pageStack.pop()
55 console.debug("QML: backKey")
56 pageStack.depth <= 1 ? Qt.quit() : pageStack.pop()
65 property bool connectingBoxVisible:true
66 //onEntered:(mainWindow.fullscreen=true)
73 // anchors.horizontalCenter:parent.horizontalCenter
74 width:drone.confFullScreen? parent.width:640 ;height:480*width/640;
79 value: droneVideo.frameSeq;
84 anchors.horizontalCenter: parent.horizontalCenter
85 visible:drone.confShowHorizon
87 pitch:drone.dronePitch
89 alt:drone.droneAltitude
90 heading:drone.droneYaw
91 indicatorColor:"#00FF00"
93 groundColor:"#00000000"
99 visible:drone.confShowDebug
103 text: "cmd:pitch=" + drone.pitch.toFixed(2) + " roll= " + drone.roll.toFixed(2) + " yaw=" + drone.yaw.toFixed(2) + " vv= " + drone.vVelocity.toFixed(2)
108 visible:drone.confShowDebug
112 text: "pitch=" + drone.dronePitch.toFixed(2) + " roll= " + drone.droneRoll.toFixed(2) + "yaw=" + drone.droneYaw.toFixed(2) + " alt= " + drone.droneAltitude.toFixed(2)
117 visible:drone.confShowDebug
121 text: drone.decodedStatus
127 z:2 // This is visible even connecting to drone
128 iconSource: "gear32x32.png"
129 onClicked:{ //mainWindow.fullscreen = false ;
130 pageStack.push(dialogComponent);
136 visible:drone.confShowJSIndicators&js.haveJoyStick&drone.confUseJoyStick
143 anchors.bottom: parent.bottom
158 visible:drone.confShowJSIndicators&js.haveJoyStick&drone.confUseJoyStick
165 anchors.bottom: parent.bottom
179 width:200;height:200;
181 visible: !drone.confUseAccel & !drone.confUseJoyStick
182 anchors.left:parent.left
183 anchors.bottom:parent.bottom
186 onYvChanged:{drone.vVelocity=-1*yv/200.0;}
187 onXvChanged:{drone.yaw=xv/200.0;}
188 onPressedChanged: { drone.ctrlActive=pressed;}
192 visible: !drone.confUseJoyStick
195 anchors.right:parent.right
196 anchors.bottom:parent.bottom
197 width:200;height:200;
199 onYvChanged:{drone.pitch=yv/200.0;}
200 onXvChanged:{drone.roll=xv/200.0;}
205 anchors.right:parent.right
206 anchors.rightMargin: 10
210 val:drone.pwm_motor1;
215 val:drone.pwm_motor2;
220 val:drone.pwm_motor3;
225 val:drone.pwm_motor4;
241 anchors.bottom:parent.bottom
245 onClicked:{drone.fly=checked;
246 // mainWindow.fullsecreen=checked;
254 anchors.bottom:parent.bottom
258 onClicked:{drone.emergency=checked;}
266 anchors.bottom:parent.bottom
270 onClicked:{droneVideo.recVideo=checked; drone.logFileName=droneVideo.videoFileName; drone.recordLog=checked;}
274 anchors.bottom:parent.bottom
275 // visible:droneVideo.recVideo
279 text: droneVideo.videoFileName+ " "+droneVideo.frameSeq
286 console.log("Connected to drone");
287 connectingDialog.accept();}
291 titleText:"Connecting to Drone"
292 message:"Connecting to Drone "+ drone.confDroneIp
293 acceptButtonText:"OK"
294 Component.onCompleted: {
295 console.log("ConectionDialog Opened");
296 if(!drone.connected) open(); }
301 Component.onCompleted: {
302 if (mainpageComponent.status != Component.Ready)
303 // pageStack.push(mainpageComponent);
305 console.log("Error loading component:", mainpageComponent.errorString());
306 dialogComponent = Qt.createComponent("ConfigDialogAndroid.qml");