aboutsummaryrefslogtreecommitdiff
path: root/vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala
diff options
context:
space:
mode:
Diffstat (limited to 'vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala')
-rw-r--r--vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala16
1 files changed, 12 insertions, 4 deletions
diff --git a/vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala b/vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala
index 3b48375..71e0fbb 100644
--- a/vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala
+++ b/vfd-frontend/src/main/scala/vfd/frontend/ui/panels/Primary.scala
@@ -2,15 +2,23 @@ package vfd.frontend.ui.panels
import rx.core.Var
import scalatags.JsDom.all.div
+import vfd.frontend.util._
import vfd.frontend.ui.Components
import vfd.frontend.util.Environment
+import org.mavlink.messages.Message
+import org.mavlink.messages.Attitude
+import rx.core.Rx
+import org.mavlink.messages.Pressure
object Primary {
- def apply()(implicit env: Environment) = {
- val pitchRoll = Var((0.0, 0.0))
- val heading = Var(0.0)
- val altitude = Var(0.0)
+ def apply(packet: Rx[Message])(implicit env: Environment) = {
+ val attitude = packet.only[Attitude]
+ val pressure = packet.only[Pressure]
+
+ val pitchRoll = Rx{(attitude().pitch.toDouble, attitude().roll.toDouble)}
+ val heading = Rx{attitude().heading.toDouble}
+ val altitude = Rx{pressure().pressure.toDouble}
div(
Components.heading(heading, "33%"),