mirror of
https://github.com/iNavFlight/inav-configurator.git
synced 2025-07-16 21:05:28 +03:00
Fix some minor issues on mixer tab
This commit is contained in:
parent
cf696de656
commit
4ebb8fb3ff
3 changed files with 22 additions and 3 deletions
|
@ -53,7 +53,7 @@ let OutputMappingCollection = function () {
|
||||||
self.getOutputTable = function (isMR, motors, servos) {
|
self.getOutputTable = function (isMR, motors, servos) {
|
||||||
let currentMotorIndex = 1,
|
let currentMotorIndex = 1,
|
||||||
currentServoIndex = 0,
|
currentServoIndex = 0,
|
||||||
timerMap = getTimerMap(isMR, motors, servos),
|
timerMap = getTimerMap(isMR, motors, servos.length),
|
||||||
outputMap = [],
|
outputMap = [],
|
||||||
offset = getFirstOutputOffset();
|
offset = getFirstOutputOffset();
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ let OutputMappingCollection = function () {
|
||||||
outputMap[i] = "Motor " + currentMotorIndex;
|
outputMap[i] = "Motor " + currentMotorIndex;
|
||||||
currentMotorIndex++;
|
currentMotorIndex++;
|
||||||
} else if (assignment == OUTPUT_TYPE_SERVO) {
|
} else if (assignment == OUTPUT_TYPE_SERVO) {
|
||||||
outputMap[i] = "Servo " + currentServoIndex;
|
outputMap[i] = "Servo " + servos[currentServoIndex];
|
||||||
currentServoIndex++;
|
currentServoIndex++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -82,5 +82,20 @@ let ServoMixerRuleCollection = function () {
|
||||||
return count;
|
return count;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
self.getUsedServoIndexes = function () {
|
||||||
|
let out = [];
|
||||||
|
|
||||||
|
for (let ruleIndex in data) {
|
||||||
|
if (data.hasOwnProperty(ruleIndex)) {
|
||||||
|
let rule = data[ruleIndex];
|
||||||
|
out.push(rule.getTarget());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return jQuery.unique(out).sort(function(a, b){
|
||||||
|
return a-b;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
return self;
|
return self;
|
||||||
};
|
};
|
|
@ -78,7 +78,7 @@ TABS.mixer.initialize = function (callback, scrollPosition) {
|
||||||
let outputMap = OUTPUT_MAPPING.getOutputTable(
|
let outputMap = OUTPUT_MAPPING.getOutputTable(
|
||||||
MIXER_CONFIG.platformType == PLATFORM_MULTIROTOR || MIXER_CONFIG.platformType == PLATFORM_TRICOPTER,
|
MIXER_CONFIG.platformType == PLATFORM_MULTIROTOR || MIXER_CONFIG.platformType == PLATFORM_TRICOPTER,
|
||||||
MOTOR_RULES.getNumberOfConfiguredMotors(),
|
MOTOR_RULES.getNumberOfConfiguredMotors(),
|
||||||
SERVO_RULES.getNumberOfConfiguredServos()
|
SERVO_RULES.getUsedServoIndexes()
|
||||||
);
|
);
|
||||||
|
|
||||||
for (let i = 1; i <= OUTPUT_MAPPING.getOutputCount(); i++) {
|
for (let i = 1; i <= OUTPUT_MAPPING.getOutputCount(); i++) {
|
||||||
|
@ -334,6 +334,10 @@ TABS.mixer.initialize = function (callback, scrollPosition) {
|
||||||
renderOutputMapping();
|
renderOutputMapping();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$servoMixTableBody.on('change', "input", function (event) {
|
||||||
|
renderOutputMapping();
|
||||||
|
});
|
||||||
|
|
||||||
$("[data-role='role-servo-add']").click(function () {
|
$("[data-role='role-servo-add']").click(function () {
|
||||||
if (SERVO_RULES.hasFreeSlots()) {
|
if (SERVO_RULES.hasFreeSlots()) {
|
||||||
SERVO_RULES.put(new ServoMixRule(0, 0, 100, 0));
|
SERVO_RULES.put(new ServoMixRule(0, 0, 100, 0));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue