@@ -30,13 +30,9 @@ class ActionChecker {
3030
3131
3232 private static bool RequireParameter ( string param ) {
33- if ( param != null ) {
34- if ( param != "" ) {
35- return true ;
36- }
37- }
38- return false ;
33+ return ! String . IsNullOrEmpty ( param ) ;
3934 }
35+
4036 public static bool FileInUse ( string file ) {
4137 if ( File . Exists ( file ) ) {
4238 try {
@@ -402,138 +398,143 @@ public static string[] GetSecondaryParam(string param) {
402398
403399 public static Actions ExecuteAction ( string action , string line , string parameter ) {
404400 Actions actionExecution = new Actions ( ) ;
401+ string theAction = action . ToLower ( ) ;
405402
406- switch ( action . ToLower ( ) ) {
407- case "shutdown" :
408- //Shuts down the computer
409- actionExecution . Shutdown ( parameter ) ;
410- break ;
411- case "restart" :
412- //Restart the computer
413- actionExecution . Restart ( parameter ) ;
414- break ;
415- case "sleep" :
416- //Puts computer to sleep
417- actionExecution . Sleep ( parameter ) ;
418- break ;
419- case "hibernate" :
420- //Hibernates computer
421- actionExecution . Hibernate ( parameter ) ;
422- break ;
423- case "logout" :
424- //Logs out of the current user
425- actionExecution . Logout ( parameter ) ;
426- break ;
427- case "lock" :
428- //Lock computer
429- actionExecution . Lock ( parameter ) ;
430- break ;
431- case "mute" :
432- //Mutes windows
433- //Parameter optional (true/false)
434- actionExecution . Mute ( parameter ) ;
435- break ;
436- case "set_volume" :
437- //Sets volume to a specific percent
438- //Requires parameter (percent, int)
439- if ( RequireParameter ( parameter ) ) {
440- actionExecution . SetVolume ( parameter ) ;
441- }
442- break ;
443- case "music" :
444- if ( RequireParameter ( parameter ) ) {
445- switch ( parameter ) {
446- case "previous" :
447- case "previousx2" :
448- break ;
449- case "next" :
450- break ;
451- case "play_pause" :
452- break ;
403+ if ( ActionMods . ModActionExists ( theAction ) ) {
404+ actionExecution . ModExecution ( theAction , parameter ) ;
405+ } else {
406+ switch ( theAction ) {
407+ case "shutdown" :
408+ //Shuts down the computer
409+ actionExecution . Shutdown ( parameter ) ;
410+ break ;
411+ case "restart" :
412+ //Restart the computer
413+ actionExecution . Restart ( parameter ) ;
414+ break ;
415+ case "sleep" :
416+ //Puts computer to sleep
417+ actionExecution . Sleep ( parameter ) ;
418+ break ;
419+ case "hibernate" :
420+ //Hibernates computer
421+ actionExecution . Hibernate ( parameter ) ;
422+ break ;
423+ case "logout" :
424+ //Logs out of the current user
425+ actionExecution . Logout ( parameter ) ;
426+ break ;
427+ case "lock" :
428+ //Lock computer
429+ actionExecution . Lock ( parameter ) ;
430+ break ;
431+ case "mute" :
432+ //Mutes windows
433+ //Parameter optional (true/false)
434+ actionExecution . Mute ( parameter ) ;
435+ break ;
436+ case "set_volume" :
437+ //Sets volume to a specific percent
438+ //Requires parameter (percent, int)
439+ if ( RequireParameter ( parameter ) ) {
440+ actionExecution . SetVolume ( parameter ) ;
453441 }
454- actionExecution . Music ( parameter ) ;
455- }
456- break ;
457- case "open" :
458- if ( RequireParameter ( parameter ) ) {
459- actionExecution . Open ( parameter ) ;
460- }
461- break ;
462- case "open_all" :
463- if ( RequireParameter ( parameter ) ) {
464- actionExecution . OpenAll ( parameter ) ;
465- }
466- break ;
467- case "die" :
468- //Exit ACC
469- actionExecution . Die ( parameter ) ;
470- break ;
471- case "monitors_off" :
472- actionExecution . MonitorsOff ( parameter ) ;
473- break ;
474- case "key_shortcut" :
475- if ( RequireParameter ( parameter ) ) {
476- actionExecution . KeyShortcut ( parameter ) ;
477- }
478- break ;
479- case "write_out" :
480- if ( RequireParameter ( parameter ) ) {
481- actionExecution . WriteOut ( parameter , line ) ;
482- }
483- break ;
484- case "create_file" :
485- if ( RequireParameter ( parameter ) ) {
486- actionExecution . CreateFile ( parameter ) ;
487- }
488- break ;
489- case "delete_file" :
490- if ( RequireParameter ( parameter ) ) {
491- actionExecution . DeleteFile ( parameter ) ;
492- }
493- break ;
494- case "append_text" :
495- if ( RequireParameter ( parameter ) ) {
496- actionExecution . AppendText ( parameter ) ;
497- }
498- break ;
499- case "message_box" :
500- if ( RequireParameter ( parameter ) ) {
501- actionExecution . DoMessageBox ( parameter ) ;
502- }
503- break ;
504- case "move" :
505- if ( RequireParameter ( parameter ) ) {
506- actionExecution . MoveSubject ( parameter ) ;
507- }
508- break ;
509- case "kill_process" :
510- if ( RequireParameter ( parameter ) ) {
511- actionExecution . KillProcess ( parameter ) ;
512- }
513- break ;
514- case "minimize_all" :
515- actionExecution . MinimizeAll ( ) ;
516- break ;
517- case "maximize_all" :
518- actionExecution . MaximizeAll ( ) ;
519- break ;
520- case "move_mouse" :
521- if ( RequireParameter ( parameter ) ) {
522- actionExecution . MoveMouse ( parameter ) ;
523- }
524- break ;
525- case "mouse_click" :
526- actionExecution . MouseClick ( parameter ) ;
527- break ;
528- case "wait" :
529- if ( RequireParameter ( parameter ) ) {
530- actionExecution . Wait ( parameter ) ;
531- }
532- break ;
533- default :
534- //Unknown action
535- actionExecution . errorMessage = "Unknown action \" " + action + "\" " ;
536- break ;
442+ break ;
443+ case "music" :
444+ if ( RequireParameter ( parameter ) ) {
445+ switch ( parameter ) {
446+ case "previous" :
447+ case "previousx2" :
448+ break ;
449+ case "next" :
450+ break ;
451+ case "play_pause" :
452+ break ;
453+ }
454+ actionExecution . Music ( parameter ) ;
455+ }
456+ break ;
457+ case "open" :
458+ if ( RequireParameter ( parameter ) ) {
459+ actionExecution . Open ( parameter ) ;
460+ }
461+ break ;
462+ case "open_all" :
463+ if ( RequireParameter ( parameter ) ) {
464+ actionExecution . OpenAll ( parameter ) ;
465+ }
466+ break ;
467+ case "die" :
468+ //Exit ACC
469+ actionExecution . Die ( parameter ) ;
470+ break ;
471+ case "monitors_off" :
472+ actionExecution . MonitorsOff ( parameter ) ;
473+ break ;
474+ case "key_shortcut" :
475+ if ( RequireParameter ( parameter ) ) {
476+ actionExecution . KeyShortcut ( parameter ) ;
477+ }
478+ break ;
479+ case "write_out" :
480+ if ( RequireParameter ( parameter ) ) {
481+ actionExecution . WriteOut ( parameter , line ) ;
482+ }
483+ break ;
484+ case "create_file" :
485+ if ( RequireParameter ( parameter ) ) {
486+ actionExecution . CreateFile ( parameter ) ;
487+ }
488+ break ;
489+ case "delete_file" :
490+ if ( RequireParameter ( parameter ) ) {
491+ actionExecution . DeleteFile ( parameter ) ;
492+ }
493+ break ;
494+ case "append_text" :
495+ if ( RequireParameter ( parameter ) ) {
496+ actionExecution . AppendText ( parameter ) ;
497+ }
498+ break ;
499+ case "message_box" :
500+ if ( RequireParameter ( parameter ) ) {
501+ actionExecution . DoMessageBox ( parameter ) ;
502+ }
503+ break ;
504+ case "move" :
505+ if ( RequireParameter ( parameter ) ) {
506+ actionExecution . MoveSubject ( parameter ) ;
507+ }
508+ break ;
509+ case "kill_process" :
510+ if ( RequireParameter ( parameter ) ) {
511+ actionExecution . KillProcess ( parameter ) ;
512+ }
513+ break ;
514+ case "minimize_all" :
515+ actionExecution . MinimizeAll ( ) ;
516+ break ;
517+ case "maximize_all" :
518+ actionExecution . MaximizeAll ( ) ;
519+ break ;
520+ case "move_mouse" :
521+ if ( RequireParameter ( parameter ) ) {
522+ actionExecution . MoveMouse ( parameter ) ;
523+ }
524+ break ;
525+ case "mouse_click" :
526+ actionExecution . MouseClick ( parameter ) ;
527+ break ;
528+ case "wait" :
529+ if ( RequireParameter ( parameter ) ) {
530+ actionExecution . Wait ( parameter ) ;
531+ }
532+ break ;
533+ default :
534+ //Unknown action
535+ actionExecution . errorMessage = "Unknown action \" " + action + "\" " ;
536+ break ;
537+ }
537538 }
538539
539540 if ( MainProgram . testingAction ) {
0 commit comments