1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-14 11:59:51 +03:00

another refactor for global variables, bugfixes for logging tab initialization in strict mode

This commit is contained in:
cTn 2014-08-12 15:51:31 +02:00 committed by Dominic Clifton
parent f3ea5757f7
commit b77ed6b174
15 changed files with 66 additions and 70 deletions

View file

@ -1,6 +1,6 @@
'use strict';
var tabs = {}; // filled by individual tab js file
var TABS = {}; // filled by individual tab js file
var GUI_control = function () {
this.auto_connect = false;

View file

@ -51,7 +51,7 @@ $(document).ready(function() {
$('#content').empty();
// load default html
tabs.default.initialize();
TABS.default.initialize();
}
$(this).data("clicks", !clicks);
@ -185,7 +185,7 @@ function read_serial(info) {
if (!CONFIGURATOR.cliActive && !CONFIGURATOR.mspPassThrough) {
MSP.read(info);
} else if (CONFIGURATOR.cliActive) {
tabs.cli.read(info);
TABS.cli.read(info);
} else if (CONFIGURATOR.mspPassThrough) {
MSP.read(info);
}

22
main.js
View file

@ -77,41 +77,41 @@ $(document).ready(function () {
switch (tab) {
case 'tab_initial_setup':
tabs.initial_setup.initialize(content_ready);
TABS.initial_setup.initialize(content_ready);
break;
case 'tab_pid_tuning':
tabs.pid_tuning.initialize(content_ready);
TABS.pid_tuning.initialize(content_ready);
break;
case 'tab_receiver':
tabs.receiver.initialize(content_ready);
TABS.receiver.initialize(content_ready);
break;
case 'tab_auxiliary_configuration':
tabs.auxiliary_configuration.initialize(content_ready);
TABS.auxiliary_configuration.initialize(content_ready);
break;
case 'tab_servos':
tabs.servos.initialize(content_ready);
TABS.servos.initialize(content_ready);
break;
case 'tab_gps':
tabs.gps.initialize(content_ready);
TABS.gps.initialize(content_ready);
break;
case 'tab_motor_outputs':
tabs.motor_outputs.initialize(content_ready);
TABS.motor_outputs.initialize(content_ready);
break;
case 'tab_sensors':
tabs.sensors.initialize(content_ready);
TABS.sensors.initialize(content_ready);
break;
case 'tab_cli':
tabs.cli.initialize(content_ready);
TABS.cli.initialize(content_ready);
break;
case 'tab_logging':
tabs.logging.initialize(content_ready);
TABS.logging.initialize(content_ready);
break;
}
});
}
});
tabs.default.initialize();
TABS.default.initialize();
// options
$('a#options').click(function () {

View file

@ -1,8 +1,8 @@
'use strict';
// TODO: rework box_highlight & update_ui to accept flexible amount of aux channels
tabs.auxiliary_configuration = {};
tabs.auxiliary_configuration.initialize = function(callback) {
TABS.auxiliary_configuration = {};
TABS.auxiliary_configuration.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'auxiliary_configuration';
googleAnalytics.sendAppView('Auxiliary Configuration');
@ -183,6 +183,6 @@ tabs.auxiliary_configuration.initialize = function(callback) {
}
};
tabs.auxiliary_configuration.cleanup = function(callback) {
TABS.auxiliary_configuration.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,11 +1,11 @@
'use strict';
tabs.cli = {
TABS.cli = {
'validateText': "",
'sequenceElements': 0
};
tabs.cli.initialize = function(callback) {
TABS.cli.initialize = function(callback) {
var self = this;
GUI.active_tab_ref = this;
GUI.active_tab = 'cli';
@ -61,25 +61,25 @@ tabs.cli.initialize = function(callback) {
});
};
tabs.cli.history = {
TABS.cli.history = {
history: [],
index: 0
};
tabs.cli.history.add = function (str) {
TABS.cli.history.add = function (str) {
this.history.push(str);
this.index = this.history.length;
};
tabs.cli.history.prev = function () {
TABS.cli.history.prev = function () {
if (this.index > 0) this.index -= 1;
return this.history[this.index];
};
tabs.cli.history.next = function () {
TABS.cli.history.next = function () {
if (this.index < this.history.length) this.index += 1;
return this.history[this.index - 1];
};
tabs.cli.sendSlowly = function (out_arr, i, timeout_needle) {
TABS.cli.sendSlowly = function (out_arr, i, timeout_needle) {
GUI.timeout_add('CLI_send_slowly', function () {
var bufferOut = new ArrayBuffer(out_arr[i].length + 1);
var bufView = new Uint8Array(bufferOut);
@ -94,7 +94,7 @@ tabs.cli.sendSlowly = function (out_arr, i, timeout_needle) {
}, timeout_needle * 5);
};
tabs.cli.read = function (readInfo) {
TABS.cli.read = function (readInfo) {
/* Some info about handling line feeds and carriage return
line feed = LF = \n = 0x0A = 10
@ -160,7 +160,7 @@ tabs.cli.read = function (readInfo) {
$('.tab-cli .window .wrapper').css('webkitTransform', 'scale(1)');
};
tabs.cli.cleanup = function(callback) {
TABS.cli.cleanup = function(callback) {
var bufferOut = new ArrayBuffer(5);
var bufView = new Uint8Array(bufferOut);

View file

@ -1,7 +1,7 @@
'use strict';
tabs.default = {};
tabs.default.initialize = function(callback) {
TABS.default = {};
TABS.default.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'default';
@ -16,7 +16,7 @@ tabs.default.initialize = function(callback) {
// UI Hooks
$('a.firmware_flasher').click(function() {
tabs.firmware_flasher.initialize();
TABS.firmware_flasher.initialize();
});
$('div.welcome a, div.sponsors a').click(function() {
@ -27,6 +27,6 @@ tabs.default.initialize = function(callback) {
});
};
tabs.default.cleanup = function(callback) {
TABS.default.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,7 +1,7 @@
'use strict';
tabs.firmware_flasher = {};
tabs.firmware_flasher.initialize = function (callback) {
TABS.firmware_flasher = {};
TABS.firmware_flasher.initialize = function (callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'firmware_flasher';
googleAnalytics.sendAppView('Firmware Flasher');
@ -258,7 +258,7 @@ tabs.firmware_flasher.initialize = function (callback) {
$('a.back').click(function () {
if (!GUI.connect_lock) { // button disabled while flashing is in progress
GUI.tab_switch_cleanup(function () {
tabs.default.initialize();
TABS.default.initialize();
});
} else {
GUI.log(chrome.i18n.getMessage('firmwareFlasherWaitForFinish'));
@ -269,7 +269,7 @@ tabs.firmware_flasher.initialize = function (callback) {
});
};
tabs.firmware_flasher.cleanup = function (callback) {
TABS.firmware_flasher.cleanup = function (callback) {
PortHandler.flush_callbacks();
// unbind "global" events

View file

@ -1,7 +1,7 @@
'use strict';
tabs.gps = {};
tabs.gps.initialize = function(callback) {
TABS.gps = {};
TABS.gps.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'gps';
googleAnalytics.sendAppView('GPS Page');
@ -61,6 +61,6 @@ tabs.gps.initialize = function(callback) {
}
};
tabs.gps.cleanup = function(callback) {
TABS.gps.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,9 +1,9 @@
'use strict';
tabs.initial_setup = {
TABS.initial_setup = {
yaw_fix: 0.0
};
tabs.initial_setup.initialize = function(callback) {
TABS.initial_setup.initialize = function(callback) {
var self = this;
GUI.active_tab_ref = this;
GUI.active_tab = 'initial_setup';
@ -206,7 +206,7 @@ tabs.initial_setup.initialize = function(callback) {
GUI.log(chrome.i18n.getMessage('initialSetupSettingsRestored'));
GUI.tab_switch_cleanup(function() {
tabs.initial_setup.initialize();
TABS.initial_setup.initialize();
});
});
});
@ -324,6 +324,6 @@ tabs.initial_setup.initialize = function(callback) {
}
};
tabs.initial_setup.cleanup = function(callback) {
TABS.initial_setup.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,7 +1,7 @@
'use strict';
tabs.logging = {};
tabs.logging.initialize = function(callback) {
TABS.logging = {};
TABS.logging.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'logging';
googleAnalytics.sendAppView('Logging');
@ -9,8 +9,6 @@ tabs.logging.initialize = function(callback) {
var requested_properties = [];
if (CONFIGURATOR.connectionValid) {
MSP.send_message(MSP_codes.MSP_RC, false, false, get_motor_data);
var get_motor_data = function () {
MSP.send_message(MSP_codes.MSP_MOTOR, false, false, load_html);
}
@ -18,6 +16,8 @@ tabs.logging.initialize = function(callback) {
var load_html = function () {
$('#content').load("./tabs/logging.html", process_html);
}
MSP.send_message(MSP_codes.MSP_RC, false, false, get_motor_data);
} else {
CONFIGURATOR.mspPassThrough = true;
@ -121,7 +121,7 @@ tabs.logging.initialize = function(callback) {
GUI.tab_switch_cleanup(function() {
CONFIGURATOR.mspPassThrough = false;
$('#tabs > ul li').removeClass('active');
tabs.default.initialize();
TABS.default.initialize();
});
}
});
@ -337,6 +337,6 @@ tabs.logging.initialize = function(callback) {
}
};
tabs.logging.cleanup = function(callback) {
TABS.logging.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,7 +1,7 @@
'use strict';
tabs.motor_outputs = {};
tabs.motor_outputs.initialize = function(callback) {
TABS.motor_outputs = {};
TABS.motor_outputs.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'motor_outputs';
googleAnalytics.sendAppView('Motor Outputs Page');
@ -373,6 +373,6 @@ tabs.motor_outputs.initialize = function(callback) {
}
};
tabs.motor_outputs.cleanup = function(callback) {
TABS.motor_outputs.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,7 +1,7 @@
'use strict';
tabs.pid_tuning = {};
tabs.pid_tuning.initialize = function(callback) {
TABS.pid_tuning = {};
TABS.pid_tuning.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'pid_tuning';
googleAnalytics.sendAppView('PID Tuning');
@ -188,7 +188,7 @@ tabs.pid_tuning.initialize = function(callback) {
GUI.log(chrome.i18n.getMessage('pidTuningLoadedProfile', [profile]));
GUI.tab_switch_cleanup(function() {
tabs.pid_tuning.initialize();
TABS.pid_tuning.initialize();
});
});
});
@ -197,7 +197,7 @@ tabs.pid_tuning.initialize = function(callback) {
GUI.tab_switch_cleanup(function() {
GUI.log(chrome.i18n.getMessage('pidTuningDataRefreshed'));
tabs.pid_tuning.initialize();
TABS.pid_tuning.initialize();
});
});
@ -319,6 +319,6 @@ tabs.pid_tuning.initialize = function(callback) {
}
};
tabs.pid_tuning.cleanup = function(callback) {
TABS.pid_tuning.cleanup = function(callback) {
if (callback) callback();
}

View file

@ -1,7 +1,7 @@
'use strict';
tabs.receiver = {};
tabs.receiver.initialize = function(callback) {
TABS.receiver = {};
TABS.receiver.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'receiver';
googleAnalytics.sendAppView('Receiver Page');
@ -275,6 +275,6 @@ tabs.receiver.initialize = function(callback) {
}
};
tabs.receiver.cleanup = function(callback) {
TABS.receiver.cleanup = function(callback) {
if (callback) callback();
};

View file

@ -1,7 +1,7 @@
'use strict';
tabs.sensors = {};
tabs.sensors.initialize = function(callback) {
TABS.sensors = {};
TABS.sensors.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'sensors';
googleAnalytics.sendAppView('Sensor Page');
@ -414,12 +414,8 @@ tabs.sensors.initialize = function(callback) {
});
};
tabs.sensors.cleanup = function(callback) {
TABS.sensors.cleanup = function(callback) {
serial.empty_output_buffer();
// sensor data tab uses scrollbars, emptying the content before loading another tab
// prevents scrollbar exposure to any of the tabs while new content is loaded in
$('#content').empty();
if (callback) callback();
};

View file

@ -6,8 +6,8 @@
*/
'use strict';
tabs.servos = {};
tabs.servos.initialize = function(callback) {
TABS.servos = {};
TABS.servos.initialize = function(callback) {
GUI.active_tab_ref = this;
GUI.active_tab = 'servos';
googleAnalytics.sendAppView('Servos');
@ -310,6 +310,6 @@ tabs.servos.initialize = function(callback) {
}
};
tabs.servos.cleanup = function(callback) {
TABS.servos.cleanup = function(callback) {
if (callback) callback();
};