mirror of
https://github.com/opentx/opentx.git
synced 2025-07-24 16:55:20 +03:00
Only display RegId in model is different from owner id
This commit is contained in:
parent
269365fd75
commit
f83ed1b355
21 changed files with 60 additions and 42 deletions
|
@ -788,7 +788,7 @@ enum BluetoothModes {
|
|||
|
||||
// PXX2 constants
|
||||
#define PXX2_LEN_REGISTRATION_ID 8
|
||||
#define PXX2_LEN_RX_ID 8
|
||||
#define PXX2_LEN_RX_NAME 8
|
||||
#define PXX2_MAX_RECEIVERS_PER_MODULE 5
|
||||
|
||||
#endif // _DATACONSTANTS_H_
|
||||
|
|
|
@ -419,7 +419,7 @@ PACK(struct ReceiverData {
|
|||
uint8_t telemetry:1;
|
||||
uint8_t spare:6;
|
||||
uint64_t channelMapping; // each receiver output (16) can be assigned to one of the 16 channels
|
||||
char rxID[PXX2_LEN_RX_ID];
|
||||
char rxName[PXX2_LEN_RX_NAME];
|
||||
});
|
||||
|
||||
/*
|
||||
|
@ -798,7 +798,7 @@ PACK(struct RadioData {
|
|||
|
||||
THEME_DATA
|
||||
|
||||
uint8_t ownerRegistrationID[PXX2_LEN_REGISTRATION_ID];
|
||||
char ownerRegistrationID[PXX2_LEN_REGISTRATION_ID];
|
||||
});
|
||||
|
||||
#undef SWITCHES_WARNING_DATA
|
||||
|
|
|
@ -237,7 +237,7 @@ enum MenuModelSetupItems {
|
|||
void onPXX2BindMenu(const char * result)
|
||||
{
|
||||
reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index = (result - reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_names[0]) / sizeof(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_names[0]);
|
||||
reusableBuffer.modelsetup.pxx2_bind_step = BIND_RX_ID_SELECTED;
|
||||
reusableBuffer.modelsetup.pxx2_bind_step = BIND_RX_NAME_SELECTED;
|
||||
}
|
||||
|
||||
void onBindMenu(const char * result)
|
||||
|
@ -303,13 +303,13 @@ void menuModelSetup(event_t event)
|
|||
|
||||
NUM_STICKS + NUM_POTS + NUM_SLIDERS + NUM_ROTARY_ENCODERS - 1, // Center beeps
|
||||
0, // Global functions
|
||||
IF_PXX2(PXX2_LEN_REGISTRATION_ID - 1), // Registration ID
|
||||
IF_PXX2(memcmp(g_model.modelRegistrationID, g_eeGeneral.ownerRegistrationID, PXX2_LEN_REGISTRATION_ID ) ? (uint8_t)-1: HIDDEN_ROW), // Registration ID
|
||||
|
||||
LABEL(InternalModule),
|
||||
INTERNAL_MODULE_MODE_ROWS, // module mode (PXX(2) / None)
|
||||
INTERNAL_MODULE_CHANNELS_ROWS, // Channels min and count
|
||||
IF_NOT_PXX2(IF_INTERNAL_MODULE_ON(HAS_RF_PROTOCOL_MODELINDEX(g_model.moduleData[INTERNAL_MODULE].rfProtocol) ? (uint8_t)2 : (uint8_t)1)),
|
||||
IF_PXX2(0), // Model Number
|
||||
IF_PXX2(0), // Model Number
|
||||
ANTENNA_ROW
|
||||
IF_INTERNAL_MODULE_ON(FAILSAFE_ROWS(INTERNAL_MODULE)), // Module start channel (pxx2 always send 16)
|
||||
IF_PXX2_RECEIVER_DISPLAYED(INTERNAL_MODULE, 0, 1), // Range check and Register buttons
|
||||
|
@ -1106,8 +1106,8 @@ void menuModelSetup(event_t event)
|
|||
uint8_t receiverIdx = CURRENT_RECEIVER_EDITED(k);
|
||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||
|
||||
lcdDrawTextAlignedLeft(y, STR_REG_ID);
|
||||
lcdDrawSizedText(MODEL_SETUP_2ND_COLUMN, y, g_model.moduleData[moduleIdx].pxx2.receivers[receiverIdx].rxID, PXX2_LEN_RX_ID, 0);
|
||||
lcdDrawTextAlignedLeft(y, STR_RECEIVER);
|
||||
lcdDrawSizedText(MODEL_SETUP_2ND_COLUMN, y, g_model.moduleData[moduleIdx].pxx2.receivers[receiverIdx].rxName, PXX2_LEN_RX_NAME, 0);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -1141,7 +1141,7 @@ void menuModelSetup(event_t event)
|
|||
uint8_t receiverIdx = CURRENT_RECEIVER_EDITED(k);
|
||||
uint8_t moduleIdx = CURRENT_MODULE_EDITED(k);
|
||||
|
||||
lcdDrawSizedText(6, y, g_model.moduleData[moduleIdx].pxx2.receivers[receiverIdx].rxID, PXX2_LEN_RX_ID, 0);
|
||||
lcdDrawSizedText(6, y, g_model.moduleData[moduleIdx].pxx2.receivers[receiverIdx].rxName, PXX2_LEN_RX_NAME, 0);
|
||||
lcdDrawText(MODEL_SETUP_2ND_COLUMN, y, STR_MODULE_BIND, menuHorizontalPosition==0 ? attr : 0);
|
||||
lcdDrawText(MODEL_SETUP_2ND_COLUMN+MODEL_SETUP_RANGE_OFS, y, STR_DEL_BUTTON, menuHorizontalPosition==1 ? attr : 0);
|
||||
if (attr) {
|
||||
|
@ -1153,7 +1153,7 @@ void menuModelSetup(event_t event)
|
|||
}
|
||||
if (moduleSettings[INTERNAL_MODULE].mode == MODULE_MODE_BIND) {
|
||||
s_editMode = 1;
|
||||
if (reusableBuffer.modelsetup.pxx2_bind_step == BIND_RX_ID_RECEIVED) {
|
||||
if (reusableBuffer.modelsetup.pxx2_bind_step == BIND_RX_NAME_RECEIVED) {
|
||||
popupMenuItemsCount = min<uint8_t>(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count, PXX2_MAX_RECEIVERS_PER_MODULE);
|
||||
for (uint8_t i=0; i<popupMenuItemsCount; i++) {
|
||||
popupMenuItems[i] = reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_names[i];
|
||||
|
@ -1165,7 +1165,7 @@ void menuModelSetup(event_t event)
|
|||
s_editMode = 0;
|
||||
}
|
||||
if (reusableBuffer.modelsetup.pxx2_bind_step == BIND_OK) {
|
||||
memcpy(g_model.moduleData[INTERNAL_MODULE].pxx2.receivers[receiverIdx].rxID, reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index], PXX2_LEN_RX_ID);
|
||||
memcpy(g_model.moduleData[INTERNAL_MODULE].pxx2.receivers[receiverIdx].rxName, reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index], PXX2_LEN_RX_NAME);
|
||||
}
|
||||
}
|
||||
else if (menuHorizontalPosition == 1 && s_editMode > 0) {
|
||||
|
@ -1742,8 +1742,8 @@ void menuModelPinmap(event_t event)
|
|||
SIMPLE_SUBMENU_NOTITLE(sentModuleChannels(g_moduleIdx));
|
||||
|
||||
lcdDrawTextAlignedLeft(0, STR_PINMAPSET);
|
||||
for (uint8_t pos=0; pos<PXX2_LEN_RX_ID; pos++) {
|
||||
lcdDrawHexChar(50 + pos*FW*2, 0, g_model.moduleData[INTERNAL_MODULE].pxx2.receivers[g_receiverIdx].rxID[pos], 0);
|
||||
for (uint8_t pos=0; pos<PXX2_LEN_RX_NAME; pos++) {
|
||||
lcdDrawHexChar(50 + pos*FW*2, 0, g_model.moduleData[INTERNAL_MODULE].pxx2.receivers[g_receiverIdx].rxName[pos], 0);
|
||||
}
|
||||
lcdInvertLine(0);
|
||||
|
||||
|
|
|
@ -122,6 +122,7 @@ enum MenuRadioHardwareItems {
|
|||
ITEM_RADIO_HARDWARE_BLUETOOTH_NAME,
|
||||
#endif
|
||||
ITEM_RADIO_HARDWARE_JITTER_FILTER,
|
||||
ITEM_RADIO_OWNER_ID,
|
||||
ITEM_RADIO_HARDWARE_MAX
|
||||
};
|
||||
|
||||
|
@ -153,7 +154,7 @@ enum MenuRadioHardwareItems {
|
|||
|
||||
void menuRadioHardware(event_t event)
|
||||
{
|
||||
MENU(STR_HARDWARE, menuTabGeneral, MENU_RADIO_HARDWARE, HEADER_LINE+ITEM_RADIO_HARDWARE_MAX, { HEADER_LINE_COLUMNS LABEL(Sticks), 0, 0, 0, 0, LABEL(Pots), POTS_ROWS, LABEL(Switches), SWITCHES_ROWS, 0/*max bauds*/, BLUETOOTH_ROWS 0/*jitter filter*/ });
|
||||
MENU(STR_HARDWARE, menuTabGeneral, MENU_RADIO_HARDWARE, HEADER_LINE+ITEM_RADIO_HARDWARE_MAX, { HEADER_LINE_COLUMNS LABEL(Sticks), 0, 0, 0, 0, LABEL(Pots), POTS_ROWS, LABEL(Switches), SWITCHES_ROWS, 0/*max bauds*/, BLUETOOTH_ROWS 0/*jitter filter*/ , 0 /*owner id*/ });
|
||||
|
||||
uint8_t sub = menuVerticalPosition - HEADER_LINE;
|
||||
|
||||
|
@ -282,6 +283,10 @@ void menuRadioHardware(event_t event)
|
|||
case ITEM_RADIO_HARDWARE_JITTER_FILTER:
|
||||
g_eeGeneral.jitterFilter = 1 - editCheckBox(1 - g_eeGeneral.jitterFilter, HW_SETTINGS_COLUMN2, y, STR_JITTER_FILTER, attr, event);
|
||||
break;
|
||||
|
||||
case ITEM_RADIO_OWNER_ID:
|
||||
editSingleName(HW_SETTINGS_COLUMN2, y, STR_OWNER_ID, g_eeGeneral.ownerRegistrationID, PXX2_LEN_REGISTRATION_ID, event, attr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1122,9 +1122,9 @@ union ReusableBuffer
|
|||
uint8_t pxx2_bind_step;
|
||||
};
|
||||
uint32_t pxx2_bind_wait_timeout;
|
||||
uint8_t pxx2_register_rx_id[PXX2_LEN_RX_ID];
|
||||
char pxx2_bind_candidate_receivers_ids[PXX2_MAX_RECEIVERS_PER_MODULE][PXX2_LEN_RX_ID];
|
||||
char pxx2_bind_candidate_receivers_names[PXX2_MAX_RECEIVERS_PER_MODULE][3*PXX2_LEN_RX_ID+1];
|
||||
uint8_t pxx2_register_rx_id[PXX2_LEN_RX_NAME];
|
||||
char pxx2_bind_candidate_receivers_ids[PXX2_MAX_RECEIVERS_PER_MODULE][PXX2_LEN_RX_NAME];
|
||||
char pxx2_bind_candidate_receivers_names[PXX2_MAX_RECEIVERS_PER_MODULE][3*PXX2_LEN_RX_NAME+1];
|
||||
uint8_t pxx2_bind_candidate_receivers_count;
|
||||
uint8_t pxx2_bind_selected_receiver_index;
|
||||
} modelsetup;
|
||||
|
|
|
@ -60,7 +60,7 @@ bool Pxx2Pulses::setupRegisterFrame(uint8_t module)
|
|||
|
||||
if (reusableBuffer.modelsetup.pxx2_register_step == REGISTER_COUNTER_ID_RECEIVED) {
|
||||
Pxx2Transport::addByte(0x01);
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_ID; i++) {
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_NAME; i++) {
|
||||
Pxx2Transport::addByte(0x00);
|
||||
}
|
||||
for (uint8_t i=0; i<PXX2_LEN_REGISTRATION_ID; i++) {
|
||||
|
@ -87,9 +87,9 @@ bool Pxx2Pulses::setupBindFrame(uint8_t module)
|
|||
return false;
|
||||
}
|
||||
}
|
||||
else if (reusableBuffer.modelsetup.pxx2_bind_step == BIND_RX_ID_SELECTED) {
|
||||
else if (reusableBuffer.modelsetup.pxx2_bind_step == BIND_RX_NAME_SELECTED) {
|
||||
Pxx2Transport::addByte(0x01);
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_ID; i++) {
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_NAME; i++) {
|
||||
Pxx2Transport::addByte(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index][i]);
|
||||
}
|
||||
Pxx2Transport::addByte(g_model.header.modelId[INTERNAL_MODULE]);
|
||||
|
|
|
@ -49,8 +49,8 @@ enum PXX2RegisterSteps {
|
|||
|
||||
enum PXX2BindSteps {
|
||||
BIND_START,
|
||||
BIND_RX_ID_RECEIVED,
|
||||
BIND_RX_ID_SELECTED,
|
||||
BIND_RX_NAME_RECEIVED,
|
||||
BIND_RX_NAME_SELECTED,
|
||||
BIND_WAIT,
|
||||
BIND_OK
|
||||
};
|
||||
|
|
|
@ -78,13 +78,13 @@ void processRegisterFrame(uint8_t module, uint8_t * frame)
|
|||
}
|
||||
|
||||
if (frame[3] == 0x00) {
|
||||
// RX_ID follows, we store it for the next step
|
||||
memcpy(reusableBuffer.modelsetup.pxx2_register_rx_id, &frame[4], PXX2_LEN_RX_ID);
|
||||
// RX_NAME follows, we store it for the next step
|
||||
memcpy(reusableBuffer.modelsetup.pxx2_register_rx_id, &frame[4], PXX2_LEN_RX_NAME);
|
||||
reusableBuffer.modelsetup.pxx2_register_step = REGISTER_COUNTER_ID_RECEIVED;
|
||||
}
|
||||
else if (frame[3] == 0x01) {
|
||||
// RX_ID + PASSWORD follow, we check they are good
|
||||
if (memcmp(&frame[4], reusableBuffer.modelsetup.pxx2_register_rx_id, PXX2_LEN_RX_ID) == 0 &&
|
||||
// RX_NAME + PASSWORD follow, we check they are good
|
||||
if (memcmp(&frame[4], reusableBuffer.modelsetup.pxx2_register_rx_id, PXX2_LEN_RX_NAME) == 0 &&
|
||||
memcmp(&frame[12], g_model.modelRegistrationID, PXX2_LEN_REGISTRATION_ID) == 0) {
|
||||
reusableBuffer.modelsetup.pxx2_register_step = REGISTER_OK;
|
||||
moduleSettings[module].mode = MODULE_MODE_NORMAL;
|
||||
|
@ -102,15 +102,15 @@ void processBindFrame(uint8_t module, uint8_t * frame)
|
|||
if (frame[3] == 0x00) {
|
||||
bool found = false;
|
||||
for (uint8_t i=0; i<reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count; i++) {
|
||||
if (memcmp(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[i], &frame[4], PXX2_LEN_RX_ID) == 0) {
|
||||
if (memcmp(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[i], &frame[4], PXX2_LEN_RX_NAME) == 0) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!found && reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count < PXX2_MAX_RECEIVERS_PER_MODULE) {
|
||||
memcpy(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count], &frame[4], PXX2_LEN_RX_ID);
|
||||
memcpy(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count], &frame[4], PXX2_LEN_RX_NAME);
|
||||
char * c = reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_names[reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count];
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_ID; i++) {
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_NAME; i++) {
|
||||
uint8_t byte = frame[4 + i];
|
||||
uint8_t quartet = (byte >> 4);
|
||||
*c++ = (quartet >= 10 ? quartet + 'A' - 10 : quartet + '0');
|
||||
|
@ -120,11 +120,11 @@ void processBindFrame(uint8_t module, uint8_t * frame)
|
|||
}
|
||||
*c = '\0';
|
||||
++reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_count;
|
||||
reusableBuffer.modelsetup.pxx2_bind_step = BIND_RX_ID_RECEIVED;
|
||||
reusableBuffer.modelsetup.pxx2_bind_step = BIND_RX_NAME_RECEIVED;
|
||||
}
|
||||
}
|
||||
else if (frame[3] == 0x01) {
|
||||
if (memcmp(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index], &frame[4], PXX2_LEN_RX_ID) == 0) {
|
||||
if (memcmp(reusableBuffer.modelsetup.pxx2_bind_candidate_receivers_ids[reusableBuffer.modelsetup.pxx2_bind_selected_receiver_index], &frame[4], PXX2_LEN_RX_NAME) == 0) {
|
||||
reusableBuffer.modelsetup.pxx2_bind_step = BIND_WAIT;
|
||||
reusableBuffer.modelsetup.pxx2_bind_wait_timeout = get_tmr10ms() + 30;
|
||||
}
|
||||
|
|
|
@ -369,6 +369,7 @@ const char STR_JACKMODE[] = TR_JACKMODE;
|
|||
const char STR_FAILSAFE[] = TR_FAILSAFE;
|
||||
const char STR_FAILSAFESET[] = TR_FAILSAFESET;
|
||||
const char STR_REG_ID[] = TR_REG_ID;
|
||||
const char STR_OWNER_ID[] = TR_OWNER_ID;
|
||||
const char STR_PINMAPSET[] = TR_PINMAPSET;
|
||||
const char STR_HOLD[] = TR_HOLD;
|
||||
const char STR_NONE[] = TR_NONE;
|
||||
|
|
|
@ -583,6 +583,7 @@ extern const char STR_FAILSAFE[];
|
|||
extern const char STR_FAILSAFESET[];
|
||||
extern const char STR_RECEIVER[];
|
||||
extern const char STR_REG_ID[];
|
||||
extern const char STR_OWNER_ID[];
|
||||
extern const char STR_PINMAPSET[];
|
||||
extern const char STR_HOLD[];
|
||||
extern const char STR_NONE[];
|
||||
|
|
|
@ -921,7 +921,8 @@
|
|||
#define TR_EXTERNALRF "Externí RF modul"
|
||||
#define TR_FAILSAFE TR("Failsafe", "Mód Failsafe")
|
||||
#define TR_FAILSAFESET "NASTAVENÍ FAILSAFE"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -926,7 +926,8 @@
|
|||
#define TR_EXTERNALRF "Externes HF-Modul"
|
||||
#define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "Failsafe Mode")
|
||||
#define TR_FAILSAFESET "Failsafe setzen"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -925,7 +925,8 @@
|
|||
#define TR_EXTERNALRF "External RF"
|
||||
#define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "Failsafe mode")
|
||||
#define TR_FAILSAFESET "FAILSAFE SETTINGS"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -932,7 +932,8 @@
|
|||
#define TR_EXTERNALRF "Externa RF"
|
||||
#define TR_FAILSAFE INDENT"Modo sgdad."
|
||||
#define TR_FAILSAFESET "AJUSTES SGDAD."
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -924,7 +924,8 @@
|
|||
#define TR_EXTERNALRF "External RF"
|
||||
#define TR_FAILSAFE INDENT "Failsafe mode"
|
||||
#define TR_FAILSAFESET "FAILSAFE SETTINGS"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -936,7 +936,8 @@
|
|||
#define TR_EXTERNALRF "HF externe"
|
||||
#define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "Type failsafe")
|
||||
#define TR_FAILSAFESET "REGLAGES FAILSAFE"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -926,7 +926,8 @@
|
|||
#define TR_EXTERNALRF "Modulo esterno"
|
||||
#define TR_FAILSAFE "Modo failsafe"
|
||||
#define TR_FAILSAFESET TR("FAILSAFE","IMPOSTAZIONI FAILSAFE")
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -927,7 +927,8 @@
|
|||
#define TR_EXTERNALRF "Externe RF"
|
||||
#define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "Failsafe Modus")
|
||||
#define TR_FAILSAFESET "Failsafe instellen"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -927,7 +927,8 @@
|
|||
#define TR_EXTERNALRF "Zewn.Moduł RF"
|
||||
#define TR_FAILSAFE TR(INDENT"Failsafe",INDENT"Tryb Failsafe")
|
||||
#define TR_FAILSAFESET "USTAWIENIE FAILSAFE"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -931,7 +931,8 @@
|
|||
#define TR_EXTERNALRF "External RF"
|
||||
#define TR_FAILSAFE "Failsafe mode"
|
||||
#define TR_FAILSAFESET "FAILSAFE SETTINGS"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
|
@ -940,7 +940,8 @@
|
|||
#define TR_EXTERNALRF "Extern Radiomodul"
|
||||
#define TR_FAILSAFE TR(INDENT "Failsafe", INDENT "Failsafeläge")
|
||||
#define TR_FAILSAFESET "FailsafeInställning"
|
||||
#define TR_REG_ID INDENT "Reg. ID"
|
||||
#define TR_REG_ID TR("Reg. ID", "Registration ID")
|
||||
#define TR_OWNER_ID "Owner ID"
|
||||
#define TR_PINMAPSET "PINMAP"
|
||||
#define TR_HOLD "HOLD"
|
||||
#define TR_NONE "NONE"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue