11import { i18n } from '../localization' ;
2- import GUI from '../gui' ;
2+ import GUI , { TABS } from '../../js /gui' ;
33import { get as getConfig , set as setConfig } from '../ConfigStorage' ;
44import { bit_check } from '../bit' ;
55import { mspHelper } from '../msp/MSPHelper' ;
@@ -16,11 +16,51 @@ const auxiliary = {};
1616const flightModes = [ "ARM" , "ANGLE" , "HORIZON" , "ANTI GRAVITY" , "MAG" , "HEADFREE" , "HEADADJ" , "SERVO1" , "SERVO2" , "SERVO3" ,
1717 "FAILSAFE" , "AIR MODE" , "3D" , "FPV ANGLE MIX" , "FLIP OVER AFTER CRASH" , "USER1" , "USER2" , "USER3" , "USER4" , "ACRO TRAINER" , "LAUNCH CONTROL" ] ;
1818
19+ // Categories
20+ let categoryTable = createTable ( [
21+ [ '3D' , '3D DISABLE / SWITCH' ] ,
22+ [ 'BEEP' , 'BEEPER' , 'BEEPER MUTE' , 'GPS BEEP SATELLITE COUNT' ] ,
23+ [ 'BLACKBOX' , 'BLACKBOX' , 'BLACKBOX ERASE' ] ,
24+ [ 'CAM' , 'CAMERA CONTROL 1' , 'CAMERA CONTROL 2' , 'CAMERA CONTROL 3' ] ,
25+ [ 'FLIGHTMODE' , 'ARM' , 'ANGLE' , 'HORIZON' , 'ANTI GRAVITY' , 'MAG' , 'HEADFREE' , 'HEADADJ' , 'SERVO1' , 'SERVO2' , 'SERVO3' ,
26+ 'FAILSAFE' , 'AIR MODE' , '3D' , 'FPV ANGLE MIX' , 'FLIP OVER AFTER CRASH' , 'USER1' , 'USER2' , 'USER3' , 'USER4' , 'ACRO TRAINER' , 'LAUNCH CONTROL' ] ,
27+ [ 'GPS' , 'GPS BEEP SATELLITE COUNT' , 'GPS RESCUE' ] ,
28+ [ 'LED' , 'LEDLOW' ] ,
29+ [ 'OSD' , 'OSD DISABLE' ] ,
30+ [ 'OTHER' , 'CALIB' , 'MSP OVERRIDE' , 'LAP TIMER RESET' , 'PASSTHRU' , 'PARALYZE' , 'PID AUDIO' , 'PREARM' , 'TELEMETRY' ] ,
31+ [ 'SERVO' , 'SERVO1' , 'SERVO2' , 'SERVO3' ] ,
32+ [ 'USER' , 'USER1' , 'USER2' , 'USER3' , 'USER4' ] ,
33+ [ 'VTX' , 'STICK COMMANDS DISABLE' , 'VTX CONTROL DISABLE' , 'VTX PIT MODE' ] ,
34+ ] ) ;
35+
36+ const categoryFieldsSelect = $ ( ".auxiliary_filter_category select" ) ;
37+
38+ function createTable ( data ) {
39+ // Create a dynamic table with fixed values
40+ let table = [ ] ;
41+
42+ for ( let i = 0 ; i < data . length ; i ++ ) {
43+ let row = data [ i ] . slice ( ) ; // Use slice to clone the array
44+ table . push ( row ) ;
45+ }
46+
47+ return table ;
48+ }
49+
50+ // Function to display the table in the console
51+ function displayTable ( table ) {
52+ for ( let i = 0 ; i < table . length ; i ++ ) {
53+ console . log ( table [ i ] . join ( '\t' ) ) ;
54+ }
55+ }
56+
1957auxiliary . initialize = function ( callback ) {
2058 GUI . active_tab_ref = this ;
2159 GUI . active_tab = 'auxiliary' ;
2260 let prevChannelsValues = null ;
2361
62+ this . _selectCategory = $ ( '#auxiliary_filter_category' ) ;
63+
2464 function get_mode_ranges ( ) {
2565 MSP . send_message ( MSPCodes . MSP_MODE_RANGES , false , false , get_mode_ranges_extra ) ;
2666 }
@@ -311,6 +351,10 @@ auxiliary.initialize = function (callback) {
311351
312352 // translate to user-selected language
313353 i18n . localizePage ( ) ;
354+ //categoryFieldsSelect
355+
356+ // generate category multiple select
357+ displayTable ( categoryTable ) ;
314358
315359 const length = Math . max ( ...( FC . AUX_CONFIG . map ( el => el . length ) ) ) ;
316360 $ ( '.tab-auxiliary .mode .info' ) . css ( 'min-width' , `${ Math . round ( length * getTextWidth ( 'A' ) ) } px` ) ;
@@ -494,39 +538,31 @@ auxiliary.initialize = function (callback) {
494538
495539 let hideUnused = hideUnusedModes && hasUsedMode ;
496540 let hideNoFlight = hideNoFlightMode && hasUsedMode ;
497- console . log ( `0 hideUnusedModes: ${ hideUnusedModes } , hideNoFlightMode: ${ hideNoFlightMode } ` ) ;
498- console . log ( `0 hasUsedMode: ${ hasUsedMode } , hideUnused: ${ hideUnused } , hideNoFlight: ${ hideNoFlight } ` ) ;
499541
500542 for ( let i = 1 ; i < FC . AUX_CONFIG . length ; i ++ ) { // ARM has index 0
501543 let modeElement = $ ( `#mode-${ i } ` ) ;
502- let style = modeElement . css ( 'display' ) ;
503544
504545 if ( modeElement . find ( ' .range' ) . length == 0 && modeElement . find ( ' .link' ) . length == 0 ) {
505546 // unused mode
506- style = modeElement . css ( 'display' ) ;
507- console . log ( `1 HIDE: ${ FC . AUX_CONFIG [ i ] } ${ style } ` ) ;
508-
509547 modeElement . toggle ( ! hideUnused ) ;
510-
511- style = modeElement . css ( 'display' ) ;
512- console . log ( `2 HIDE: ${ FC . AUX_CONFIG [ i ] } ${ style } ` ) ;
513548 }
514549
550+ /*
515551 if ( ! isFlightMode(FC.AUX_CONFIG[i])) {
516552 // not flightMode mode
553+ hide = hide || !hideNoFlight;
517554 style = modeElement.css('display');
518- console . log ( `1 NOT flightmode: ${ FC . AUX_CONFIG [ i ] } - ${ hideNoFlight } - ${ style } ` ) ;
555+ console.log(`1 HIDE not flightmode: ${FC.AUX_CONFIG[i]} -> ${hide }`);
519556 // modeElement.toggle(!hideNoFlight);
557+ / *
520558 if( hideNoFlight && ! style === 'none') {
521559 modeElement.toggle(!hideUnused);
522560 }
523561 style = modeElement.css('display');
524- console . log ( `2 NOT flightmode: ${ FC . AUX_CONFIG [ i ] } - ${ hideNoFlight } - ${ style } ` ) ;
525- }
526- else {
527- style = modeElement . css ( 'display' ) ;
528- console . log ( `Flightmode: ${ FC . AUX_CONFIG [ i ] } - ${ style } ` ) ;
562+ console.log(`2 NOT flightmode: ${FC.AUX_CONFIG[i]} - ${style}`);
563+ * /
529564 }
565+ */
530566 }
531567
532568 auto_select_channel ( FC . RC . channels , FC . RC . active_channels , FC . RSSI_CONFIG . channel ) ;
0 commit comments