mirror of
https://github.com/opentx/opentx.git
synced 2025-07-25 01:05:10 +03:00
Add copy min/max to outputs (#7396)
* Add copy min/max to outputs * Also copy ppm center
This commit is contained in:
parent
c2e5e4f566
commit
18b5fbf33e
18 changed files with 45 additions and 0 deletions
|
@ -215,6 +215,9 @@ void onLimitsMenu(const char *result)
|
||||||
else if (result == STR_EDIT) {
|
else if (result == STR_EDIT) {
|
||||||
pushMenu(menuModelLimitsOne);
|
pushMenu(menuModelLimitsOne);
|
||||||
}
|
}
|
||||||
|
else if (result == STR_COPY_MIN_MAX_TO_OUTPUTS) {
|
||||||
|
copyMinMaxToOutputs(s_currIdx);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void menuModelLimits(event_t event)
|
void menuModelLimits(event_t event)
|
||||||
|
@ -240,6 +243,7 @@ void menuModelLimits(event_t event)
|
||||||
POPUP_MENU_ADD_ITEM(STR_RESET);
|
POPUP_MENU_ADD_ITEM(STR_RESET);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
||||||
|
POPUP_MENU_ADD_ITEM(STR_COPY_MIN_MAX_TO_OUTPUTS);
|
||||||
POPUP_MENU_START(onLimitsMenu);
|
POPUP_MENU_START(onLimitsMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -86,6 +86,9 @@ void onLimitsMenu(const char *result)
|
||||||
copyTrimsToOffset(ch);
|
copyTrimsToOffset(ch);
|
||||||
storageDirty(EE_MODEL);
|
storageDirty(EE_MODEL);
|
||||||
}
|
}
|
||||||
|
else if (result == STR_COPY_MIN_MAX_TO_OUTPUTS) {
|
||||||
|
copyMinMaxToOutputs(ch);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void menuModelLimits(event_t event)
|
void menuModelLimits(event_t event)
|
||||||
|
@ -142,6 +145,7 @@ void menuModelLimits(event_t event)
|
||||||
POPUP_MENU_ADD_ITEM(STR_RESET);
|
POPUP_MENU_ADD_ITEM(STR_RESET);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
||||||
|
POPUP_MENU_ADD_ITEM(STR_COPY_MIN_MAX_TO_OUTPUTS);
|
||||||
POPUP_MENU_START(onLimitsMenu);
|
POPUP_MENU_START(onLimitsMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -80,6 +80,9 @@ void onLimitsMenu(const char *result)
|
||||||
copyTrimsToOffset(ch);
|
copyTrimsToOffset(ch);
|
||||||
storageDirty(EE_MODEL);
|
storageDirty(EE_MODEL);
|
||||||
}
|
}
|
||||||
|
else if (result == STR_COPY_MIN_MAX_TO_OUTPUTS) {
|
||||||
|
copyMinMaxToOutputs(ch);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool menuModelLimits(event_t event)
|
bool menuModelLimits(event_t event)
|
||||||
|
@ -133,6 +136,7 @@ bool menuModelLimits(event_t event)
|
||||||
POPUP_MENU_ADD_ITEM(STR_RESET);
|
POPUP_MENU_ADD_ITEM(STR_RESET);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_TRIMS_TO_OFS);
|
||||||
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
POPUP_MENU_ADD_ITEM(STR_COPY_STICKS_TO_OFS);
|
||||||
|
POPUP_MENU_ADD_ITEM(STR_COPY_MIN_MAX_TO_OUTPUTS);
|
||||||
POPUP_MENU_START(onLimitsMenu);
|
POPUP_MENU_START(onLimitsMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1725,6 +1725,25 @@ void copyTrimsToOffset(uint8_t ch)
|
||||||
storageDirty(EE_MODEL);
|
storageDirty(EE_MODEL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void copyMinMaxToOutputs(uint8_t ch)
|
||||||
|
{
|
||||||
|
LimitData *ld = limitAddress(ch);
|
||||||
|
int16_t min = ld->min;
|
||||||
|
int16_t max = ld->max;
|
||||||
|
int16_t center = ld->ppmCenter;
|
||||||
|
|
||||||
|
pauseMixerCalculations();
|
||||||
|
|
||||||
|
for (uint8_t chan = 0; chan < MAX_OUTPUT_CHANNELS; chan++) {
|
||||||
|
ld = limitAddress(chan);
|
||||||
|
ld->min = min;
|
||||||
|
ld->max = max;
|
||||||
|
ld->ppmCenter = center;
|
||||||
|
}
|
||||||
|
|
||||||
|
resumeMixerCalculations();
|
||||||
|
storageDirty(EE_MODEL);
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(STARTUP_ANIMATION)
|
#if defined(STARTUP_ANIMATION)
|
||||||
|
|
||||||
|
|
|
@ -867,6 +867,7 @@ void instantTrim();
|
||||||
void evalTrims();
|
void evalTrims();
|
||||||
void copyTrimsToOffset(uint8_t ch);
|
void copyTrimsToOffset(uint8_t ch);
|
||||||
void copySticksToOffset(uint8_t ch);
|
void copySticksToOffset(uint8_t ch);
|
||||||
|
void copyMinMaxToOutputs(uint8_t ch);
|
||||||
void moveTrimsToOffsets();
|
void moveTrimsToOffsets();
|
||||||
|
|
||||||
typedef uint16_t ACTIVE_PHASES_TYPE;
|
typedef uint16_t ACTIVE_PHASES_TYPE;
|
||||||
|
|
|
@ -536,6 +536,7 @@ const char STR_PT[] = TR_PT;
|
||||||
const char STR_PTS[] = TR_PTS;
|
const char STR_PTS[] = TR_PTS;
|
||||||
const char STR_SMOOTH[] = TR_SMOOTH;
|
const char STR_SMOOTH[] = TR_SMOOTH;
|
||||||
const char STR_COPY_STICKS_TO_OFS[] = TR_COPY_STICKS_TO_OFS;
|
const char STR_COPY_STICKS_TO_OFS[] = TR_COPY_STICKS_TO_OFS;
|
||||||
|
const char STR_COPY_MIN_MAX_TO_OUTPUTS[] = TR_COPY_MIN_MAX_TO_OUTPUTS;
|
||||||
const char STR_COPY_TRIMS_TO_OFS[] = TR_COPY_TRIMS_TO_OFS;
|
const char STR_COPY_TRIMS_TO_OFS[] = TR_COPY_TRIMS_TO_OFS;
|
||||||
const char STR_INCDEC[] = TR_INCDEC;
|
const char STR_INCDEC[] = TR_INCDEC;
|
||||||
const char STR_GLOBALVAR[] = TR_GLOBALVAR;
|
const char STR_GLOBALVAR[] = TR_GLOBALVAR;
|
||||||
|
|
|
@ -821,6 +821,7 @@ extern const char STR_PT[];
|
||||||
extern const char STR_PTS[];
|
extern const char STR_PTS[];
|
||||||
extern const char STR_SMOOTH[];
|
extern const char STR_SMOOTH[];
|
||||||
extern const char STR_COPY_STICKS_TO_OFS[];
|
extern const char STR_COPY_STICKS_TO_OFS[];
|
||||||
|
extern const char STR_COPY_MIN_MAX_TO_OUTPUTS[];
|
||||||
extern const char STR_COPY_TRIMS_TO_OFS[];
|
extern const char STR_COPY_TRIMS_TO_OFS[];
|
||||||
extern const char STR_INCDEC[];
|
extern const char STR_INCDEC[];
|
||||||
extern const char STR_GLOBALVAR[];
|
extern const char STR_GLOBALVAR[];
|
||||||
|
|
|
@ -962,6 +962,7 @@
|
||||||
#define TR_PTS " b."
|
#define TR_PTS " b."
|
||||||
#define TR_SMOOTH "Hladká"
|
#define TR_SMOOTH "Hladká"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Páky do subtrimu", "Kopie pák do subtrimu")
|
#define TR_COPY_STICKS_TO_OFS TR("Páky do subtrimu", "Kopie pák do subtrimu")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Trimy do subtrimu", "Kopíe trimů do subtrimu")
|
#define TR_COPY_TRIMS_TO_OFS TR("Trimy do subtrimu", "Kopíe trimů do subtrimu")
|
||||||
#define TR_INCDEC "Zvěšit/Zmenšit"
|
#define TR_INCDEC "Zvěšit/Zmenšit"
|
||||||
#define TR_GLOBALVAR "Glob. proměnná"
|
#define TR_GLOBALVAR "Glob. proměnná"
|
||||||
|
|
|
@ -968,6 +968,7 @@
|
||||||
#define TR_PTS "Pts"
|
#define TR_PTS "Pts"
|
||||||
#define TR_SMOOTH "Runden"
|
#define TR_SMOOTH "Runden"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Copy Stk ->Subtrim", "Kopie Stick to Servo-Mitte")
|
#define TR_COPY_STICKS_TO_OFS TR("Copy Stk ->Subtrim", "Kopie Stick to Servo-Mitte")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Copy Trim->Subtrim", "Kopie Trimm to Servo-Mitte") // "Trim to Subtrim"
|
#define TR_COPY_TRIMS_TO_OFS TR("Copy Trim->Subtrim", "Kopie Trimm to Servo-Mitte") // "Trim to Subtrim"
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Global Var"
|
#define TR_GLOBALVAR "Global Var"
|
||||||
|
|
|
@ -967,6 +967,7 @@
|
||||||
#define TR_PTS "pts"
|
#define TR_PTS "pts"
|
||||||
#define TR_SMOOTH "Smooth"
|
#define TR_SMOOTH "Smooth"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy sticks to subtrim")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy sticks to subtrim")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Global var"
|
#define TR_GLOBALVAR "Global var"
|
||||||
|
|
|
@ -987,6 +987,7 @@
|
||||||
#define TR_PTS "pts"
|
#define TR_PTS "pts"
|
||||||
#define TR_SMOOTH "Smooth"
|
#define TR_SMOOTH "Smooth"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Global Var"
|
#define TR_GLOBALVAR "Global Var"
|
||||||
|
|
|
@ -981,6 +981,7 @@
|
||||||
#define TR_PTS "pts"
|
#define TR_PTS "pts"
|
||||||
#define TR_SMOOTH "Smooth"
|
#define TR_SMOOTH "Smooth"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Global Var"
|
#define TR_GLOBALVAR "Global Var"
|
||||||
|
|
|
@ -983,6 +983,7 @@
|
||||||
#define TR_PTS "pts"
|
#define TR_PTS "pts"
|
||||||
#define TR_SMOOTH "Lissage"
|
#define TR_SMOOTH "Lissage"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Manche vers subtrim")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Manche vers subtrim")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Trim vers subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Trim vers subtrim")
|
||||||
#define TR_INCDEC "Inc/décrementer"
|
#define TR_INCDEC "Inc/décrementer"
|
||||||
#define TR_GLOBALVAR "Var. globale"
|
#define TR_GLOBALVAR "Var. globale"
|
||||||
|
|
|
@ -983,6 +983,7 @@
|
||||||
#define TR_PTS "pti"
|
#define TR_PTS "pti"
|
||||||
#define TR_SMOOTH "Smussa"
|
#define TR_SMOOTH "Smussa"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR(INDENT "Cp. stick->subtrim", INDENT "Copia Sticks su Subtrim")
|
#define TR_COPY_STICKS_TO_OFS TR(INDENT "Cp. stick->subtrim", INDENT "Copia Sticks su Subtrim")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR(INDENT "Cp. trim->subtrim", INDENT "Copia Trims su Subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR(INDENT "Cp. trim->subtrim", INDENT "Copia Trims su Subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrementa"
|
#define TR_INCDEC "Inc/Decrementa"
|
||||||
#define TR_GLOBALVAR "Var Globale"
|
#define TR_GLOBALVAR "Var Globale"
|
||||||
|
|
|
@ -969,6 +969,7 @@
|
||||||
#define TR_PTS "Ptn"
|
#define TR_PTS "Ptn"
|
||||||
#define TR_SMOOTH "Zacht"
|
#define TR_SMOOTH "Zacht"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Kopieer Sticks naar Subtrim")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Kopieer Sticks naar Subtrim")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Kopieer Trim naar Subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Kopieer Trim naar Subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Globale Var"
|
#define TR_GLOBALVAR "Globale Var"
|
||||||
|
|
|
@ -982,6 +982,7 @@
|
||||||
#define TR_PTS "pkty"
|
#define TR_PTS "pkty"
|
||||||
#define TR_SMOOTH "Gładka"
|
#define TR_SMOOTH "Gładka"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Skopiuj Drążki Do Offsetu")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Skopiuj Drążki Do Offsetu")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Skopiuj Trymery Do subtrymerów")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Skopiuj Trymery Do subtrymerów")
|
||||||
#define TR_INCDEC "Zwiększ/Zmnie"
|
#define TR_INCDEC "Zwiększ/Zmnie"
|
||||||
#define TR_GLOBALVAR "Zm.Global."
|
#define TR_GLOBALVAR "Zm.Global."
|
||||||
|
|
|
@ -972,6 +972,7 @@
|
||||||
#define TR_PTS "pts"
|
#define TR_PTS "pts"
|
||||||
#define TR_SMOOTH "Smooth"
|
#define TR_SMOOTH "Smooth"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Copy Sticks To Offset")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Copy trims to subtrim")
|
||||||
#define TR_INCDEC "Inc/Decrement"
|
#define TR_INCDEC "Inc/Decrement"
|
||||||
#define TR_GLOBALVAR "Global Var"
|
#define TR_GLOBALVAR "Global Var"
|
||||||
|
|
|
@ -982,6 +982,7 @@
|
||||||
#define TR_PTS "pkt"
|
#define TR_PTS "pkt"
|
||||||
#define TR_SMOOTH "Mjuk"
|
#define TR_SMOOTH "Mjuk"
|
||||||
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Spara spakar som subtrim")
|
#define TR_COPY_STICKS_TO_OFS TR("Cpy stick->subtrim", "Spara spakar som subtrim")
|
||||||
|
#define TR_COPY_MIN_MAX_TO_OUTPUTS TR("Cpy min/max to all", "Copy min/max/center to all outputs")
|
||||||
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Spara trimmar som subtrim")
|
#define TR_COPY_TRIMS_TO_OFS TR("Cpy trim->subtrim", "Spara trimmar som subtrim")
|
||||||
#define TR_INCDEC "Inkr/Dekrement"
|
#define TR_INCDEC "Inkr/Dekrement"
|
||||||
#define TR_GLOBALVAR "Globala Var"
|
#define TR_GLOBALVAR "Globala Var"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue