Menu black overlay fix (need to give the pointer of the current window)
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 13 KiB |
@@ -21,8 +21,8 @@
|
||||
#include "confirm_dialog.h"
|
||||
#include "static.h"
|
||||
|
||||
ConfirmDialog::ConfirmDialog(const char * title, const char * message, std::function<void(void)> confirmHandler) :
|
||||
Dialog(title, {50, 73, LCD_W - 100, LCD_H - 146}),
|
||||
ConfirmDialog::ConfirmDialog(Window * parent, const char * title, const char * message, std::function<void(void)> confirmHandler) :
|
||||
Dialog(parent, title, {50, 73, LCD_W - 100, LCD_H - 146}),
|
||||
confirmHandler(std::move(confirmHandler))
|
||||
{
|
||||
new StaticText(this, {0, height() / 2, width(), PAGE_LINE_HEIGHT}, message, CENTERED);
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
class ConfirmDialog: public Dialog {
|
||||
public:
|
||||
ConfirmDialog(const char * title, const char * message, std::function<void(void)> confirmHandler);
|
||||
ConfirmDialog(Window * parent, const char * title, const char * message, std::function<void(void)> confirmHandler);
|
||||
|
||||
#if defined(HARDWARE_KEYS)
|
||||
void onEvent(event_t event) override;
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
|
||||
inline void POPUP_INFORMATION(const char * str)
|
||||
{
|
||||
new MessageDialog("Message", str);
|
||||
new MessageDialog(&mainWindow, "Message", str);
|
||||
}
|
||||
|
||||
#endif // _LIBOPENUI_H_
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
#include "message_dialog.h"
|
||||
#include "static.h"
|
||||
|
||||
MessageDialog::MessageDialog(const char * title, const char * message):
|
||||
Dialog(title, {50, 73, LCD_W - 100, LCD_H - 146})
|
||||
MessageDialog::MessageDialog(Window * parent, const char * title, const char * message):
|
||||
Dialog(parent, title, {50, 73, LCD_W - 100, LCD_H - 146})
|
||||
{
|
||||
new StaticText(this, {0, coord_t(height() - PAGE_LINE_HEIGHT) / 2, width(), PAGE_LINE_HEIGHT}, message, 0, CENTERED);
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
class MessageDialog: public Dialog {
|
||||
public:
|
||||
MessageDialog(const char * title, const char * message);
|
||||
MessageDialog(Window * parent, const char * title, const char * message);
|
||||
|
||||
#if defined(HARDWARE_KEYS)
|
||||
void onEvent(event_t event) override;
|
||||
|
||||
@@ -274,12 +274,12 @@ void ModelCurvesPage::build(FormWindow * window, int8_t focusIndex)
|
||||
// Curve drawing
|
||||
Button * button = new CurveButton(window, grid.getFieldSlot(), index);
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editCurve(window, index);
|
||||
});
|
||||
menu->addLine(STR_CURVE_PRESET, [=]() {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
for (int angle = -45; angle <= 45; angle += 15) {
|
||||
char label[16];
|
||||
strAppend(strAppendSigned(label, angle), "@");
|
||||
|
||||
@@ -337,8 +337,8 @@ void ModelGVarsPage::build(FormWindow * window)
|
||||
|
||||
for (uint8_t index = 0; index < MAX_GVARS; index++) {
|
||||
Button * button = new GVarButton(window, grid.getLineSlot(), index);
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
Menu * menu = new Menu();
|
||||
button->setPressHandler([=]() {
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
Window * editWindow = new GVarEditWindow(index);
|
||||
editWindow->setCloseHandler([=]() {
|
||||
|
||||
@@ -407,7 +407,7 @@ void ModelInputsPage::build(FormWindow * window, int8_t focusIndex)
|
||||
button->setFocus();
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editInput(window, input, inputIndex);
|
||||
});
|
||||
@@ -468,7 +468,7 @@ void ModelInputsPage::build(FormWindow * window, int8_t focusIndex)
|
||||
button->setFocus();
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
insertExpo(inputIndex, input);
|
||||
editInput(window, input, inputIndex);
|
||||
|
||||
@@ -363,7 +363,7 @@ void ModelLogicalSwitchesPage::build(FormWindow * window, int8_t focusIndex)
|
||||
|
||||
auto button = new LogicalSwitchButton(window, grid.getFieldSlot(), i);
|
||||
button->setPressHandler([=]() {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
LogicalSwitchData * ls = lswAddress(i);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editLogicalSwitch(window, i);
|
||||
|
||||
@@ -338,7 +338,7 @@ void ModelMixesPage::build(FormWindow * window, int8_t focusMixIndex)
|
||||
button->setFocus();
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editMix(window, ch, mixIndex);
|
||||
});
|
||||
@@ -402,7 +402,7 @@ void ModelMixesPage::build(FormWindow * window, int8_t focusMixIndex)
|
||||
button->setFocus();
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
insertMix(mixIndex, ch);
|
||||
editMix(window, ch, mixIndex);
|
||||
|
||||
@@ -176,7 +176,7 @@ void ModelOutputsPage::build(FormWindow * window, int8_t focusChannel)
|
||||
// Channel settings
|
||||
Button * button = new OutputLineButton(window, grid.getFieldSlot(), output);
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editOutput(window, ch);
|
||||
});
|
||||
|
||||
@@ -263,7 +263,7 @@ class ModelCategoryPageBody: public FormWindow {
|
||||
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
if (button->hasFocus()) {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(parent);
|
||||
if (model != modelslist.getCurrentModel()) {
|
||||
menu->addLine(STR_SELECT_MODEL, [=]() {
|
||||
// we store the latest changes if any
|
||||
@@ -302,7 +302,7 @@ class ModelCategoryPageBody: public FormWindow {
|
||||
// menu->addLine(STR_MOVE_MODEL);
|
||||
if (model != modelslist.getCurrentModel()) {
|
||||
menu->addLine(STR_DELETE_MODEL, [=]() {
|
||||
new ConfirmDialog(STR_DELETE_MODEL, std::string(model->modelName, sizeof(model->modelName)).c_str(), [=] {
|
||||
new ConfirmDialog(parent, STR_DELETE_MODEL, std::string(model->modelName, sizeof(model->modelName)).c_str(), [=] {
|
||||
modelslist.removeModel(category, model);
|
||||
update(index > 0 ? index - 1 : 0);
|
||||
});
|
||||
|
||||
@@ -170,8 +170,8 @@ class FailSafePage : public Page {
|
||||
|
||||
class RegisterDialog: public Dialog {
|
||||
public:
|
||||
explicit RegisterDialog(uint8_t moduleIdx):
|
||||
Dialog(STR_REGISTER, {50, 73, LCD_W - 100, 0}),
|
||||
RegisterDialog(Window * parent, uint8_t moduleIdx):
|
||||
Dialog(parent, STR_REGISTER, {50, 73, LCD_W - 100, 0}),
|
||||
moduleIdx(moduleIdx)
|
||||
{
|
||||
FormGroup * form = &content->form;
|
||||
@@ -259,8 +259,8 @@ class RegisterDialog: public Dialog {
|
||||
|
||||
class BindWaitDialog: public Dialog {
|
||||
public:
|
||||
BindWaitDialog(uint8_t moduleIdx, uint8_t receiverIdx):
|
||||
Dialog(STR_BIND, {50, 73, LCD_W - 100, LCD_H - 146}),
|
||||
BindWaitDialog(Window * parent, uint8_t moduleIdx, uint8_t receiverIdx):
|
||||
Dialog(parent, STR_BIND, {50, 73, LCD_W - 100, LCD_H - 146}),
|
||||
moduleIdx(moduleIdx),
|
||||
receiverIdx(receiverIdx)
|
||||
{
|
||||
@@ -288,8 +288,8 @@ class BindWaitDialog: public Dialog {
|
||||
|
||||
class BindRxChoiceMenu: public Menu {
|
||||
public:
|
||||
BindRxChoiceMenu(uint8_t moduleIdx, uint8_t receiverIdx):
|
||||
Menu(),
|
||||
BindRxChoiceMenu(Window * parent, uint8_t moduleIdx, uint8_t receiverIdx):
|
||||
Menu(parent),
|
||||
moduleIdx(moduleIdx),
|
||||
receiverIdx(receiverIdx)
|
||||
{
|
||||
@@ -315,10 +315,10 @@ class BindRxChoiceMenu: public Menu {
|
||||
memcpy(g_model.moduleData[moduleIdx].pxx2.receiverName[receiverIdx], receiverName, PXX2_LEN_RX_NAME);
|
||||
storageDirty(EE_MODEL);
|
||||
reusableBuffer.moduleSetup.bindInformation.step = BIND_OK;
|
||||
new MessageDialog(STR_BIND, STR_BIND_OK);
|
||||
new MessageDialog(parent, STR_BIND, STR_BIND_OK);
|
||||
#else
|
||||
reusableBuffer.moduleSetup.bindInformation.step = BIND_START;
|
||||
new BindWaitDialog(moduleIdx, receiverIdx);
|
||||
new BindWaitDialog(parent, moduleIdx, receiverIdx);
|
||||
#endif
|
||||
}
|
||||
});
|
||||
@@ -346,7 +346,7 @@ void BindWaitDialog::checkEvents()
|
||||
|
||||
if (reusableBuffer.moduleSetup.bindInformation.step == BIND_INIT && reusableBuffer.moduleSetup.bindInformation.candidateReceiversCount > 0) {
|
||||
deleteLater();
|
||||
new BindRxChoiceMenu(moduleIdx, receiverIdx);
|
||||
new BindRxChoiceMenu(this, moduleIdx, receiverIdx);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -361,7 +361,7 @@ class ReceiverButton: public TextButton {
|
||||
startBind();
|
||||
}
|
||||
else {
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(parent);
|
||||
menu->addLine(STR_BIND, [=]() {
|
||||
startBind();
|
||||
return 0;
|
||||
@@ -382,7 +382,7 @@ class ReceiverButton: public TextButton {
|
||||
memclear(&reusableBuffer.moduleSetup.pxx2, sizeof(reusableBuffer.moduleSetup.pxx2));
|
||||
reusableBuffer.moduleSetup.pxx2.resetReceiverIndex = receiverIdx;
|
||||
reusableBuffer.moduleSetup.pxx2.resetReceiverFlags = 0x01;
|
||||
new ConfirmDialog(STR_RECEIVER, STR_RECEIVER_DELETE, [=]() {
|
||||
new ConfirmDialog(parent, STR_RECEIVER, STR_RECEIVER_DELETE, [=]() {
|
||||
moduleState[moduleIdx].mode = MODULE_MODE_RESET;
|
||||
removePXX2Receiver(moduleIdx, receiverIdx);
|
||||
});
|
||||
@@ -392,7 +392,7 @@ class ReceiverButton: public TextButton {
|
||||
memclear(&reusableBuffer.moduleSetup.pxx2, sizeof(reusableBuffer.moduleSetup.pxx2));
|
||||
reusableBuffer.moduleSetup.pxx2.resetReceiverIndex = receiverIdx;
|
||||
reusableBuffer.moduleSetup.pxx2.resetReceiverFlags = 0xFF;
|
||||
new ConfirmDialog(STR_RECEIVER, STR_RECEIVER_DELETE, [=]() {
|
||||
new ConfirmDialog(parent, STR_RECEIVER, STR_RECEIVER_DELETE, [=]() {
|
||||
moduleState[moduleIdx].mode = MODULE_MODE_RESET;
|
||||
removePXX2Receiver(moduleIdx, receiverIdx);
|
||||
});
|
||||
@@ -425,7 +425,7 @@ class ReceiverButton: public TextButton {
|
||||
moduleState[moduleIdx].startBind(&reusableBuffer.moduleSetup.bindInformation);
|
||||
}
|
||||
|
||||
new BindWaitDialog(moduleIdx, receiverIdx);
|
||||
new BindWaitDialog(parent, moduleIdx, receiverIdx);
|
||||
}
|
||||
|
||||
void checkEvents() override
|
||||
@@ -762,7 +762,7 @@ class ModuleWindow : public FormGroup {
|
||||
new StaticText(this, grid.getLabelSlot(true), STR_MODULE);
|
||||
registerButton = new TextButton(this, grid.getFieldSlot(2, 0), STR_REGISTER);
|
||||
registerButton->setPressHandler([=]() -> uint8_t {
|
||||
new RegisterDialog(moduleIdx);
|
||||
new RegisterDialog(this, moduleIdx);
|
||||
return 0;
|
||||
});
|
||||
|
||||
|
||||
@@ -440,7 +440,7 @@ void ModelTelemetryPage::build(FormWindow * window, int8_t focusSensorIndex)
|
||||
Button * button = new SensorButton(window, grid.getFieldSlot(), idx, ++count);
|
||||
button->setPressHandler([=]() -> uint8_t {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editSensor(window, idx);
|
||||
});
|
||||
|
||||
@@ -96,10 +96,8 @@ void Page::onEvent(event_t event)
|
||||
#if defined(HARDWARE_TOUCH)
|
||||
bool Page::onTouchEnd(coord_t x, coord_t y)
|
||||
{
|
||||
if (Window::onTouchEnd(x, y))
|
||||
return true;
|
||||
|
||||
Keyboard::hide();
|
||||
Window::onTouchEnd(x, y);
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -77,7 +77,7 @@ class RadioKeyDiagsWindow : public Window
|
||||
#endif
|
||||
|
||||
// SWITCHES
|
||||
for (uint8_t i = 0; i <= NUM_SWITCHES; i++) {
|
||||
for (uint8_t i = 0; i < NUM_SWITCHES; i++) {
|
||||
if (SWITCH_EXISTS(i)) {
|
||||
coord_t y = 1 + FH * i;
|
||||
getvalue_t val = getValue(MIXSRC_FIRST_SWITCH + i);
|
||||
@@ -86,16 +86,16 @@ class RadioKeyDiagsWindow : public Window
|
||||
}
|
||||
}
|
||||
|
||||
//TRIMS
|
||||
for (uint8_t i = 0; i < NUM_TRIMS_KEYS; i++) {
|
||||
const uint8_t trimMap[NUM_TRIMS_KEYS] = {6, 7, 4, 5, 2, 3, 0, 1, 8, 9, 10, 11};
|
||||
coord_t y = 1 + FH + FH * (i / 2);
|
||||
if (i & 1) {
|
||||
dc->drawText(TRIM_COLUMN, y, "T", 0);
|
||||
dc->drawNumber(TRIM_COLUMN + 10, y, i / 2 + 1, 0);
|
||||
}
|
||||
displayKeyState(dc, i & 1 ? TRIM_PLUS_COLUMN : TRIM_MINUS_COLUMN, y, TRM_BASE + trimMap[i]);
|
||||
}
|
||||
// TRIMS
|
||||
// for (uint8_t i = 0; i < NUM_TRIMS_KEYS; i++) {
|
||||
// const uint8_t trimMap[NUM_TRIMS_KEYS] = {6, 7, 4, 5, 2, 3, 0, 1, 8, 9, 10, 11};
|
||||
// coord_t y = 1 + FH + FH * (i / 2);
|
||||
// if (i & 1) {
|
||||
// dc->drawText(TRIM_COLUMN, y, "T", 0);
|
||||
// dc->drawNumber(TRIM_COLUMN + 10, y, i / 2 + 1, 0);
|
||||
// }
|
||||
// displayKeyState(dc, i & 1 ? TRIM_PLUS_COLUMN : TRIM_MINUS_COLUMN, y, TRM_BASE + trimMap[i]);
|
||||
// }
|
||||
};
|
||||
|
||||
protected:
|
||||
|
||||
@@ -159,7 +159,7 @@ void RadioSdManagerPage::build(FormWindow * window)
|
||||
|
||||
for (auto name: files) {
|
||||
auto button = new TextButton(window, grid.getLabelSlot(), name, [=]() -> uint8_t {
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(window);
|
||||
const char *ext = getFileExtension(name.data());
|
||||
if (ext) {
|
||||
if (!strcasecmp(ext, SOUNDS_EXT)) {
|
||||
|
||||
@@ -260,7 +260,7 @@ void RadioSpectrumAnalyser::start()
|
||||
|
||||
void RadioSpectrumAnalyser::stop()
|
||||
{
|
||||
new MessageDialog(STR_MODULE, STR_STOPPING);
|
||||
new MessageDialog(this, STR_MODULE, STR_STOPPING);
|
||||
if (isModulePXX2(moduleIdx)) {
|
||||
moduleState[moduleIdx].readModuleInformation(&reusableBuffer.moduleSetup.pxx2.moduleInformation, PXX2_HW_INFO_TX_ID, PXX2_HW_INFO_TX_ID);
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ class LayoutChoice: public FormField {
|
||||
|
||||
void openMenu()
|
||||
{
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(parent);
|
||||
|
||||
for (auto layout: getRegisteredLayouts()) {
|
||||
menu->addCustomLine([=](BitmapBuffer * dc, coord_t x, coord_t y, LcdFlags flags) {
|
||||
|
||||
@@ -103,7 +103,7 @@ void SourceChoice::fillMenu(Menu * menu, std::function<bool(int16_t)> filter)
|
||||
|
||||
void SourceChoice::openMenu()
|
||||
{
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(this);
|
||||
fillMenu(menu);
|
||||
menu->setToolbar(new SourceChoiceMenuToolbar(this, menu));
|
||||
menu->setCloseHandler([=]() {
|
||||
|
||||
@@ -438,7 +438,7 @@ void SpecialFunctionsPage::build(FormWindow * window, int8_t focusIndex)
|
||||
auto button = new SpecialFunctionButton(window, grid.getFieldSlot(), functions, i);
|
||||
button->setPressHandler([=]() {
|
||||
button->bringToTop();
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(window);
|
||||
menu->addLine(STR_EDIT, [=]() {
|
||||
editSpecialFunction(window, i);
|
||||
});
|
||||
|
||||
@@ -87,8 +87,9 @@ void SwitchChoice::fillMenu(Menu * menu, std::function<bool(int16_t)> filter)
|
||||
|
||||
void SwitchChoice::openMenu()
|
||||
{
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(this);
|
||||
fillMenu(menu);
|
||||
|
||||
menu->setToolbar(new SwitchChoiceMenuToolbar(this, menu));
|
||||
menu->setCloseHandler([=]() {
|
||||
editMode = false;
|
||||
|
||||
@@ -187,10 +187,8 @@ void TabsGroup::paint(BitmapBuffer * dc)
|
||||
#if defined(HARDWARE_TOUCH)
|
||||
bool TabsGroup::onTouchEnd(coord_t x, coord_t y)
|
||||
{
|
||||
if (Window::onTouchEnd(x, y))
|
||||
return true;
|
||||
|
||||
Keyboard::hide();
|
||||
Window::onTouchEnd(x, y);
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -362,7 +362,7 @@ class FlyskyTheme: public ThemeBase
|
||||
dc->drawSolidFilledRect(0, MENU_TITLE_TOP, LCD_W, MENU_TITLE_HEIGHT, TITLE_BGCOLOR); // the title line background
|
||||
//
|
||||
if (title) {
|
||||
dc->drawText(MENUS_MARGIN_LEFT, MENU_TITLE_TOP, title, MENU_COLOR);
|
||||
dc->drawText(MENUS_MARGIN_LEFT, MENU_TITLE_TOP + 2, title, MENU_COLOR);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -198,7 +198,7 @@ void ViewMain::onEvent(event_t event)
|
||||
|
||||
void ViewMain::openMenu()
|
||||
{
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(this);
|
||||
menu->addLine(STR_MODEL_SELECT, [=]() {
|
||||
new ModelSelectMenu();
|
||||
});
|
||||
@@ -211,7 +211,7 @@ void ViewMain::openMenu()
|
||||
// new ChannelsMonitorMenu();
|
||||
});
|
||||
menu->addLine(STR_RESET_SUBMENU, [=]() {
|
||||
Menu * menu = new Menu();
|
||||
Menu * menu = new Menu(this);
|
||||
menu->addLine(STR_RESET_FLIGHT, [=]() {
|
||||
flightReset();
|
||||
});
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ uint8_t mainRequestFlags = 0;
|
||||
#if defined(LIBOPENUI)
|
||||
void openUsbMenu()
|
||||
{
|
||||
auto menu = new Menu();
|
||||
auto menu = new Menu(&mainWindow);
|
||||
menu->setTitle("USB");
|
||||
menu->addLine(STR_USB_JOYSTICK, [] {
|
||||
setSelectedUsbMode(USB_JOYSTICK_MODE);
|
||||
|
||||
+12
-8
@@ -252,12 +252,12 @@ long OpenTxSim::onKeypress(FXObject *, FXSelector, void * v)
|
||||
return 0;
|
||||
}
|
||||
|
||||
long OpenTxSim::onMouseDown(FXObject*,FXSelector,void*v)
|
||||
long OpenTxSim::onMouseDown(FXObject *, FXSelector, void * v)
|
||||
{
|
||||
FXEvent * evt = (FXEvent *)v;
|
||||
UNUSED(evt);
|
||||
|
||||
// TRACE("onMouseDown %d %d", evt->win_x, evt->win_y);
|
||||
TRACE_WINDOWS("[Mouse Press] %d %d", evt->win_x, evt->win_y);
|
||||
|
||||
#if defined(HARDWARE_TOUCH)
|
||||
touchState.event = TE_DOWN;
|
||||
@@ -273,7 +273,7 @@ long OpenTxSim::onMouseUp(FXObject*,FXSelector,void*v)
|
||||
FXEvent * evt = (FXEvent *)v;
|
||||
UNUSED(evt);
|
||||
|
||||
// TRACE("onMouseUp %d %d", evt->win_x, evt->win_y);
|
||||
TRACE_WINDOWS("[Mouse Release] %d %d", evt->win_x, evt->win_y);
|
||||
|
||||
#if defined(HARDWARE_TOUCH)
|
||||
if (touchState.event == TE_DOWN) {
|
||||
@@ -294,13 +294,17 @@ long OpenTxSim::onMouseMove(FXObject*,FXSelector,void*v)
|
||||
FXEvent * evt = (FXEvent *)v;
|
||||
UNUSED(evt);
|
||||
|
||||
if (evt->state & LEFTBUTTONMASK) {
|
||||
TRACE_WINDOWS("[Mouse Move] %d %d", evt->win_x, evt->win_y);
|
||||
|
||||
#if defined(HARDWARE_TOUCH)
|
||||
if (evt->state & LEFTBUTTONMASK && (touchState.event == TE_SLIDE || abs(evt->win_x - touchState.x) > 5 || abs(evt->win_y - touchState.y) > 5)) {
|
||||
touchState.event = TE_SLIDE;
|
||||
touchState.x = evt->win_x;
|
||||
touchState.y = evt->win_y;
|
||||
}
|
||||
if (touchState.event == TE_SLIDE || abs(evt->win_x - touchState.x) > 5 || abs(evt->win_y - touchState.y) > 5) {
|
||||
touchState.event = TE_SLIDE;
|
||||
touchState.x = evt->win_x;
|
||||
touchState.y = evt->win_y;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ constexpr uint32_t FH = PAGE_LINE_HEIGHT;
|
||||
constexpr uint32_t NUM_BODY_LINES = MENU_BODY_HEIGHT / PAGE_LINE_HEIGHT;
|
||||
|
||||
constexpr uint32_t FIELD_PADDING_LEFT = 3;
|
||||
constexpr uint32_t FIELD_PADDING_TOP = 3;
|
||||
constexpr uint32_t FIELD_PADDING_TOP = 4;
|
||||
|
||||
constexpr uint32_t CURVE_SIDE_WIDTH = 100;
|
||||
constexpr uint32_t CURVE_CENTER_X = LCD_W - CURVE_SIDE_WIDTH - 7;
|
||||
@@ -70,7 +70,6 @@ constexpr uint32_t DATETIME_MIDDLE = (LCD_W + DATETIME_SEPARATOR_X
|
||||
|
||||
constexpr uint32_t MENUS_TOOLBAR_BUTTON_WIDTH = 50;
|
||||
constexpr uint32_t MENUS_TOOLBAR_BUTTON_PADDING = 11;
|
||||
constexpr rect_t MENUS_TOOLBAR_RECT = { 35, 95, 50, 370 };
|
||||
|
||||
constexpr uint32_t ALERT_FRAME_TOP = 70;
|
||||
constexpr uint32_t ALERT_FRAME_HEIGHT = (LCD_H - 2 * ALERT_FRAME_TOP);
|
||||
@@ -155,7 +154,10 @@ constexpr coord_t MENUS_WIDTH = 200;
|
||||
constexpr coord_t MENUS_OFFSET_TOP = 20;
|
||||
constexpr coord_t POPUP_HEADER_HEIGHT = 40;
|
||||
constexpr coord_t MENUS_MIN_HEIGHT = 2 * MENUS_LINE_HEIGHT - 1;
|
||||
constexpr coord_t MENUS_MAX_HEIGHT = 7 * MENUS_LINE_HEIGHT - 1;
|
||||
constexpr coord_t MENUS_MAX_HEIGHT = 8 * MENUS_LINE_HEIGHT - 1;
|
||||
|
||||
constexpr rect_t MENUS_TOOLBAR_RECT = { 35, (LCD_H - MENUS_MAX_HEIGHT) / 2, 50, MENUS_MAX_HEIGHT };
|
||||
|
||||
constexpr coord_t MODEL_SELECT_FOOTER_HEIGHT = 24;
|
||||
constexpr coord_t SCROLLBAR_WIDTH = 3;
|
||||
constexpr coord_t TABLE_LINE_HEIGHT = 50;
|
||||
|
||||
Vendored
+1
-1
Submodule radio/src/thirdparty/libopenui updated: f0daca33c4...349d5ba274
Reference in New Issue
Block a user