import Qt 4.7 import com.nokia.meego 1.0 import Drone 1.0 Window { id:mainWindow // fullscreen:true property Component dialogComponent // property alias m: mainPage StatusBar { id: statusBar anchors.top: parent.top anchors.bottom:myToolbar.top orientation: screen.orientation width: parent.width } ToolBar { id: myToolbar anchors.top: statusBar.bottom // anchors.bottom: pageStack.top } PageStack { id: pageStack clip: true anchors.top: toolBar.bottom anchors.bottom: parent.bottom width: parent.width toolBar: myToolbar } ToolBarLayout { id: commonTools visible: false ToolItem { iconId: "icon-m-toolbar-home"; onClicked: pageStack.pop(); } ToolItem { iconId: "icon-m-toolbar-view-menu"; onClicked: myMenu.open(); } ToolItem { iconId: "icon-m-toolbar-back"; onClicked: pageStack.pop(); } } DroneControl { id:drone } Component { id: mainpageComponent Page { id:mainPage //onEntered:(mainWindow.fullscreen=true) state:"Landscape" DroneVideo { y:0 x:0 anchors.horizontalCenter:parent.horizontalCenter width:drone.confFullScreen? parent.width:640 ;height:480*width/640; } GaugeHorizon { y:0 x:100 visible:drone.confShowHorizon value:drone.droneRoll value2:drone.dronePitch // value:lj.xv // value2:lj.yv opacity:0.5 width:640;height:480; } Text { y:100 visible:drone.confUseAccel color: "#00FF00" id: droneCtrlValues font.pixelSize:20 text: "cmd:pitch=" + Math.round(drone.pitch) + " roll= " + Math.round(drone.roll) + " yaw=" + Math.round(drone.yaw) + " vv= " + Math.round(drone.vVelocity) } Text { y:115 visible:drone.confShowDebug color: "#00FF00" id: droneNavData font.pixelSize:20 text: "pitch=" + Math.round(drone.dronePitch) + " roll= " + Math.round(drone.droneRoll) + "yaw=" + Math.round(drone.droneYaw) + " alt= " + Math.round(drone.droneAltitude) } Text { y:130 visible:drone.confShowDebug color: "#00FF00" id: droneStatus font.pixelSize:20 text: drone.decodedStatus } Button { y:150;x:0 height: 50 width: 50 text: "conf" onClicked:{ //mainWindow.fullscreen = false ; pageStack.push(dialogComponent); } } Image { visible: !drone.confUseAccel x:10;y:200 width:280;height:280; source: "joybox.png" JoyStick { id:lj anchors.fill:parent anchors.margins:50 onYvChanged:{drone.pitch=yv;} onXvChanged:{drone.roll=xv;} } } Image { y:200 anchors.right:parent.right width:280;height:280; source: "joybox.png" JoyStick { id:rj anchors.fill:parent anchors.margins:50 onYvChanged:{drone.vVelocity=-1*yv;} onXvChanged:{drone.yaw=xv;} onPressedChanged: { drone.ctrlActive=pressed;} } } Row { spacing: 5 anchors.right:parent.right anchors.rightMargin: 10 y:100 height:100 BarGauge { val:drone.pwm_motor1; max: 255 height:100 } BarGauge { val:drone.pwm_motor2; max: 255 height:100 } BarGauge { val:drone.pwm_motor3; max: 255 height:100 } BarGauge { val:drone.pwm_motor4; max: 255 height:100 } BarGauge { val:drone.droneVBat max: 100 height:100 } } Button { x:400 width:60 id:flyButton anchors.bottom:parent.bottom anchors.margins:15 text:"Fly"; checkable:true onClicked:{drone.fly=checked; // mainWindow.fullsecreen=checked; } } Button { x:400;y:100 width:120 id:emergencyButton anchors.top:parent.top anchors.margins:15 text:"Energency"; checkable:true onClicked:{drone.emergency=checked;} } } // Main page } Component.onCompleted: { if (mainpageComponent.status == Component.Ready) pageStack.push(mainpageComponent); else console.log("Error loading component:", mainpageComponent.errorString()); dialogComponent = Qt.createComponent("ConfigDialog.qml"); } // Component.onCompleted: { // mainWindow.fullscreen = true ; // dialogComponent = Qt.createComponent("ConfigDialog.qml"); // mainWindow.nextPage(mainpageComponent) // } }