diff --git a/companion/src/companion.qrc b/companion/src/companion.qrc
index 4f406391c..f1ad0c30b 100644
--- a/companion/src/companion.qrc
+++ b/companion/src/companion.qrc
@@ -332,10 +332,20 @@
images/simulator/TX16S/left_tele.png
images/simulator/TX16S/right_ent.png
images/simulator/TX16S/right_mdl.png
- images/simulator/NV14/left.png
- images/simulator/NV14/right.png
images/simulator/NV14/top.png
images/simulator/NV14/bottom.png
+ images/simulator/NV14/lhs.png
+ images/simulator/NV14/rhs.png
+ images/simulator/NV14/lhs_hat_left.png
+ images/simulator/NV14/lhs_hat_right.png
+ images/simulator/NV14/lhs_hat_up.png
+ images/simulator/NV14/lhs_hat_down.png
+ images/simulator/NV14/lhs_hat_press.png
+ images/simulator/NV14/rhs_hat_left.png
+ images/simulator/NV14/rhs_hat_right.png
+ images/simulator/NV14/rhs_hat_up.png
+ images/simulator/NV14/rhs_hat_down.png
+ images/simulator/NV14/rhs_hat_press.png
images/simulator/PL18/left.png
images/simulator/PL18/right.png
images/simulator/PL18/top.png
diff --git a/companion/src/images/simulator/NV14/bottom.png b/companion/src/images/simulator/NV14/bottom.png
old mode 100644
new mode 100755
index 5fc10a49d..627269dc5
Binary files a/companion/src/images/simulator/NV14/bottom.png and b/companion/src/images/simulator/NV14/bottom.png differ
diff --git a/companion/src/images/simulator/NV14/left.png b/companion/src/images/simulator/NV14/left.png
deleted file mode 100644
index 6294e9922..000000000
Binary files a/companion/src/images/simulator/NV14/left.png and /dev/null differ
diff --git a/companion/src/images/simulator/NV14/lhs.png b/companion/src/images/simulator/NV14/lhs.png
new file mode 100755
index 000000000..7ebf1fdfb
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs.png differ
diff --git a/companion/src/images/simulator/NV14/lhs_hat_down.png b/companion/src/images/simulator/NV14/lhs_hat_down.png
new file mode 100755
index 000000000..4c748b035
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs_hat_down.png differ
diff --git a/companion/src/images/simulator/NV14/lhs_hat_left.png b/companion/src/images/simulator/NV14/lhs_hat_left.png
new file mode 100755
index 000000000..acf36ab73
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs_hat_left.png differ
diff --git a/companion/src/images/simulator/NV14/lhs_hat_press.png b/companion/src/images/simulator/NV14/lhs_hat_press.png
new file mode 100755
index 000000000..87db60e0a
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs_hat_press.png differ
diff --git a/companion/src/images/simulator/NV14/lhs_hat_right.png b/companion/src/images/simulator/NV14/lhs_hat_right.png
new file mode 100755
index 000000000..06b603390
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs_hat_right.png differ
diff --git a/companion/src/images/simulator/NV14/lhs_hat_up.png b/companion/src/images/simulator/NV14/lhs_hat_up.png
new file mode 100755
index 000000000..191806702
Binary files /dev/null and b/companion/src/images/simulator/NV14/lhs_hat_up.png differ
diff --git a/companion/src/images/simulator/NV14/rhs.png b/companion/src/images/simulator/NV14/rhs.png
new file mode 100755
index 000000000..453105102
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs.png differ
diff --git a/companion/src/images/simulator/NV14/rhs_hat_down.png b/companion/src/images/simulator/NV14/rhs_hat_down.png
new file mode 100755
index 000000000..58cebc341
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs_hat_down.png differ
diff --git a/companion/src/images/simulator/NV14/rhs_hat_left.png b/companion/src/images/simulator/NV14/rhs_hat_left.png
new file mode 100755
index 000000000..caea0bde9
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs_hat_left.png differ
diff --git a/companion/src/images/simulator/NV14/rhs_hat_press.png b/companion/src/images/simulator/NV14/rhs_hat_press.png
new file mode 100755
index 000000000..225d045f7
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs_hat_press.png differ
diff --git a/companion/src/images/simulator/NV14/rhs_hat_right.png b/companion/src/images/simulator/NV14/rhs_hat_right.png
new file mode 100755
index 000000000..b76d380f7
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs_hat_right.png differ
diff --git a/companion/src/images/simulator/NV14/rhs_hat_up.png b/companion/src/images/simulator/NV14/rhs_hat_up.png
new file mode 100755
index 000000000..5c0abc608
Binary files /dev/null and b/companion/src/images/simulator/NV14/rhs_hat_up.png differ
diff --git a/companion/src/images/simulator/NV14/right.png b/companion/src/images/simulator/NV14/right.png
deleted file mode 100644
index 6294e9922..000000000
Binary files a/companion/src/images/simulator/NV14/right.png and /dev/null differ
diff --git a/companion/src/images/simulator/NV14/top.png b/companion/src/images/simulator/NV14/top.png
old mode 100644
new mode 100755
index 5fc10a49d..924a0ff5f
Binary files a/companion/src/images/simulator/NV14/top.png and b/companion/src/images/simulator/NV14/top.png differ
diff --git a/companion/src/simulation/simulateduiwidgetEL18.cpp b/companion/src/simulation/simulateduiwidgetEL18.cpp
index 80310a208..80e100e0b 100644
--- a/companion/src/simulation/simulateduiwidgetEL18.cpp
+++ b/companion/src/simulation/simulateduiwidgetEL18.cpp
@@ -34,38 +34,40 @@ SimulatedUIWidgetEL18::SimulatedUIWidgetEL18(SimulatorInterface *simulator, QWid
// add actions in order of appearance on the help menu
- // Note: the EL18 has no physical buttons though at some point the trim joystick is repurposed
- // allow for colorlcd key events and see what works
- // the mouse click areas do not map to visual buttons on the background images
+ act = new RadioUiAction(KEY_SYS, QList() << Qt::Key_Up, SIMU_STR_HLP_KEY_UP, SIMU_STR_HLP_ACT_SYS);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(65, 15), QSize(40, 40)), "NV14/lhs_hat_up.png", act));
- act = new RadioUiAction(KEY_MODEL, QList() << Qt::Key_Up, SIMU_STR_HLP_KEY_UP, SIMU_STR_HLP_ACT_MDL);
- addRadioWidget(ui->rightbuttons->addArea(QRect(10, 1, 80, 35), "NV14/left.png", act));
+ //act = new RadioUiAction(13, QList() << Qt::Key_Left, SIMU_STR_HLP_KEY_LFT, SIMU_STR_HLP_ACT_EXIT);
+ //addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(5, 75), QSize(40, 40)), "NV14/lhs_hat_left.png", act));
- m_mouseMidClickAction = new RadioUiAction(KEY_ENTER, QList() << Qt::Key_Enter << Qt::Key_Return, SIMU_STR_HLP_KEYS_ACTIVATE, SIMU_STR_HLP_ACT_ROT_DN);
- addRadioWidget(ui->rightbuttons->addArea(QRect(10, 40, 80, 35), "NV14/left.png", m_mouseMidClickAction));
+ act = new RadioUiAction(KEY_MODEL, QList() << Qt::Key_Right, SIMU_STR_HLP_KEY_RGT, SIMU_STR_HLP_ACT_MDL);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(130, 75), QSize(40, 40)), "NV14/lhs_hat_right.png", act));
- act = new RadioUiAction(KEY_SYS, QList() << Qt::Key_Left, SIMU_STR_HLP_KEY_LFT, SIMU_STR_HLP_ACT_SYS);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 80, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_TELE, QList() << Qt::Key_Down, SIMU_STR_HLP_KEY_DN, SIMU_STR_HLP_ACT_TELE);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(65, 140), QSize(40, 40)), "NV14/lhs_hat_down.png", act));
- act = new RadioUiAction(KEY_TELE, QList() << Qt::Key_Right, SIMU_STR_HLP_KEY_RGT, SIMU_STR_HLP_ACT_TELE);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 120, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_EXIT, QList() << Qt::Key_Delete << Qt::Key_Escape << Qt::Key_Backspace, SIMU_STR_HLP_KEYS_EXIT, SIMU_STR_HLP_ACT_EXIT);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(60, 70), QSize(50, 50)), "NV14/lhs_hat_press.png", act));
- act = new RadioUiAction(KEY_PAGEDN, QList() << Qt::Key_PageDown, SIMU_STR_HLP_KEY_PGDN, SIMU_STR_HLP_ACT_PGDN);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 160, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_UP, QList() << Qt::Key_Plus, SIMU_STR_HLP_KEY_PLS, SIMU_STR_HLP_ACT_PREVINC);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(95, 15), QSize(40, 40)), "NV14/rhs_hat_up.png", act));
- act = new RadioUiAction(KEY_PAGEUP, QList() << Qt::Key_PageUp, SIMU_STR_HLP_KEY_PGUP, SIMU_STR_HLP_ACT_PGUP);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 200, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_PAGEUP, QList() << Qt::Key_PageUp, SIMU_STR_HLP_KEY_PGDN, SIMU_STR_HLP_ACT_PGDN);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(35, 75), QSize(40, 40)), "NV14/rhs_hat_left.png", act));
- act = new RadioUiAction(KEY_EXIT, QList() << Qt::Key_Down << Qt::Key_Delete << Qt::Key_Escape << Qt::Key_Backspace,
- SIMU_STR_HLP_KEY_DN % "
" % SIMU_STR_HLP_KEYS_EXIT, SIMU_STR_HLP_ACT_RTN);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 240, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_PAGEDN, QList() << Qt::Key_PageDown, SIMU_STR_HLP_KEY_PGUP, SIMU_STR_HLP_ACT_PGUP);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(160, 75), QSize(40, 40)), "NV14/rhs_hat_right.png", act));
+
+ act = new RadioUiAction(KEY_DOWN, QList() << Qt::Key_Minus, SIMU_STR_HLP_KEY_MIN, SIMU_STR_HLP_ACT_NEXTDEC);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(95, 140), QSize(40, 40)), "NV14/rhs_hat_down.png", act));
+
+ act = new RadioUiAction(KEY_ENTER, QList() << Qt::Key_Enter << Qt::Key_Return, SIMU_STR_HLP_KEYS_ACTIVATE, SIMU_STR_HLP_ACT_ENT);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(90, 70), QSize(50, 50)), "NV14/rhs_hat_press.png", act));
m_scrollUpAction = new RadioUiAction(-1, QList() << Qt::Key_Minus, SIMU_STR_HLP_KEY_MIN % "|" % SIMU_STR_HLP_MOUSE_UP, SIMU_STR_HLP_ACT_ROT_LFT);
m_scrollDnAction = new RadioUiAction(-1, QList() << Qt::Key_Plus << Qt::Key_Equal, SIMU_STR_HLP_KEY_PLS % "|" % SIMU_STR_HLP_MOUSE_DN, SIMU_STR_HLP_ACT_ROT_RGT);
connectScrollActions();
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 280, 30, 30), "NV14/left.png", m_screenshotAction));
-
m_backlightColors << QColor(47, 123, 227);
setLcd(ui->lcd);
diff --git a/companion/src/simulation/simulateduiwidgetEL18.ui b/companion/src/simulation/simulateduiwidgetEL18.ui
index af70d45c5..82ee92109 100644
--- a/companion/src/simulation/simulateduiwidgetEL18.ui
+++ b/companion/src/simulation/simulateduiwidgetEL18.ui
@@ -6,8 +6,8 @@
0
0
- 520
- 500
+ 724
+ 506
@@ -18,14 +18,14 @@
- 520
- 500
+ 724
+ 506
- 520
- 500
+ 724
+ 506
@@ -54,18 +54,18 @@
- 100
- 500
+ 202
+ 506
- 100
- 500
+ 202
+ 506
- background:url(:/images/simulator/NV14/right.png)
+ background:url(:/images/simulator/NV14/rhs.png)
@@ -106,21 +106,21 @@
- 100
- 500
+ 202
+ 506
- 100
- 500
+ 202
+ 506
true
- background:url(:/images/simulator/NV14/left.png);
+ background:url(:/images/simulator/NV14/lhs.png);
@@ -135,13 +135,13 @@
320
- 10
+ 13
320
- 10
+ 13
@@ -165,13 +165,13 @@
320
- 10
+ 13
320
- 10
+ 13
diff --git a/companion/src/simulation/simulateduiwidgetNV14.cpp b/companion/src/simulation/simulateduiwidgetNV14.cpp
index 12ef4b142..c56fb20a1 100644
--- a/companion/src/simulation/simulateduiwidgetNV14.cpp
+++ b/companion/src/simulation/simulateduiwidgetNV14.cpp
@@ -34,38 +34,43 @@ SimulatedUIWidgetNV14::SimulatedUIWidgetNV14(SimulatorInterface *simulator, QWid
// add actions in order of appearance on the help menu
- // Note: the NV14 has no physical buttons though at some point the trim joystick is repurposed
- // allow for colorlcd key events and see what works
- // the mouse click areas do not map to visual buttons on the background images
+ act = new RadioUiAction(KEY_SYS, QList() << Qt::Key_Up, SIMU_STR_HLP_KEY_UP, SIMU_STR_HLP_ACT_SYS);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(65, 15), QSize(40, 40)), "NV14/lhs_hat_up.png", act));
- act = new RadioUiAction(KEY_MODEL, QList() << Qt::Key_Up, SIMU_STR_HLP_KEY_UP, SIMU_STR_HLP_ACT_MDL);
- addRadioWidget(ui->rightbuttons->addArea(QRect(10, 1, 80, 35), "NV14/left.png", act));
+ // unused
+ //act = new RadioUiAction(13, QList() << Qt::Key_Left, SIMU_STR_HLP_KEY_LFT, SIMU_STR_HLP_ACT_EXIT);
+ //addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(5, 75), QSize(40, 40)), "NV14/lhs_hat_left.png", act));
- m_mouseMidClickAction = new RadioUiAction(KEY_ENTER, QList() << Qt::Key_Enter << Qt::Key_Return, SIMU_STR_HLP_KEYS_ACTIVATE, SIMU_STR_HLP_ACT_ROT_DN);
- addRadioWidget(ui->rightbuttons->addArea(QRect(10, 40, 80, 35), "NV14/left.png", m_mouseMidClickAction));
+ act = new RadioUiAction(KEY_MODEL, QList() << Qt::Key_Right, SIMU_STR_HLP_KEY_RGT, SIMU_STR_HLP_ACT_MDL);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(130, 75), QSize(40, 40)), "NV14/lhs_hat_right.png", act));
- act = new RadioUiAction(KEY_SYS, QList() << Qt::Key_Left, SIMU_STR_HLP_KEY_LFT, SIMU_STR_HLP_ACT_SYS);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 80, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_TELE, QList() << Qt::Key_Down, SIMU_STR_HLP_KEY_DN, SIMU_STR_HLP_ACT_TELE);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(65, 140), QSize(40, 40)), "NV14/lhs_hat_down.png", act));
- act = new RadioUiAction(KEY_TELE, QList() << Qt::Key_Right, SIMU_STR_HLP_KEY_RGT, SIMU_STR_HLP_ACT_TELE);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 120, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_EXIT, QList() << Qt::Key_Delete << Qt::Key_Escape << Qt::Key_Backspace, SIMU_STR_HLP_KEYS_EXIT, SIMU_STR_HLP_ACT_EXIT);
+ addRadioWidget(ui->leftbuttons->addArea(QRect(QPoint(60, 70), QSize(50, 50)), "NV14/lhs_hat_press.png", act));
- act = new RadioUiAction(KEY_PAGEDN, QList() << Qt::Key_PageDown, SIMU_STR_HLP_KEY_PGDN, SIMU_STR_HLP_ACT_PGDN);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 160, 80, 35), "NV14/left.png", act));
+ // non-functional
+ // act = new RadioUiAction(KEY_UP, QList() << Qt::Key_Plus, SIMU_STR_HLP_KEY_PLS, SIMU_STR_HLP_ACT_PREVINC);
+ // addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(95, 15), QSize(40, 40)), "NV14/rhs_hat_up.png", act));
- act = new RadioUiAction(KEY_PAGEUP, QList() << Qt::Key_PageUp, SIMU_STR_HLP_KEY_PGUP, SIMU_STR_HLP_ACT_PGUP);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 200, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_PAGEUP, QList() << Qt::Key_PageUp, SIMU_STR_HLP_KEY_PGDN, SIMU_STR_HLP_ACT_PGDN);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(35, 75), QSize(40, 40)), "NV14/rhs_hat_left.png", act));
- act = new RadioUiAction(KEY_EXIT, QList() << Qt::Key_Down << Qt::Key_Delete << Qt::Key_Escape << Qt::Key_Backspace,
- SIMU_STR_HLP_KEY_DN % "
" % SIMU_STR_HLP_KEYS_EXIT, SIMU_STR_HLP_ACT_RTN);
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 240, 80, 35), "NV14/left.png", act));
+ act = new RadioUiAction(KEY_PAGEDN, QList() << Qt::Key_PageDown, SIMU_STR_HLP_KEY_PGUP, SIMU_STR_HLP_ACT_PGUP);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(160, 75), QSize(40, 40)), "NV14/rhs_hat_right.png", act));
+
+ // non-functional
+ // act = new RadioUiAction(KEY_DOWN, QList() << Qt::Key_Minus, SIMU_STR_HLP_KEY_MIN, SIMU_STR_HLP_ACT_NEXTDEC);
+ // addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(95, 140), QSize(40, 40)), "NV14/rhs_hat_down.png", act));
+
+ act = new RadioUiAction(KEY_ENTER, QList() << Qt::Key_Enter << Qt::Key_Return, SIMU_STR_HLP_KEYS_ACTIVATE, SIMU_STR_HLP_ACT_ENT);
+ addRadioWidget(ui->rightbuttons->addArea(QRect(QPoint(90, 70), QSize(50, 50)), "NV14/rhs_hat_press.png", act));
m_scrollUpAction = new RadioUiAction(-1, QList() << Qt::Key_Minus, SIMU_STR_HLP_KEY_MIN % "|" % SIMU_STR_HLP_MOUSE_UP, SIMU_STR_HLP_ACT_ROT_LFT);
m_scrollDnAction = new RadioUiAction(-1, QList() << Qt::Key_Plus << Qt::Key_Equal, SIMU_STR_HLP_KEY_PLS % "|" % SIMU_STR_HLP_MOUSE_DN, SIMU_STR_HLP_ACT_ROT_RGT);
connectScrollActions();
- addRadioWidget(ui->leftbuttons->addArea(QRect(10, 280, 30, 30), "NV14/left.png", m_screenshotAction));
-
m_backlightColors << QColor(47, 123, 227);
setLcd(ui->lcd);
diff --git a/companion/src/simulation/simulateduiwidgetNV14.ui b/companion/src/simulation/simulateduiwidgetNV14.ui
index 50f30f25b..840cce663 100644
--- a/companion/src/simulation/simulateduiwidgetNV14.ui
+++ b/companion/src/simulation/simulateduiwidgetNV14.ui
@@ -6,8 +6,8 @@
0
0
- 520
- 500
+ 724
+ 506
@@ -18,14 +18,14 @@
- 520
- 500
+ 724
+ 506
- 520
- 500
+ 724
+ 506
@@ -54,18 +54,18 @@
- 100
- 500
+ 202
+ 506
- 100
- 500
+ 202
+ 506
- background:url(:/images/simulator/NV14/right.png)
+ background:url(:/images/simulator/NV14/rhs.png)
@@ -106,21 +106,21 @@
- 100
- 500
+ 202
+ 506
- 100
- 500
+ 202
+ 506
true
- background:url(:/images/simulator/NV14/left.png);
+ background:url(:/images/simulator/NV14/lhs.png);
@@ -135,13 +135,13 @@
320
- 10
+ 13
320
- 10
+ 13
@@ -165,13 +165,13 @@
320
- 10
+ 13
320
- 10
+ 13
diff --git a/companion/src/simulation/simulator_strings.h b/companion/src/simulation/simulator_strings.h
index be9e69dab..b75cf2736 100644
--- a/companion/src/simulation/simulator_strings.h
+++ b/companion/src/simulation/simulator_strings.h
@@ -73,6 +73,9 @@
#define SIMU_STR_HLP_ACT_TELE QCoreApplication::translate("SimulatedUIWidget", "[ TELE ]
")
#define SIMU_STR_HLP_ACT_MENU_ICN QCoreApplication::translate("SimulatedUIWidget", "≡") // ≡
+#define SIMU_STR_HLP_ACT_PREVINC QCoreApplication::translate("SimulatedUIWidget", "[ Prev/Inc ]
")
+#define SIMU_STR_HLP_ACT_NEXTDEC QCoreApplication::translate("SimulatedUIWidget", "[ Next/Dec ]
")
+
#define SIMU_STR_HLP_KEYS_EXIT SIMU_STR_HLP_KEY_DEL % "|" % SIMU_STR_HLP_KEY_BKSP % "|" % SIMU_STR_HLP_KEY_ESC
#define SIMU_STR_HLP_KEYS_ACTIVATE SIMU_STR_HLP_KEY_ENTER % "|" % SIMU_STR_HLP_MOUSE_MID