improved desktop UI
[mardrone] / mardrone / ardrone_desktop.qml
index 196182a..d5bf0b8 100644 (file)
@@ -8,12 +8,12 @@ import JoyStick 1.0
 Window {
     title: "MArdrone"
     id:mainWindow
-    width: 1024
+    width: 700
     height: 800
     maximumHeight: mainWindow.height
     minimumHeight: 800
     maximumWidth: 1280
-    minimumWidth: 800
+    minimumWidth: 700
     visible: true
 
 
@@ -62,10 +62,11 @@ Window {
 
     Column {
         width:parent.width
-        spacing:5
+     //   spacing:5
       Rectangle {
         id:mainWiew
         width:parent.width
+        color:"black"
         height:480
         //onEntered:(mainWindow.fullscreen=true)
 
@@ -206,8 +207,21 @@ Window {
                 onPressedChanged: { drone.ctrlActive=pressed;}
             }
       }
+
+      Rectangle {
+          width:parent.width
+     //     width:chlidrenRect.width
+     //     height:childrenRect.height
+          height:320
+          color: "black"
+
+
+
         Row {
+            id:instrumentPanel
             spacing:5
+            anchors.fill:parent
+            anchors.margins:5
 
             EfisPFD {
                 id:pDF
@@ -239,88 +253,176 @@ Window {
             pitch:drone.dronePitch
             bezel:"bezel.png"
         }
-        HeadingGauge {
+        Item {
             width:120
             height:120
-            id:hdgGauge
-            value:drone.droneYaw
-            bezel:"bezel.png"
-        }
+
+
         GaugeArc {
-            width:120
-            height:120
-            id:fuelGauge
-            anchors.margins:10
-            displayScale:0.85
+            anchors.fill:parent
+            id:speedGauge
+ //           anchors.margins:10
+            displayScale:0.95
             font.pixelSize:10
-            tickIncrement:10
+            tickIncrement:20
             tickSpacing:24
             tickMinor:5
             lowPosition:220
             highPosition:120
             low:0
-            high:100
+            high:200
             gaugeStyle:2
             color:"white"
-            value:drone.droneVBat
+            value:drone.droneSpeed
             lineWidth:2
             backColor:"black"
         }
-        GaugeHSI{
-            anchors.margins:10
-            displayScale:0.5
+        Image {
+            anchors.fill:parent
+            source:"bezel.png"
+        }
+        }
+
+        Item {
             width:120
             height:120
+
+
+        GaugeArc {
+            anchors.fill:parent
+            id:fuelGauge
+ //           anchors.margins:10
+            displayScale:0.95
             font.pixelSize:10
-            tickIncrement:30
-            tickSpacing:10
+            tickIncrement:10
+            tickSpacing:22
             tickMinor:5
+            lowPosition:240
+            highPosition:120
+            low:0
+            high:100
             gaugeStyle:2
             color:"white"
+            value:drone.droneVBat
+            lineWidth:2
             backColor:"black"
-            id:hsi
         }
+        Image {
+            anchors.fill:parent
+            source:"bezel.png"
+        }
+        }
+        Item {
+            width:120
+            height:120
 
+            HeadingGauge {
+                width:120
+                height:120
+                id:hdgGauge
+                value:drone.droneYaw
+                bezel:"bezel.png"
+            }
+        }
+        Item {
+            width:120
+            height:120
+        Rectangle {
+            anchors.fill:parent
+            anchors.margins:5
+            color:"gray"
+            }
         Row {
+            anchors.centerIn:parent
             spacing: 5
-            anchors.rightMargin: 10
-            height:100
+            anchors.margins: 30
+            height:90
         BarGauge {
            val:drone.pwm_motor1;
            max: 255
-           height:100
+           height:parent.height
+           width:10
         }
         BarGauge {
             val:drone.pwm_motor2;
             max: 255
-            height:100
+           height:parent.height
+                     width:10
         }
         BarGauge {
             val:drone.pwm_motor3;
             max: 255
-            height:100
+            height:parent.height
+            width:10
         }
         BarGauge {
             val:drone.pwm_motor4;
             max: 255
-            height:100
+            height:parent.height
+             width:10
         }
+        /*
         BarGauge {
             val:drone.droneVBat
             max: 100
-            height:100
+            height:parent.height
+                      width:10
+        }
+        */
+        }
+        Image {
+            anchors.fill:parent
+            source:"bezel.png"
         }
         }
+        Button {
+
+            width:80
+            height:50
+            id:flyButton
+     //       anchors.bottom:parent.bottom
+            anchors.margins:15
+            text:"Fly";
+            checkable:true
+            onClicked:{drone.fly=checked;
+            // mainWindow.fullsecreen=checked;
+            }
+        }
+        Button {
+
+            width:90
+            height:50
+            id:emergencyButton
+         //   anchors.bottom:parent.bottom
+            anchors.margins:15
+            text:"Emrg";
+            checkable:true
+            onClicked:{drone.emergency=checked;}
+        }
+
+        Button {
+
+            width:100
+            height:50
+            id:recordButton
+       //     anchors.bottom:parent.bottom
+            anchors.margins:15
+            text:"Rec";
+            checkable:true
+            onClicked:{droneVideo.recVideo=checked; drone.logFileName=droneVideo.videoFileName; drone.recordLog=checked;}
+        }
             } // Grid if instruments
-        } // Column ( Main window content )
+        }
 
+        } // Column ( Main window content )
+       }
         Dialog {
             id:configDialog
             width:800
             height:600
             data:ConfigDialogDesktop {}
         }
-    }
+
   } // Main page