├── .gitattributes
├── .gitignore
├── .vscode
└── launch.json
├── AppData
├── .gitignore
├── Saved Flows
│ ├── .gitignore
│ ├── Flow 100439537.json
│ ├── Flow 1010290492.json
│ ├── Flow 1087828277.json
│ ├── Flow 1175892536.json
│ ├── Flow 1210127300.json
│ ├── Flow 1271479101.json
│ ├── Flow 130786371.json
│ ├── Flow 1333431302.json
│ ├── Flow 1384439262.json
│ ├── Flow 1587447767.json
│ ├── Flow 1666346379.json
│ ├── Flow 1849072261.json
│ ├── Flow 1990010495.json
│ ├── Flow 2052424815.json
│ ├── Flow 2133155705.json
│ ├── Flow 369404488.json
│ ├── Flow 381419056.json
│ ├── Flow 561135904.json
│ ├── Flow 634320780.json
│ ├── Flow 65341778.json
│ ├── Flow 74366368.json
│ ├── Flow 884290977.json
│ └── ignore-not-test-flows.ahk
└── settings.json
├── AutoHotFlow.ahk
├── AutoHotKey
└── AutoHotFlow.exe
├── Changelog.txt
├── Checklist before publishing.txt
├── Documentation
├── AHK Data Types.txt
└── screenshots
│ ├── Element Tooltip.png
│ ├── Element settings.png
│ ├── Flow Editor.png
│ └── Manager.png
├── Help
├── en
│ ├── .gitignore
│ ├── Color chart.html
│ ├── Index.html
│ ├── Key list.html
│ ├── Menu - template of one entry.html
│ ├── Menu - template.html
│ ├── Menu.html
│ ├── Variables.html
│ └── Welcome.html
├── stylesheet.css
└── template.html
├── Icons
├── Disabled small.ico
├── Edit.ico
├── Enabled small.ico
├── Exclamation mark.ico
├── MainIcon.ico
├── Move.ico
├── Plus.ico
├── Question mark.ico
├── Small Icons template.xcf
├── Translator.ico
├── Trash.ico
├── Update Checker.ico
├── VariableName.ico
├── disabled.ico
├── e_plus.png
├── e_star_empty.ico
├── e_star_empty.png
├── e_star_empty.xcf
├── e_star_filled.ico
├── e_star_filled.png
├── e_star_filled.xcf
├── e_switch.xcf
├── e_switch_off.ico
├── e_switch_on.ico
├── enabled.ico
├── expression.ico
├── folder.ico
├── running.ico
└── string.ico
├── Lib
├── 7z wrapper
│ └── 7z wrapper.ahk
├── GDI+
│ └── Gdip.ahk
├── Json
│ └── Jxon.ahk
├── Objects
│ └── Objects.ahk
├── Random Word List
│ └── Random Word List.ahk
├── Yunit
│ ├── LICENSE.txt
│ ├── README.md
│ ├── Stdout.ahk
│ ├── Window.ahk
│ ├── Yunit.ahk
│ └── doc
│ │ ├── Example.ahk
│ │ └── Main.md
└── ini
│ └── ini helper.ahk
├── License.txt
├── Package uninstaller.ahk
├── README.md
├── Saved Flows
└── demo flows
│ ├── Flow 1369089307.json
│ ├── Flow 1428714744.json
│ ├── Flow 1638325262.json
│ └── Flow 806132298.json
├── Source_Common
├── Debug
│ ├── Debug.ahk
│ └── Logger.ahk
├── Elements
│ ├── Elements.ahk
│ └── Manage Elements.ahk
├── Flows
│ ├── Compatibility.ahk
│ ├── Flow actions.ahk
│ ├── Load.ahk
│ ├── Manage Flows.ahk
│ ├── Save.ahk
│ └── States.ahk
├── Multithreading
│ ├── API Caller to Draw.ahk
│ ├── API Caller to Editor.ahk
│ ├── API Caller to Execution.ahk
│ ├── API Caller to Main.ahk
│ ├── API Caller to Manager.ahk
│ ├── API for Elements.ahk
│ └── Shared Variables.ahk
├── Other
│ ├── Design.ahk
│ └── Other.ahk
├── Settings
│ └── Settings.ahk
└── Variables
│ ├── Code evaluator.ahk
│ ├── Code parser.ahk
│ ├── Code tokenizer.ahk
│ ├── Expression evaluator.ahk
│ └── Global variables.ahk
├── Source_Draw
├── Draw.ahk
└── GDIp
│ └── GDIp.ahk
├── Source_Editor
├── API
│ └── API for Elements.ahk
├── Assistants
│ ├── Choose Color.ahk
│ ├── Get window information.ahk
│ └── Mouse tracker.ahk
├── Editor.ahk
├── Elements
│ ├── Clipboard.ahk
│ └── Select elements.ahk
└── User Interface
│ ├── Editor GUI Menu bar.ahk
│ ├── Editor GUI User Input.ahk
│ ├── Editor GUI.ahk
│ ├── Element settings other.ahk
│ ├── Element settings.ahk
│ ├── Flow settings.ahk
│ ├── GDI+.ahk
│ ├── Help.ahk
│ ├── Tooltip.ahk
│ └── Tray.ahk
├── Source_Elements
├── .gitignore
└── Default
│ ├── Actions
│ ├── Absolute_Number.ahk
│ ├── Add_to_list.ahk
│ ├── AutoHotkey_script.ahk
│ ├── Beep.ahk
│ ├── Block_User_Input.ahk
│ ├── Change_Drive_Label.ahk
│ ├── Change_character_case.ahk
│ ├── Click.ahk
│ ├── Close_Window.ahk
│ ├── Compress_files.ahk
│ ├── Convert_list_to_string.ahk
│ ├── Convert_string_to_list.ahk
│ ├── Copy_file.ahk
│ ├── Copy_folder.ahk
│ ├── Create_Shortcut.ahk
│ ├── Create_folder.ahk
│ ├── Delete_From_Ini.ahk
│ ├── Delete_file.ahk
│ ├── Delete_folder.ahk
│ ├── Delete_from_list.ahk
│ ├── Do_nothing.ahk
│ ├── Download_file.ahk
│ ├── Drag_with_mouse.ahk
│ ├── Eject_Drive.ahk
│ ├── Empty_Recycle_bin.ahk
│ ├── Encode_string.ahk
│ ├── Execute_Flow.ahk
│ ├── Exponentiation.ahk
│ ├── Extract_files.ahk
│ ├── Get_Clipboard.ahk
│ ├── Get_Drive_Information.ahk
│ ├── Get_Screen_Settings.ahk
│ ├── Get_Volume.ahk
│ ├── Get_control_text.ahk
│ ├── Get_file_attributes.ahk
│ ├── Get_file_size.ahk
│ ├── Get_file_time.ahk
│ ├── Get_from_list.ahk
│ ├── Get_index_of_element_in_list.ahk
│ ├── Get_list_info.ahk
│ ├── Get_mouse_position.ahk
│ ├── Get_pixel_color.ahk
│ ├── Get_shortcut_information.ahk
│ ├── Get_string_Length.ahk
│ ├── HTTP_Request.ahk
│ ├── Hibernate_Computer.ahk
│ ├── Hide_window.ahk
│ ├── Input_Box.ahk
│ ├── Kill_Process.ahk
│ ├── List_Drives.ahk
│ ├── Lock_Computer.ahk
│ ├── Lock_Or_Unlock_Drive.ahk
│ ├── Log_Off.ahk
│ ├── Message_Box.ahk
│ ├── Minimize_All_Windows.ahk
│ ├── Move_File.ahk
│ ├── Move_Folder.ahk
│ ├── Move_Mouse.ahk
│ ├── Move_window.ahk
│ ├── New_List.ahk
│ ├── New_Time.ahk
│ ├── New_Variable.ahk
│ ├── Play_Sound.ahk
│ ├── Random_Number.ahk
│ ├── Read_From_File.ahk
│ ├── Read_From_Ini.ahk
│ ├── Reboot_Computer.ahk
│ ├── Rename_Folder.ahk
│ ├── Rename_file.ahk
│ ├── Replace_in_a_string.ahk
│ ├── Rounding_a_number.ahk
│ ├── Run.ahk
│ ├── Screenshot.ahk
│ ├── Script.ahk
│ ├── Search_Image.ahk
│ ├── Search_in_a_string.ahk
│ ├── Search_pixel.ahk
│ ├── Select_file.ahk
│ ├── Select_folder.ahk
│ ├── Send_Keystrokes.ahk
│ ├── Send_Keystrokes_To_Control.ahk
│ ├── Set_Clipboard.ahk
│ ├── Set_Flow_Status.ahk
│ ├── Set_Lock_Key.ahk
│ ├── Set_Process_Priority.ahk
│ ├── Set_Screen_Settings.ahk
│ ├── Set_Volume.ahk
│ ├── Set_control_text.ahk
│ ├── Set_element_parameter.ahk
│ ├── Set_file_attributes.ahk
│ ├── Set_file_time.ahk
│ ├── Show_window.ahk
│ ├── Shuffle_list.ahk
│ ├── Shutdown.ahk
│ ├── Sleep.ahk
│ ├── Speech_output.ahk
│ ├── Split_a_string.ahk
│ ├── Split_path.ahk
│ ├── Square_Root.ahk
│ ├── Stop_Flow.ahk
│ ├── Stop_Sound.ahk
│ ├── Substring.ahk
│ ├── Substring2.ahk
│ ├── Suspend_Computer.ahk
│ ├── Time_calculation.ahk
│ ├── Time_difference.ahk
│ ├── Tooltip.ahk
│ ├── Trace_Point.ahk
│ ├── Trace_Point_Check.ahk
│ ├── Trigonometry.ahk
│ ├── Trim_a_string.ahk
│ ├── Write_To_File.ahk
│ ├── Write_to_ini.ahk
│ └── activate_Window.ahk
│ ├── Conditions
│ ├── Confirmation_Dialog.ahk
│ ├── Debug_dialog.ahk
│ ├── Do_nothing.ahk
│ ├── Expression.ahk
│ ├── File_Exists.ahk
│ ├── File_Has_Attribute.ahk
│ ├── Flow_Enabled.ahk
│ ├── Flow_Running.ahk
│ ├── Key_Is_Down.ahk
│ ├── List_Contains_Element.ahk
│ ├── NumberIs.ahk
│ ├── Process_Is_Running.ahk
│ ├── String_Contains_Text.ahk
│ ├── Variable_Is_Empty.ahk
│ ├── Variable_content_is.ahk
│ ├── Window_Active.ahk
│ └── Window_Exists.ahk
│ ├── Icons
│ ├── Bug.png
│ ├── Bullhorn.png
│ ├── Keyboard.png
│ ├── Sleep.ico
│ ├── Tooltip.png
│ ├── new Variable.png
│ └── yellow.png
│ ├── License.txt
│ ├── Loops
│ ├── Condition.ahk
│ ├── Loop_Through_Files.ahk
│ ├── Parse_A_String.ahk
│ ├── SimpleLoop.ahk
│ └── Work_through_a_list.ahk
│ ├── Test status.ods
│ ├── Triggers
│ ├── AutoHotkey_Script.ahk
│ ├── Clipboard_Changes.ahk
│ ├── Hotkey.ahk
│ ├── Hotstring.ahk
│ ├── Manual.ahk
│ ├── Periodic_Timer.ahk
│ ├── Process_closes.ahk
│ ├── Process_starts.ahk
│ ├── Shortcut.ahk
│ ├── Start_up.ahk
│ ├── Time_of_Day.ahk
│ ├── User_Idle_Time.ahk
│ ├── Window_closes.ahk
│ ├── Window_gets_active.ahk
│ ├── Window_gets_inactive.ahk
│ └── Window_opens.ahk
│ ├── common
│ ├── Window functions.ahk
│ └── compatibility.ahk
│ ├── help
│ └── en
│ │ ├── Actions
│ │ ├── Absolute_number.html
│ │ ├── Add_to_list.html
│ │ ├── AutoHotKey_script.html
│ │ ├── Beep.html
│ │ ├── Block_user_input.html
│ │ ├── Change_Drive_Label.html
│ │ ├── Change_character_case.html
│ │ ├── Click.html
│ │ ├── Convert_list_to_string.html
│ │ ├── Convert_string_to_list.html
│ │ ├── Copy_file.html
│ │ ├── Copy_folder.html
│ │ ├── Create_folder.html
│ │ ├── Create_shortcut.html
│ │ ├── Delete_file.html
│ │ ├── Delete_folder.html
│ │ ├── Delete_from_ini.html
│ │ ├── Delete_from_list.html
│ │ ├── Do_nothing.html
│ │ ├── Download_file.html
│ │ ├── Drag_with_mouse.html
│ │ ├── Eject_Drive.html
│ │ ├── Empty_recycle_bin.html
│ │ ├── Execute_Flow.html
│ │ ├── Exponentiation.html
│ │ ├── Extract_files.html
│ │ ├── Get_Clipboard.html
│ │ ├── Get_Drive_Information.html
│ │ ├── Get_Screen_Settings.html
│ │ ├── Get_Volume.html
│ │ ├── Get_control_text.html
│ │ ├── Get_file_attributes.html
│ │ ├── Get_file_size.html
│ │ ├── Get_file_time.html
│ │ ├── Get_from_list.html
│ │ ├── Get_index_of_element_in_list.html
│ │ ├── Get_list_info.html
│ │ ├── Get_mouse_position.html
│ │ ├── Get_pixel_color.html
│ │ ├── Get_shortcut_information.html
│ │ ├── Get_string_length.html
│ │ ├── HTTP_Request.html
│ │ ├── Hibernate_Computer.html
│ │ ├── Hide_window.html
│ │ ├── Input_box.html
│ │ ├── Kill_Process.html
│ │ ├── List_Drives.html
│ │ ├── Lock_Computer.html
│ │ ├── Log_off.html
│ │ ├── Message_Box.html
│ │ ├── Minimize_all_windows.html
│ │ ├── Move_file.html
│ │ ├── Move_folder.html
│ │ ├── Move_mouse.html
│ │ ├── Move_window.html
│ │ ├── New_List.html
│ │ ├── New_Time.html
│ │ ├── New_Variable.html
│ │ ├── Play_Sound.html
│ │ ├── Random_number.html
│ │ ├── Read_from_file.html
│ │ ├── Read_from_ini.html
│ │ ├── Rename_file.html
│ │ ├── Rename_folder.html
│ │ ├── Replace_in_a_string.html
│ │ ├── Rounding_a_number.html
│ │ ├── Run.html
│ │ ├── Screenshot.html
│ │ ├── Script.html
│ │ ├── Search_image.html
│ │ ├── Search_in_a_string.html
│ │ ├── Search_pixel.html
│ │ ├── Select_file.html
│ │ ├── Select_folder.html
│ │ ├── Send_keystrokes.html
│ │ ├── Send_keystrokes_To_Control.html
│ │ ├── Set_Clipboard.html
│ │ ├── Set_Flow_Status.html
│ │ ├── Set_Process_Priority.html
│ │ ├── Set_Screen_Settings.html
│ │ ├── Set_Volume.html
│ │ ├── Set_control_text.html
│ │ ├── Set_element_parameter.html
│ │ ├── Set_file_attributes.html
│ │ ├── Set_file_time.html
│ │ ├── Set_lock_key.html
│ │ ├── Show_window.html
│ │ ├── Shuffle_list.html
│ │ ├── Speech_output.html
│ │ ├── Split_a_string.html
│ │ ├── Split_path.html
│ │ ├── Square_root.html
│ │ ├── Stop_Flow.html
│ │ ├── Stop_Sound.html
│ │ ├── Substring.html
│ │ ├── Substring2.html
│ │ ├── Suspend_Computer.html
│ │ ├── Time_calculation.html
│ │ ├── Time_difference.html
│ │ ├── Trace_Point.html
│ │ ├── Trace_Point_Check.html
│ │ ├── Trigonometry.html
│ │ ├── Trim_a_string.html
│ │ ├── Write_to_file.html
│ │ ├── Write_to_ini.html
│ │ ├── activate_Window.html
│ │ ├── close_Window.html
│ │ ├── reboot_Computer.html
│ │ ├── shutdown.html
│ │ ├── sleep.html
│ │ └── tooltip.html
│ │ ├── Conditions
│ │ ├── Debug_dialog.html
│ │ ├── Do_nothing.html
│ │ ├── Expression.html
│ │ ├── File_exists.html
│ │ ├── File_has_attribute.html
│ │ ├── Flow_Enabled.html
│ │ ├── Flow_Running.html
│ │ ├── List_contains_element.html
│ │ ├── Number is.html
│ │ ├── Process_is_running.html
│ │ ├── String_contains_text.html
│ │ ├── Variable_content_is.html
│ │ ├── Variable_is_empty.html
│ │ ├── Window_active.html
│ │ ├── Window_exists.html
│ │ ├── confirmation_dialog.html
│ │ └── key_is_down.html
│ │ ├── Loops
│ │ ├── Loop_through_files.html
│ │ ├── Parse_a_string.html
│ │ ├── Work_through_a_list.html
│ │ ├── condition.html
│ │ └── simpleloop.html
│ │ └── Triggers
│ │ ├── AutoHotkey_Script.html
│ │ ├── Clipboard_Changes.html
│ │ ├── Hotkey.html
│ │ ├── Hotstring.html
│ │ ├── Manual.html
│ │ ├── Periodic_Timer.html
│ │ ├── Process_closes.html
│ │ ├── Process_starts.html
│ │ ├── Shortcut.html
│ │ ├── Start_up.html
│ │ ├── Time_of_Day.html
│ │ ├── User_Idle_Time.html
│ │ ├── window_closes.html
│ │ ├── window_gets_active.html
│ │ ├── window_gets_inactive.html
│ │ └── window_opens.html
│ ├── language
│ ├── .gitignore
│ ├── de.ini
│ ├── en.ini
│ ├── ko.ini
│ └── ru.ini
│ ├── lib
│ ├── Class_Monitor
│ │ └── Class_Monitor.ahk
│ ├── Eject
│ │ └── Eject.ahk
│ ├── HTTP Request
│ │ ├── HTTPRequest.ahk
│ │ └── Uriencode.ahk
│ ├── Json
│ │ └── Jxon.ahk
│ ├── Process list
│ │ └── getProcessList.ahk
│ ├── TTS
│ │ └── TTS by Learning One.ahk
│ └── Yaml
│ │ └── Yaml.ahk
│ └── manifest.json
├── Source_Execution
├── API
│ └── API for Elements.ahk
├── Execution Task
│ ├── Execution Task.ahk
│ └── Instances and Threads.ahk
├── Execution.ahk
├── Trigger
│ └── Trigger.ahk
└── Variables
│ └── Variables.ahk
├── Source_Main
├── API
│ ├── API for Elements.ahk
│ └── Shared Variables.ahk
├── Elements
│ └── Elements.ahk
├── Hidden window
│ └── Hidden window.ahk
├── Threads
│ └── Threads.ahk
├── Tray
│ └── Tray.ahk
└── main.ahk
├── Source_Manager
├── API
│ └── API for Elements.ahk
├── Manager.ahk
└── User Interface
│ ├── About.ahk
│ ├── Change Category GUI.ahk
│ ├── Global_Settings.ahk
│ ├── Help.ahk
│ ├── Import and export.ahk
│ └── Manager GUI.ahk
├── Source_Test
├── Unit_Tests.ahk
└── main
│ └── Globals
│ └── Test globals.ahk
├── Tools for contributors
├── AHF development
│ ├── addDebugMessages.ahk
│ └── checkCriticalSection.ahk
├── Element creation
│ ├── Create new package.ahk
│ ├── Element template creator.ahk
│ ├── help
│ │ ├── Element API.html
│ │ ├── Element functions.html
│ │ ├── How to start.html
│ │ ├── Index.html
│ │ ├── Menu.html
│ │ ├── Parametrization details.html
│ │ └── stylesheet.css
│ ├── raw templates
│ │ ├── template - action.ahk
│ │ ├── template - compatibility.ahk
│ │ ├── template - condition.ahk
│ │ ├── template - loop.ahk
│ │ └── template - trigger.ahk
│ └── readme.txt
└── Translation
│ ├── How to translate.html
│ ├── Translation Tool.ahk
│ ├── lang crawler.ahk
│ ├── start translation tool.bat
│ └── stylesheet.css
├── bin
├── 7-zip.chm
├── 7za.exe
├── license.txt
└── readme.txt
├── find modules - only default package.ahk
├── find modules.ahk
├── innoSetupPrebuildSteps - extension package.ahk
├── innoSetupPrebuildSteps.ahk
├── innoSetupScript - Extension Package template.iss
├── innoSetupScript.iss
├── language
├── .gitignore
├── basic
│ ├── .gitignore
│ ├── de.ini
│ ├── en.ini
│ ├── ko.ini
│ └── ru.ini
└── language.ahk
└── settings.json
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # AutoHotKey
2 | *.bak
3 |
4 | # compiled files
5 | /*.exe
6 |
7 | # exclude flows except of demonstration flows
8 | Saved Flows/backup
9 | Saved Flows/demo flows/backup
10 |
11 | # Windows image file caches
12 | Thumbs.db
13 | ehthumbs.db
14 |
15 | # Folder config file
16 | Desktop.ini
17 |
18 | #other
19 | /innoSetupScript - Extension Package.iss
20 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "type": "ahk",
9 | "request": "launch",
10 | "name": "Autohotkey",
11 | "program": "${workspaceFolder}/AutoHotflow.ahk",
12 | "stopOnEntry": true
13 | }
14 | ]
15 | }
--------------------------------------------------------------------------------
/AppData/.gitignore:
--------------------------------------------------------------------------------
1 | /Log/
2 | /Variables/
3 | /Saved Flows/backup
--------------------------------------------------------------------------------
/AppData/Saved Flows/.gitignore:
--------------------------------------------------------------------------------
1 | /*.json
2 | !/Flow 100439537.json
3 | !/Flow 1010290492.json
4 | !/Flow 1087828277.json
5 | !/Flow 1175892536.json
6 | !/Flow 1210127300.json
7 | !/Flow 1271479101.json
8 | !/Flow 130786371.json
9 | !/Flow 1333431302.json
10 | !/Flow 1384439262.json
11 | !/Flow 1587447767.json
12 | !/Flow 1666346379.json
13 | !/Flow 1849072261.json
14 | !/Flow 1990010495.json
15 | !/Flow 2052424815.json
16 | !/Flow 2133155705.json
17 | !/Flow 369404488.json
18 | !/Flow 381419056.json
19 | !/Flow 561135904.json
20 | !/Flow 634320780.json
21 | !/Flow 65341778.json
22 | !/Flow 74366368.json
23 | !/Flow 884290977.json
24 |
--------------------------------------------------------------------------------
/AppData/Saved Flows/ignore-not-test-flows.ahk:
--------------------------------------------------------------------------------
1 | #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
2 | ; #Warn ; Enable warnings to assist with detecting common errors.
3 | SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
4 | SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
5 | SetBatchLines -1
6 |
7 | ; this script renames test flows and adds the prefix "Test "
8 | ; this way we can set a .gitignore filter to ignore all flows but test flows
9 | ; if you add a new test flow, call the function to rename it
10 | ; it detects whether it is a test flow by its category.
11 |
12 | testCategories := []
13 | testCategories.push("Automatic tests")
14 | testCategories.push("Manual tests")
15 |
16 | filedelete, .gitignore
17 | fileappend, % "/*.json`n", .gitignore
18 |
19 | loop, files, *.json
20 | {
21 | FileRead, fileContent, % a_loopfilepath
22 | isTestFlow := false
23 |
24 | for oneCategoryIndex, oneCategory in testCategories
25 | {
26 | if instr(fileContent, """category"": """ oneCategory """,")
27 | isTestFlow := true
28 | }
29 |
30 | if (isTestFlow)
31 | {
32 | fileappend, % "!/" a_loopfilename "`n", .gitignore
33 | }
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/AppData/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "developing": 1,
3 | "FlowExecutionPolicy": "parallel",
4 | "FlowWorkingDir": "C:\\Users\\bichl\\Documents\\AutoHotFlow",
5 | "HideDemoFlows": 0,
6 | "LogLevelApp": "0",
7 | "LogLevelFlow": "0",
8 | "LogLevelThread": "0",
9 | "LogToFile": "0",
10 | "runAsAdmin": "0",
11 | "ShowElementsLevel": "Programmer",
12 | "UILanguage": "en"
13 | }
--------------------------------------------------------------------------------
/AutoHotFlow.ahk:
--------------------------------------------------------------------------------
1 | #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
2 | ;#Warn ; Recommended for catching common errors.
3 | SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
4 | SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
5 | ;~ MsgBox '%1%' - %2% - %3% - %4% - %5%
6 |
7 | if not fileexist("language\en.ini")
8 | {
9 | runwait, "find modules.ahk"
10 | }
11 |
12 |
13 | FileEncoding utf-8
14 |
15 | ;Handle a command line parameter if any
16 | command = %1%
17 | commandMessage = %2%
18 | if (command = "AHFCommand")
19 | {
20 | DetectHiddenWindows,on
21 |
22 | ;If an instance of AutoHotFlow already exists, pass the command to the hidden window of AutoHotFlow
23 | IfWinExist,%A_ScriptDir% AHF_HIDDEN_COMMAND_WINDOW
24 | {
25 | ControlSetText,Edit1,%commandMessage%,%A_ScriptDir% AHF_HIDDEN_COMMAND_WINDOW
26 | ExitApp
27 | }
28 | }
29 |
30 |
31 | ;At last run main.ahk passing all command line parameters which were passed to this script
32 | run,autohotkey\AutoHotFlow.exe "%A_ScriptDir%\source_main\main.ahk" "%1%" "%2%" "%3%" "%4%" "%5%" "%6%" "%7%" "%8%" "%9%" "%10%"
33 |
--------------------------------------------------------------------------------
/AutoHotKey/AutoHotFlow.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/AutoHotKey/AutoHotFlow.exe
--------------------------------------------------------------------------------
/Checklist before publishing.txt:
--------------------------------------------------------------------------------
1 | - run "innoSetupPrebuildSteps.ahk"
2 | - run all test flows
3 | - run "lang crawler" and use "Translation tool" to add German translation
4 | - make installer via innoSetupScript.iss
5 | - test the installer
6 | - open installed AHF
7 |
--------------------------------------------------------------------------------
/Documentation/screenshots/Element Tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Documentation/screenshots/Element Tooltip.png
--------------------------------------------------------------------------------
/Documentation/screenshots/Element settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Documentation/screenshots/Element settings.png
--------------------------------------------------------------------------------
/Documentation/screenshots/Flow Editor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Documentation/screenshots/Flow Editor.png
--------------------------------------------------------------------------------
/Documentation/screenshots/Manager.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Documentation/screenshots/Manager.png
--------------------------------------------------------------------------------
/Help/en/.gitignore:
--------------------------------------------------------------------------------
1 | /actions/
2 | /conditions/
3 | /loops/
4 | /triggers/
5 | *.html
6 |
--------------------------------------------------------------------------------
/Help/en/Index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | .
14 |
15 | Yunit is free software: you can redistribute it and/or modify
16 | it under the terms of the GNU Affero General Public License as published by
17 | the Free Software Foundation, either version 3 of the License, or
18 | (at your option) any later version.
19 |
20 | This program is distributed in the hope that it will be useful,
21 | but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | GNU Affero General Public License for more details.
24 |
25 | You should have received a copy of the GNU Affero General Public License
26 | along with this program. If not, see .
27 |
--------------------------------------------------------------------------------
/Lib/Yunit/Stdout.ahk:
--------------------------------------------------------------------------------
1 | class YunitStdOut
2 | {
3 | Update(Category, Test, Result) ;wip: this only supports one level of nesting?
4 | {
5 | if IsObject(Result)
6 | {
7 | Details := " at line " Result.Line " " Result.Message
8 | Status := "FAIL"
9 | }
10 | else
11 | {
12 | Details := ""
13 | Status := "PASS"
14 | }
15 | FileAppend, %Status%: %Category%.%Test% %Details%`n, *
16 | }
17 | }
--------------------------------------------------------------------------------
/Lib/ini/ini helper.ahk:
--------------------------------------------------------------------------------
1 | ; written by Paul Bichler
2 | ; license: WTFPL
3 |
4 | ; reads ini content from string
5 | ; returns a 2-dimensional array
6 | importIni(fileContent)
7 | {
8 | iniContent := []
9 |
10 | StringReplace, fileContent, fileContent, `r, `n, all
11 |
12 | loop, parse, fileContent, `n, % a_space a_tab
13 | {
14 | oneLine := A_LoopField
15 | if not oneLine
16 | continue
17 |
18 | if (substr(oneLine, 1, 1) = "[" and substr(oneLine, 0, 1) = "]")
19 | {
20 | currentSection := substr(oneLine, 2, -1)
21 | iniContent[currentSection] := []
22 | continue
23 | }
24 |
25 | onePos := instr(oneLine, "=")
26 | if (not onePos)
27 | {
28 | return "Line " a_index " has no euqal sign: " oneLine
29 | }
30 | oneKey := trim(substr(oneLine, 1, onePos - 1))
31 | oneValue := trim(substr(oneLine, onePos + 1))
32 |
33 | if (currentSection = "" and not iniContent[currentSection])
34 | iniContent[currentSection] := []
35 |
36 | iniContent[currentSection][oneKey] := oneValue
37 | }
38 | return iniContent
39 | }
40 |
41 | ; writes ini content to string
42 | exportIni(iniContent)
43 | {
44 | fileContent := []
45 |
46 | for oneSection, oneSectionContent in iniContent
47 | {
48 | fileContent .= "[" oneSection "]`n"
49 | for oneKey, oneValue in oneSectionContent
50 | {
51 | fileContent .= oneKey "=" oneValue "`n"
52 | }
53 | }
54 |
55 | return fileContent
56 | }
--------------------------------------------------------------------------------
/Package uninstaller.ahk:
--------------------------------------------------------------------------------
1 | #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
2 | ; #Warn ; Enable warnings to assist with detecting common errors.
3 | SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
4 | SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
5 | SetBatchLines -1
6 |
7 | if not instr(fileexist("Source_elements"), "D")
8 | {
9 | MsgBox, Error! directory "Source_elements" does not exist.
10 | ExitApp
11 | }
12 |
13 | ; test wheter rights are sufficient
14 | FileAppend, test, Source_elements\WriteTest.txt
15 | if errorlevel
16 | {
17 | ; rights are not sufficient, run as admin
18 | if a_iscompiled
19 | {
20 | try Run *RunAs "%A_ScriptFullPath%" ;Run as admin. See https://autohotkey.com/docs/commands/Run.htm#RunAs
21 | }
22 | Else
23 | {
24 | try Run *RunAs "%a_ahkPath%" "%A_ScriptFullPath%" ;Run as admin. See https://autohotkey.com/docs/commands/Run.htm#RunAs
25 | }
26 | exitapp
27 | }
28 | FileDelete, Source_elements\WriteTest.txt
29 |
30 |
31 | ; find all packages
32 | allPackages := ""
33 | loop, files, Source_elements\*, D
34 | {
35 | if (A_LoopFileName = "Default")
36 | continue
37 | if (allPackages != "")
38 | allPackages .= "|"
39 | allPackages .= A_LoopFileName
40 | }
41 |
42 | if not allPackages
43 | {
44 | MsgBox, No packages found!
45 | ExitApp
46 | }
47 |
48 | gui, add, text,,Which package do you want to uninstall?
49 | gui, add, DropDownList, w200 vpackageName choose1, % allPackages
50 | gui, add, button, w200 gpackageSelected default, OK
51 | gui,show
52 | return
53 |
54 | packageSelected:
55 | gui, submit
56 |
57 | if not packageName
58 | {
59 | MsgBox, Unknown error!
60 | ExitApp
61 | }
62 | FileRemoveDir, Source_elements\%packageName%, 1
63 | if errorlevel
64 | {
65 | MsgBox, Error! Package %packageName% could net be deleted.
66 | }
67 | Else
68 | {
69 | run, "find modules.exe"
70 | MsgBox, Package %packageName% was successfully deleted.
71 | run, "autoHotFlow.exe"
72 | }
73 | ExitApp
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # AutoHotFlow [[Download here]](https://github.com/bichlepa/AutoHotFlow/releases)
2 | This script is designed to make programming and automation easy as never before! Just pull in some elements in the graphical interface and set up some triggers. Ready! :smile:
3 | This project ist made for people who never have programmed before and for those who want to make some automation, etc. without writing long codes.
4 | It's very easy to use. You need to pull an action or a condition, configurate them and connect them.
5 | You can optionally add some triggers, that will trigger the flow in certain cases.
6 |
7 | When the flow executes the currently running elements are highlighted red.
8 |
9 | 
10 |
11 | Every element has settings
12 |
13 | 
14 |
15 | There is also flow manager
16 |
17 | 
18 |
19 | It has all basic functions. I'm working on it and its abilities are raising.
20 |
21 | My aim is to include many elements that would need many lines of ahk-code and thus to allow programming some complex things easier.
22 |
23 | It could also demontrate the broad possibilities of AutoHotkey.
24 | You can track the progress on [trello](https://trello.com/b/Ca91IaeG/autohotflow).
25 |
26 | # How to install and use
27 | Go the the [Releases section](https://github.com/bichlepa/AutoHotFlow/releases) and download the installer of the current version.
28 | # How to develop
29 | Here you'll find instructions for those who want to work on AHF.
30 | After first checkout, `find modules.ahk` will be automatically started by AHF. Please run `find modules.ahk` every time after you pulled some changes. Otherwise errors may sometimes occur.
31 | ## Add new elements
32 | If you want to add some new elements, you'll find everything you need in the folder `Tools for contributors\Element creation`.
33 | ## Improve AHF and create an installer
34 | To create an installer, you have to run the script `innoSetupPrebuildSteps.ahk`. This will update the content of some files.
35 | Then you can open the InnoSetup file `innoSetupScript.iss`. To do that you have to install InnoSetup on your PC.
36 |
--------------------------------------------------------------------------------
/Source_Common/Flows/Compatibility.ahk:
--------------------------------------------------------------------------------
1 | global FlowCompabilityVersionOfApp := 1 ;This variable contains a number which will be incremented as soon an incompability appears. This will make it possible to identify old scripts and convert them. This value will be written in any saved flows.
2 |
3 | ;Check an element after it was loaded
4 | LoadFlowCheckCompabilityElement(p_FlowID, p_ElementID, p_AHFVersion)
5 | {
6 | ; example:
7 | ; elementClass := x_getElementClass(p_FlowID, p_ElementID)
8 | ; if (elementClass = "Loop_Work_through_a_list")
9 | ; {
10 | ; value := _getElementProperty(p_FlowID, p_ElementID, "pars.VarName")
11 | ; _setElementProperty(p_FlowID, p_ElementID, "pars.VarValue", value)
12 | ; }
13 |
14 | oneElementPackage := _getElementProperty(p_FlowID, p_ElementID, "Package")
15 | oneElementPackageVersion := _getElementProperty(p_FlowID, p_ElementID, "PackageVersion")
16 | if (oneElementPackage and isFunc("LoadFlowCheckCompatibilityElement_Package_" oneElementPackage))
17 | {
18 | LoadFlowCheckCompatibilityElement_Package_%oneElementPackage%(p_FlowID, p_ElementID, p_AHFVersion, oneElementPackageVersion)
19 | }
20 | }
21 |
22 | ;Check a connection after it was loaded
23 | LoadFlowCheckCompabilityConnection(p_FlowID, p_ConnectionID, p_AHFVersion)
24 | {
25 |
26 | }
27 |
28 | ;Check the flow after it was loaded
29 | LoadFlowCheckCompabilityFlow(p_FlowID, p_AHFVersion)
30 | {
31 |
32 | }
--------------------------------------------------------------------------------
/Source_Common/Multithreading/API Caller to Draw.ahk:
--------------------------------------------------------------------------------
1 | ;This file is included by all threads which want to communicate to draw thread
2 |
3 | ; tells the draw thread that it needs to redraw the image in the editor for a flow
4 | API_Draw_Draw(p_FlowID)
5 | {
6 | logger("t3", A_ThisFunc " called from thread", _ahkThreadID)
7 |
8 | _setFlowProperty(p_FlowID, "draw.mustDraw", true)
9 | }
10 |
--------------------------------------------------------------------------------
/Source_Common/Multithreading/API Caller to Editor.ahk:
--------------------------------------------------------------------------------
1 | ;This file is included by all threads which want to communicate to editor thread
2 |
3 | ; tells the editor thread that it should show the gui
4 | API_Editor_EditGUIshow(par_FlowID)
5 | {
6 | logger("t2", A_ThisFunc " called from thread", _ahkThreadID)
7 |
8 | _setTask("editor" par_FlowID, {name: "EditGUIshow"})
9 | }
10 |
11 | ; tells the editor thread that it should exit
12 | API_Editor_Exit(par_flowID)
13 | {
14 | logger("t2", A_ThisFunc " called from thread", _ahkThreadID)
15 |
16 | _setTask("editor" par_FlowID, {name: "exit"})
17 | }
--------------------------------------------------------------------------------
/Source_Common/Multithreading/API Caller to Manager.ahk:
--------------------------------------------------------------------------------
1 | ;This file is included by all threads which want to communicate to manager thread
2 |
3 | ; tells the manager thread that it should refill the treeview
4 | API_manager_TreeView_Refill()
5 | {
6 | logger("t2", A_ThisFunc " called from thread", _ahkThreadID)
7 |
8 | _setTask("manager", {name: "TreeView_Refill"})
9 | }
10 |
11 | ; tells the manager thread that it should show the window
12 | API_Manager_ShowWindow()
13 | {
14 | logger("t2", A_ThisFunc " called from thread", _ahkThreadID)
15 |
16 | _setTask("manager", {name: "ShowWindow"})
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Source_Common/Other/Design.ahk:
--------------------------------------------------------------------------------
1 | ; super-global variables defining the design of the flows in flow editor
2 | ; some of them may become configurable in future
3 | global default_ZoomFactor = 0.7
4 | global default_OffsetX = -200
5 | global default_OffsetY = -200
6 |
7 | global default_zoomFactorMin = 0.1
8 | global default_zoomFactorMax = 3
9 | global default_textSize = 15
10 | global default_SizeOfButtons = 35
11 | global default_MinimumHeightOfConnection = 15
12 | global default_NewElementIconHeight = 75
13 | global default_NewElementIconWidth = 100
14 | global default_ElementHeight = 105
15 | global default_ElementWidth = 140
16 | global default_Gridy = 35
17 | global default_Gridx = 35
--------------------------------------------------------------------------------
/Source_Common/Other/Other.ahk:
--------------------------------------------------------------------------------
1 | ; Returns the path of AHF
2 | GetAhfPath()
3 | {
4 | if fileexist(_ScriptDir "\AutoHotFlow.exe")
5 | {
6 | return _ScriptDir "\AutoHotFlow.exe"
7 | }
8 | else if fileexist(_ScriptDir "\AutoHotFlow.ahk")
9 | {
10 | return _ScriptDir "\AutoHotFlow.ahk"
11 | }
12 | else
13 | {
14 | logger("a0", "Can't find AutoHotflow.exe")
15 | return
16 | }
17 | }
18 |
19 | ; sets the icon of a GUI.
20 | ; before call of this function, the command has to be called: gui, +LastFound
21 | setGuiIcon(iconPath)
22 | {
23 | global
24 |
25 | local hIcon := DllCall("LoadImage", uint, 0, str, iconPath, uint, 1, int, 0, int, 0, uint, 0x10)
26 |
27 | SendMessage 0x80, 0, hIcon ; 0x80 is WM_SETICON; and 1 means ICON_BIG (vs. 0 for ICON_SMALL).
28 | SendMessage 0x80, 1, hIcon ; 0x80 is WM_SETICON; and 1 means ICON_BIG (vs. 0 for ICON_SMALL).
29 | }
--------------------------------------------------------------------------------
/Source_Common/Variables/Expression evaluator.ahk:
--------------------------------------------------------------------------------
1 |
2 | ; evaluate an expression
3 | ; useCommonFunctions: if false we will use functions "var_get" and "var_set", if true, we will use "var_get_common" and "var_set_common"
4 | Var_EvaluateExpression(environment, ExpressionString, useCommonFunctions)
5 | {
6 | ; step 1: tokenize the code
7 | tokens := tokenizer(ExpressionString)
8 |
9 | ; step 2: parse the tokenized code
10 | parsedCode := class_parser.parse(tokens, "expression")
11 |
12 | ; check for returned error
13 | if (parsedCode.errors.MaxIndex())
14 | {
15 | ; there were errors. return a readable string
16 | ;generate readable string
17 | string := ""
18 | for oneindex, oneerror in parsedCode.errors
19 | {
20 | if (a_index != 1)
21 | string .= "`n`n"
22 | string .= lang("line %1%, col %2%", oneerror.line, oneerror.col) "`n"
23 | string .= oneerror.wholeline "`n"
24 | string .= oneerror.description
25 | }
26 |
27 | return {error: string}
28 | }
29 | ; there was no error
30 | ; step 3: evaluate the tokenized code
31 | evaluatedCode := class_evaluator.evaluate(parsedCode, environment, useCommonFunctions)
32 | if (evaluatedCode.errors.MaxIndex())
33 | {
34 | ; there were errors. return a readable string
35 | ;generate readable string
36 | string := ""
37 | for oneindex, oneerror in evaluatedCode.errors
38 | {
39 | if (a_index != 1)
40 | string .= "`n`n"
41 | string .= lang("line %1%, col %2%", oneerror.line, oneerror.col) "`n"
42 | string .= oneerror.wholeline "`n"
43 | string .= oneerror.description
44 | }
45 |
46 | return {error: string}
47 | }
48 | ; return the evaluated expression
49 | return {result: evaluatedCode.res}
50 | }
--------------------------------------------------------------------------------
/Source_Editor/User Interface/Tooltip.ahk:
--------------------------------------------------------------------------------
1 |
2 | ; show a tooltip which follows the mouse
3 | ToolTip(text = "", duration = 1000)
4 | {
5 | global
6 |
7 | ; save tooltip and duration parameters to global variables
8 | ToolTip_text := text
9 | ToolTip_duration := duration
10 | Tooltip_Oldx := ""
11 | Tooltip_Oldy := ""
12 |
13 | ; show tooltip
14 | gosub, Tooltip_follow_mouse
15 |
16 | ; set up timer which will move the tooltip with mouse
17 | SetTimer, Tooltip_follow_mouse, 10
18 |
19 | ; set up timer which will disable the tooltip
20 | SetTimer, Tooltip_RemoveTooltip, -%ToolTip_duration%
21 |
22 | return
23 |
24 | ; timer label which will move the tooltip with mouse
25 | Tooltip_follow_mouse:
26 | ; get mouse position
27 | MouseGetPos, tempTooltipx, tempTooltipy
28 |
29 | ; check whether the mouse has moved
30 | if (Tooltip_Oldx != tempTooltipx or Tooltip_Oldy != tempTooltipy)
31 | {
32 | ; mouse has moved. Recreate the tooltip.
33 | ToolTip, %ToolTip_text%
34 | Tooltip_Oldx := tempTooltipx
35 | Tooltip_Oldy := tempTooltipy
36 | }
37 | return
38 |
39 | ; timer label which will remove the tooltip
40 | Tooltip_RemoveTooltip:
41 | ; disable timer
42 | SetTimer, Tooltip_follow_mouse, off
43 | ; hide tooltip
44 | ToolTip
45 | return
46 | }
47 |
48 |
--------------------------------------------------------------------------------
/Source_Editor/User Interface/Tray.ahk:
--------------------------------------------------------------------------------
1 |
2 | ; disable default tooltip controls if AHF is compiled
3 | if (not _getSettings("developing"))
4 | {
5 | menu, tray, NoStandard
6 | }
7 |
8 | ; initialize tray menu
9 | ;TODO I want that the menu will be renamed when the language changes.
10 | initializeTrayBar()
11 | {
12 | global
13 | try menu, tray, deleteall
14 |
15 | menu, tray, add, tray_show
16 | Menu, tray, default, tray_show
17 | menu, tray, rename, tray_show, % lang("Show #verb")
18 |
19 | menu, tray, add, tray_start
20 | menu, tray, rename, tray_start, % lang("Run #verb")
21 |
22 | menu, tray, add, tray_enable
23 | menu, tray, rename, tray_enable, % lang("Enable or disable")
24 |
25 | menu, tray, add, Exit
26 | menu, tray, rename, Exit, % lang("Exit #verb")
27 |
28 | menu, tray, tip, % lang("Flow") ": " _getFlowProperty(_FlowID, "name")
29 | }
30 |
31 | ; react if user clicks on "show" entry
32 | tray_show()
33 | {
34 | EditGUIshow()
35 | }
36 |
37 | ; react if user clicks on "start" entry
38 | tray_start()
39 | {
40 | executeFlow(_FlowID)
41 | }
42 |
43 | ; react if user clicks on "enable" entry
44 | tray_enable()
45 | {
46 | enableToggleFlow(_FlowID)
47 | }
48 |
49 | tray_setIcon(flowState)
50 | {
51 | ; check whether icon has to be changed
52 | static oldFlowState
53 | if (oldFlowState != flowState)
54 | {
55 | oldFlowState := flowState
56 |
57 | menu, tray, icon, %_ScriptDir%\Icons\%flowState%.ico
58 | }
59 |
60 | }
--------------------------------------------------------------------------------
/Source_Elements/.gitignore:
--------------------------------------------------------------------------------
1 | # ignore all custom packages
2 | /*
3 | !/Default
4 |
--------------------------------------------------------------------------------
/Source_Elements/Default/Actions/Log_Off.ahk:
--------------------------------------------------------------------------------
1 |
2 | ;Name of the element
3 | Element_getName_Action_Log_Off()
4 | {
5 | return x_lang("Log_Off")
6 | }
7 |
8 | ;Category of the element
9 | Element_getCategory_Action_Log_Off()
10 | {
11 | return x_lang("Power")
12 | }
13 |
14 | ;Minimum user experience to use this element.
15 | ;Elements which are complicated or rarely used by beginners should not be visible to them.
16 | ;This will help them to get started with AHF
17 | Element_getElementLevel_Action_Log_Off()
18 | {
19 | ;"Beginner" or "Advanced" or "Programmer"
20 | return "Beginner"
21 | }
22 |
23 | ;Icon file name which will be shown in the background of the element
24 | Element_getIconPath_Action_Log_Off()
25 | {
26 | }
27 |
28 | ;How stable is this element? Experimental elements will be marked and can be hidden by user.
29 | Element_getStabilityLevel_Action_Log_Off()
30 | {
31 | ;"Stable" or "Experimental"
32 | return "Stable"
33 | }
34 |
35 | ;Returns an array of objects which describe all controls which will be shown in the element settings GUI
36 | Element_getParametrizationDetails_Action_Log_Off(Environment)
37 | {
38 | parametersToEdit:=Object()
39 |
40 | return parametersToEdit
41 | }
42 |
43 | ;Returns the detailed name of the element. The name can vary depending on the parameters.
44 | Element_GenerateName_Action_Log_Off(Environment, ElementParameters)
45 | {
46 | return x_lang("Log_Off")
47 | }
48 |
49 | ;Called every time the user changes any parameter.
50 | ;This function allows to check the integrity of the parameters. For example you can:
51 | ;- Disable options which are not available because of other options
52 | ;- Correct misconfiguration
53 | Element_CheckSettings_Action_Log_Off(Environment, ElementParameters, staticValues)
54 | {
55 |
56 | }
57 |
58 |
59 | ;Called when the element should execute.
60 | ;This is the most important function where you can code what the element acutally should do.
61 | Element_run_Action_Log_Off(Environment, ElementParameters)
62 | {
63 | ; log off
64 | shutdown, 0
65 |
66 | ; finish
67 | x_finish(Environment,"normal")
68 | return
69 | }
70 |
71 |
72 | ;Called when the execution of the element should be stopped.
73 | ;If the task in Element_run_...() takes more than several seconds, then it is up to you to make it stoppable.
74 | Element_stop_Action_Log_Off(Environment, ElementParameters)
75 | {
76 | }
77 |
78 |
79 |
80 |
81 |
82 |
83 |
--------------------------------------------------------------------------------
/Source_Elements/Default/Actions/Stop_Sound.ahk:
--------------------------------------------------------------------------------
1 |
2 | ;Name of the element
3 | Element_getName_Action_Stop_Sound()
4 | {
5 | return x_lang("Stop_Sound")
6 | }
7 |
8 | ;Category of the element
9 | Element_getCategory_Action_Stop_Sound()
10 | {
11 | return x_lang("Sound")
12 | }
13 |
14 | ;Minimum user experience to use this element.
15 | ;Elements which are complicated or rarely used by beginners should not be visible to them.
16 | ;This will help them to get started with AHF
17 | Element_getElementLevel_Action_Stop_Sound()
18 | {
19 | ;"Beginner" or "Advanced" or "Programmer"
20 | return "Beginner"
21 | }
22 |
23 | ;Icon file name which will be shown in the background of the element
24 | Element_getIconPath_Action_Stop_Sound()
25 | {
26 | }
27 |
28 | ;How stable is this element? Experimental elements will be marked and can be hidden by user.
29 | Element_getStabilityLevel_Action_Stop_Sound()
30 | {
31 | ;"Stable" or "Experimental"
32 | return "Stable"
33 | }
34 |
35 | ;Returns an array of objects which describe all controls which will be shown in the element settings GUI
36 | Element_getParametrizationDetails_Action_Stop_Sound(Environment)
37 | {
38 | parametersToEdit:=Object()
39 |
40 | return parametersToEdit
41 | }
42 |
43 | ;Returns the detailed name of the element. The name can vary depending on the parameters.
44 | Element_GenerateName_Action_Stop_Sound(Environment, ElementParameters)
45 | {
46 | return x_lang("Stop_Sound")
47 | }
48 |
49 | ;Called every time the user changes any parameter.
50 | ;This function allows to check the integrity of the parameters. For example you can:
51 | ;- Disable options which are not available because of other options
52 | ;- Correct misconfiguration
53 | Element_CheckSettings_Action_Stop_Sound(Environment, ElementParameters, staticValues)
54 | {
55 |
56 | }
57 |
58 |
59 | ;Called when the element should execute.
60 | ;This is the most important function where you can code what the element acutally should do.
61 | Element_run_Action_Stop_Sound(Environment, ElementParameters)
62 | {
63 | ; stop sound
64 | SoundPlay, -
65 |
66 | ; finish
67 | x_finish(Environment,"normal")
68 | return
69 | }
70 |
71 |
72 | ;Called when the execution of the element should be stopped.
73 | ;If the task in Element_run_...() takes more than several seconds, then it is up to you to make it stoppable.
74 | Element_stop_Action_Stop_Sound(Environment, ElementParameters)
75 | {
76 | }
77 |
78 |
79 |
80 |
81 |
82 |
83 |
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/Bug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/Bug.png
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/Bullhorn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/Bullhorn.png
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/Keyboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/Keyboard.png
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/Sleep.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/Sleep.ico
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/Tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/Tooltip.png
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/new Variable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/new Variable.png
--------------------------------------------------------------------------------
/Source_Elements/Default/Icons/yellow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Icons/yellow.png
--------------------------------------------------------------------------------
/Source_Elements/Default/License.txt:
--------------------------------------------------------------------------------
1 | This is free and unencumbered software released into the public domain.
2 |
3 | Anyone is free to copy, modify, publish, use, compile, sell, or
4 | distribute this software, either in source code form or as a compiled
5 | binary, for any purpose, commercial or non-commercial, and by any
6 | means.
7 |
8 | In jurisdictions that recognize copyright laws, the author or authors
9 | of this software dedicate any and all copyright interest in the
10 | software to the public domain. We make this dedication for the benefit
11 | of the public at large and to the detriment of our heirs and
12 | successors. We intend this dedication to be an overt act of
13 | relinquishment in perpetuity of all present and future rights to this
14 | software under copyright law.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19 | IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20 | OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 | OTHER DEALINGS IN THE SOFTWARE.
23 |
24 | For more information, please refer to
--------------------------------------------------------------------------------
/Source_Elements/Default/Test status.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/Test status.ods
--------------------------------------------------------------------------------
/Source_Elements/Default/common/compatibility.ahk:
--------------------------------------------------------------------------------
1 | LoadFlowCheckCompatibilityElement_Package_Default(p_FlowID, p_ElementID, p_AHFVersion, p_PackageVersion)
2 | {
3 | elementClass := x_getElementClass(p_FlowID, p_ElementID)
4 | if (p_PackageVersion <= 1.1.0)
5 | {
6 | if (elementClass = "Action_New_variable")
7 | {
8 | elementPars := x_getElementPars(p_FlowID, p_ElementID)
9 | if (elementPars.onlyIfNotExist = "")
10 | {
11 | x_setElementPar(p_FlowID, p_ElementID, "onlyIfNotExist", 0)
12 | }
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Absolute_number.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Absolute Number
11 | The action Absolute Number finds the absolute value of a number.
12 |
13 | Settings
14 |
15 |
16 |
17 | Output variable name
18 | Name of the variable which will contain the result.
19 |
20 |
21 |
22 |
23 | Input number
24 | The input number.
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Add_to_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Add to list
11 |
12 | The action Add to list adds a value to a list. If the list does not exist, it will be created.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which contains a list. If the list doesn't exist, it will be created.
21 |
22 |
23 |
24 |
25 | Number of elements
26 | Either one or multiple elements can be added to the list.
27 |
28 |
29 |
30 |
31 | Content to add
32 | If Add one element is selected, this field can contain either a value or an expression.
33 | If Add multiple elements is selected, this multiline field can contain one or multiple values that will be added. Specify which delimiter will be used. The default setting is a new element in each line.
34 |
35 |
36 |
37 |
38 | Key
39 | Specify the position or key of insertion.
40 | If First position is selected, the value(s) will be added numerically as the first item(s) with the index 1 (, 2, …). The indexes of other items will be incremented.
41 | If Last position is selected, the value(s) will be added as the last item(s). For example if a list has three elements, the other element(s) will be added as the fourth element (, fifth element, …)
42 | If Following position or key is selected, the value(s) will be added into a specified position. You can specify the insertion method if position is an integer.
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Beep.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Beep
11 |
12 | The action Beep emits a tone from the PC speaker.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Frequency in Hz
20 | Frequency of the tone.
21 |
22 |
23 |
24 |
25 | Duration in ms
26 | Duration of the tone.
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Block_user_input.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Block input
11 |
12 | The action Block input disables or enables the user's ability to interact with the computer via keyboard and mouse.
13 |
14 |
15 | This action might have no effect if UAC is enabled or AutoHotFlow has not been run as administrator.
16 |
17 | Settings
18 |
19 |
20 |
21 | New block state
22 | If Block user input is selected, the user input will be blocked.
23 | If Unblock user input is selected, a previously enabled block will be removed.
24 |
25 |
26 |
27 |
28 | Remarks
29 |
30 | When BlockInput is in effect, user input is blocked but AutoHotkey can simulate keystrokes and mouse clicks. However, pressing Ctrl+Alt+Del
will re-enable input due to a Windows API feature.
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Change_Drive_Label.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Change drive label
11 |
12 | The action Change drive label changes a drive's volume label.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Drive letter
20 | Specify a drive letter, followed by a colon and an optional backslash. In some cases a UNC name (such as \\server1\share1) might work.
21 |
22 |
23 |
24 |
25 | New label
26 | Specify the new label for the drive. This field can be left empty in order to remove the label.
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Change_character_case.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Change character case
11 |
12 | The action Change character case converts a string to lowercase or uppercase.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input string
26 | String that will be converted to lowercase or uppercase.
27 |
28 |
29 |
30 |
31 | Which case
32 | Specify the desired character case.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Convert_list_to_string.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Convert list to string
11 |
12 | The action Convert list to string converts a list to a string. Supported formats are JSON and YAML.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the string.
21 |
22 |
23 |
24 |
25 | Input list
26 | The input list.
27 |
28 |
29 |
30 |
31 | Output format
32 | Specify the format of the string.
33 |
34 |
35 |
36 |
37 | Options
38 | If JSON is selected, some options can be set.
39 | If Compact mode is selected, the output string will not have any linebreaks or indentation. Otherwise the intentation length can be set.
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Convert_string_to_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Convert string to list
11 |
12 | The action Convert string to list converts a string to a list. Supported formats are JSON and YAML.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output list name
20 | Name of the variable which will contain the list.
21 |
22 |
23 |
24 |
25 | Input string
26 | The input string.
27 |
28 |
29 |
30 |
31 | Input format
32 | Specify the format of the string.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Create_folder.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Create folder
11 |
12 | The action Create folder creates a new directory.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Folder path
20 | Path of the directory to create.
21 | The folder path is assumed to be in the working directory if an absolute path isn't specified.
22 |
23 |
24 |
25 |
26 |
27 | Options
28 | If Throw exception if folder already exists is not selected, nothing will happen, if the folder already exists.
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Delete_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Delete file
9 |
10 |
11 | Delete file
12 | The action Delete file deletes one or more files.
13 | Be careful using that action. It may cause loss of data.
14 |
15 | Settings
16 |
17 |
18 |
19 | File path
20 | The name of a single file or folder, or a wildcard pattern.
21 | Both asterisks and question marks are supported as wildcards.
22 | The file path is assumed to be in the working directory if an absolute path isn't specified.
23 |
24 |
25 |
26 |
27 |
28 | Examples
29 |
30 |
31 |
32 | Delete one file from MyDocuments folder..
33 |
34 |
35 |
36 | File path
37 |
38 |
39 | A_MyDocuments%\Example.txt
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | Delete all files from a drive.
48 |
49 |
50 |
51 | File path
52 |
53 |
54 | G:\*
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 | Delete all text files from the working directory.
63 |
64 |
65 |
66 | File path
67 |
68 |
69 | *.txt
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Delete_folder.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Delete folder
11 |
12 | The action Delete folder deletes a folder.
13 |
14 |
15 | Be careful using that action. It may cause loss of data.
16 |
17 | Settings
18 |
19 |
20 |
21 | Folder path
22 | Path of the directory to delete.
23 | The folder path is assumed to be in the working directory if an absolute path isn't specified.
24 |
25 |
26 |
27 |
28 |
29 | Options
30 | If Remove only if the folder is empty is selected, the folder will not be deleted, if it contains any file or folder.
31 |
32 |
33 |
34 |
35 | Error handling
36 | If Throw exception if folder does not exist is not selected, nothing will happen, if the folder doesn't exists.
37 |
38 |
39 |
40 |
41 | Examples
42 |
43 |
44 |
45 | Delete one folder from MyDocuments folder.
46 |
47 |
48 |
49 | Folder path
50 |
51 |
52 | %A_MyDocuments%\ExampleFolder
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Delete_from_ini.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Delete from ini
11 |
12 | The action Delete from ini deletes a value from a standard format .ini file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Path of an .ini file
20 | Name and path of the file.
21 | The file path is assumed to be in the working directory if an absolute path isn't specified.
22 |
23 |
24 |
25 |
26 |
27 | Action
28 | If Delete a key is checked, only one key will be deleted.
29 | If Delete a section is checked, the entire section with all its keys will be deleted.
30 |
31 |
32 |
33 |
34 |
35 | Section and Key
36 | The section and the key which content will be deleted.
37 |
38 |
39 |
40 |
41 |
42 | Remarks
43 |
44 | A standard ini file looks like this:
45 |
46 |
47 |
48 | [SectionName]
49 | Key=Value
50 |
51 |
52 |
53 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Delete_from_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Delete from list
11 |
12 | The action Delete from list deletes a value from an existing list.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which contains the list.
21 |
22 |
23 |
24 |
25 | Which element
26 | Either one or multiple elements can be added to the list.
27 | If First position is selected, the first value (usually with the key 1) will be deleted.
28 | If Last position is selected, the first value with the highest key will be deleted.
29 | If Following position or key is selected, the specified key will be deleted. If you specify an integer position, you can decide whether higher positions should be decremented after the deletion (to maintain a gapless array).
30 |
31 |
32 |
33 |
34 |
35 | Deleted value
36 | You may write the deleted value to a new variable.
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Do_nothing.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Do nothing
11 |
12 | The action Do nothing does nothing.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Result
20 | The result of the execution
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Download_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Dowload file
11 |
12 | The action Dowload file downloads a file from an URL.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | URL
20 | URL of the file to download. For example, http://someorg.org
might retrieve the welcome page for that organization.
21 |
22 |
23 |
24 |
25 | File path
26 | Name and path of the file where the download will be written.
27 | The file path is assumed to be in the working directory if an absolute path isn't specified.
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Eject_Drive.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Eject drive
11 |
12 | The action Eject drive ejects a drive. It can also retract a CD/DVD tray.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Drive letter
20 | Specify a drive letter, followed by a colon and an optional backslash. In some cases a UNC name (such as \\server1\share1
) might work.
21 |
22 |
23 |
24 |
25 | Action
26 | Choose what should be done.
27 |
28 |
29 |
30 |
31 | Method
32 | There are three methods for ejecting a drive. All three methods work with a CD or DVD drive. If removing a removable drive, like a USB Flash drive or an external hard disk drive, each method behave differently.
33 | Method 1: The recommended method. It is safely removing the removable drive. If the drive is in use, the ejection will fail.
34 | Method 2: The drive will be ejected, regardless whether it is in use. Warning: This may cause a loss of data!
35 | Method 3: This method only works with CD or DVD drives.
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Empty_recycle_bin.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Empty recycle bin
11 |
12 | The action Empty recycle bin empties the recycle bin.
13 |
14 |
15 | Be careful using that action. It may cause loss of data.
16 |
17 | Settings
18 |
19 |
20 |
21 | Which drive
22 | If All files is selected, the recycle bin for all drives will be emptied.
23 | If Specified drive is selected, only the recycle bin for the specified drive will be emptied. The drive is specified by its letter.
24 |
25 |
26 |
27 |
28 |
29 | Examples
30 |
31 |
32 |
33 | Empty recycle bin for the drive C.
34 |
35 |
36 |
37 | Which drive
38 |
39 |
40 | Specified drive
41 | C:\
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Execute_Flow.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Execute flow
11 |
12 | The action Execute flow executes a flow. The target trigger must be enabled.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which flow
20 | Choose which flow should be executed.
21 |
22 |
23 |
24 |
25 | Which trigger
26 | Choose which trigger should be executed. You can choose any of the manual triggers.
27 | The trigger must be enabled, otherwise the action will throw an exception by default.
28 |
29 |
30 |
31 |
32 |
33 | Options
34 | If Send local variables is checked, all local variables from the current instance will be sent to the executed flow.
35 | If Skip disabled flow is checked, the action will not throw an error if the target flow is not enabled.
36 | If Wait for called flow to finish is checked, the action will wait until the target flow has finished.
37 | If Return variables to the calling flow is checked, all generated variables in the target flow will be sent back after it finishes.
38 |
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Exponentiation.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Exponentiation
11 |
12 | The action Exponentiation performs an exponentiation.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Base
26 | The base.
27 |
28 |
29 |
30 |
31 | Exponent
32 | The exponent.
33 |
34 |
35 |
36 |
37 | Remarks
38 |
39 | The formula of the calculation is: Base^Exponent = Result
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Extract_files.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Extract files
11 |
12 | The action Extract files extracts files from an archive.
13 | Following formats are supported: zip, 7z, xz, tar, gzip, BZIP2, Z, lzma
14 |
15 |
16 | Settings
17 |
18 |
19 |
20 | Source archive
21 | Path of the archive file.
22 |
23 |
24 |
25 |
26 | Destination folder
27 | Folder where the files from the archive will be extracted.
28 |
29 |
30 |
31 |
32 | Options
33 | Format : By default the format of the archive will be automatically determined (*
), however you may choose the expected format.
34 |
35 |
36 |
37 |
38 | Remarks
39 |
40 | This action uses the command line version of 7zip.
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_Clipboard.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get clipboard
11 |
12 | The action Get clipboard copies the containing text of the clipboard to a variable.
13 |
14 |
15 | Only text will be imported. If clipboard contains binary data, the variable will contain an empty string.
16 |
17 | Settings
18 |
19 |
20 |
21 | Variable name
22 | Name of the variable which will contain the clipboard text.
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_Screen_Settings.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get screen settings
11 |
12 | The action Get screen settings retrieves some attributes of a screen.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which screen
20 | Select a screen.
21 | If your computer has only one screen, specify 1.
22 |
23 |
24 |
25 |
26 |
27 | Output variables
28 | Name of the variables which will contain the retrieved settings. If a attribute is not needed, the corresponding field can be left empty.
29 |
30 |
31 |
32 |
33 | Remarks
34 |
35 | Not every screen supports those settings.
36 | This action requires Windows Vista or later.
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_Volume.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get volume
11 |
12 | The action Get volume gets the master volume of the first sound device.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_file_attributes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get file attributes
11 |
12 | The action Get file attributes retrieves the attributes (read-only, hidden, etc) of a file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | File path
26 | Name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
27 |
28 |
29 |
30 |
31 | Remarks
32 |
33 | The result string will contain a subset of the letters in the string RASHNDOCT
:
34 |
35 |
36 | R
= READONLY
37 |
38 | A
= ARCHIVE
39 |
40 | S
= SYSTEM
41 |
42 | H
= HIDDEN
43 |
44 | N
= NORMAL
45 |
46 | D
= DIRECTORY
47 |
48 | O
= OFFLINE
49 |
50 | C
= COMPRESSED
51 |
52 | T
= TEMPORARY
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_file_size.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get file size
11 |
12 | The action Get file size retrieves the size of a file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | File path
26 | Name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
27 |
28 |
29 |
30 |
31 | Unit
32 | Specify the unit of the file size.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_file_time.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get file time
11 |
12 | The action Get file time retrieves a datetime stamp of a file or folder.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | File path
26 | Name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
27 |
28 |
29 |
30 |
31 | Which time
32 | Specify whether the Modification time , Creation time or the Last access time should be retrieved
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_from_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get from list
11 |
12 | The action Get from list retrieves a value from an existing list.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the value.
21 |
22 |
23 |
24 |
25 | Input list
26 | Name of the variable which contains the list.
27 |
28 |
29 |
30 |
31 | Key or position
32 | Specify the position or key of the value to retrieve.
33 | If First position is selected, the first value (usually with the key 1) will be retrieved.
34 | If Last position is selected, the first value with the highest key will be retrieved.
35 | If Following position or key is selected, the specified key will be retrieved.
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_index_of_element_in_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get index from element in list
11 |
12 | The action Get index from element in list searches for an item in the list with the specified value.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the value.
21 |
22 |
23 |
24 |
25 | Input list
26 | Name of the variable which contains the list.
27 |
28 |
29 |
30 |
31 | Seeked content
32 | Specify a string or a number that should be searched.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_list_info.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get list info
11 |
12 | The action Get list info gets an information about a list.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the value.
21 |
22 |
23 |
24 |
25 | Input list
26 | Name of the variable which contains the list.
27 |
28 |
29 |
30 |
31 | Which info
32 | Information that will be retrieved.
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_mouse_position.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get mouse position
11 |
12 | The action Get mouse position retrieves the mouse position.
13 | It can also retrieve information about the window ID and control ID beneath the mouse.
14 |
15 |
16 | Settings
17 |
18 |
19 |
20 | Output variables
21 | Names of the variables which will contain the result.
22 | You can choose the reference point of the coordinates.
23 |
24 |
25 |
26 |
27 |
28 | Additional information
29 | Choose whether the window ID and control ID beneath the mouse should be retrieved as well.
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_pixel_color.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get pixel color
11 |
12 | The action Get pixel color retrieves the color of the pixel at the specified coordinates.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variables
20 | Name of the variables which will contain the color of the pixel.
21 | You can choose whether a variable should contain the RGB value of the color or whether three variables will contain a value between 0 and 255 for each color. Or both.
22 |
23 |
24 |
25 |
26 |
27 | Position
28 | Specify the coordinates of the pixel which color will be retrieved.
29 | You can choose the reference point of the coordinates.
30 |
31 |
32 |
33 |
34 |
35 | Method
36 | There are three methods to get the pixel color.
37 | This parameter may be changed if this action does not produce accurate result for the desired application.
38 |
39 |
40 |
41 |
42 |
43 |
44 | Remarks
45 |
46 | The pixel must be visible; in other words, it is not possible to retrieve the pixel color of a window hidden behind another window. By contrast, pixels beneath the mouse cursor can usually be detected. The exception to this is game cursors, which in most cases will hide any pixels beneath them.
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_shortcut_information.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get shortcut information
11 |
12 | The action Get shortcut information retrieves information about a shortcut (.lnk) file, such as its target file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Shortcut path
20 | The path of the shortcut file to be analyzed. Be sure to include the .lnk
extension.
21 |
22 |
23 |
24 |
25 | Output variables
26 | Names of the variables that will contain the retrieved informations. The fields may be empty, if those informations are not required.
27 | Target path : The shortcut's target (not including any arguments it might have)
28 |
Target arguments : The shortcut's parameters (blank if none).
29 |
Working directory : The shortcut's working directory.
30 |
Description : The shortcut's comments (blank if none).
31 |
Icon path : The filename of the shortcut's icon (blank if none).
32 |
Icon number : The the shortcut's icon number within the icon file (blank if none). This value is most often 1, which means the first icon.
33 |
Run mode : The shortcut's initial launch state, which is one of the following strings: Normal
, Maximized
, Minimized
.
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Get_string_length.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get string length
11 |
12 | The action Get string length retrieves how many characters are in a string.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input string
26 | String which characters will be count.
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Hibernate_Computer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Hibernate computer
11 |
12 | The action Hibernate computer hibernates the computer.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Kill_Process.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Kill process
11 |
12 | The action Kill process terminates a process.
13 |
14 | Be careful using that action. It may cause loss of data.
15 |
16 | Settings
17 |
18 |
19 |
20 | Process name or ID
21 | Name or ID of the process.
22 |
23 |
24 |
25 |
26 | Supplied Variables
27 |
28 |
29 |
30 | A_PID
31 | Former Process ID of the terminated process
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/List_Drives.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | List drives
11 |
12 | The action List drives lists all drives in the system.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the list of found drives.
21 |
22 |
23 |
24 |
25 | Drive type
26 | If Find all drives is selected, all drives types are retrieved.
27 | If Get only a specific type of drive is selected, you can choose which type of drive are retrieved.
28 |
29 |
30 |
31 |
32 |
33 | If no drive can be found
34 | Choose whether the variable will be empty or this action should throw an exception if no drive can be found.
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Lock_Computer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Lock computer
11 |
12 | The action Lock computer locks the computer.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Log_off.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Log off
11 |
12 | The action Log off logs off the user.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Message_Box.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Message box
11 |
12 | The action Message box displays a window with a message.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Title and Message
20 | Message shown to the user.
21 |
22 |
23 |
24 |
25 | Button Text
26 | Enter the text which will be shown as the OK button.
27 |
28 |
29 |
30 |
31 | Timeout
32 | If Define timeout is selected, the dialog will automatically close after the specified amount of time.
33 | Result on timeout : If timeout reaches zero, the action will end with the specified result.
34 |
35 |
36 |
37 |
38 |
39 | Width and height
40 | Specify the size of the window that will be shown. Make sure, that the window is not too small.
41 |
42 |
43 |
44 |
45 | Cancelling
46 | If Show cancel button is selected, a second button near to the OK button will be shown. The text can be specified.
47 | Result if cancelled : If uses either closes the window or clicks on the cancel button, the action will end with the specified result.
48 |
49 |
50 |
51 |
52 |
53 | Supplied Variables
54 |
55 |
56 |
57 | A_UserAction
58 | The operation used to close the dialog. Can be one of:
59 | ok : when the user pressed the OK-button
60 | timeout : when the dialog was closed by a timeout
61 | cancel : when the user pressed the back key and the appropriate option is set
62 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Minimize_all_windows.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Minimize all windows
11 |
12 | The action Minimize all windows minimizes all windows. It can also undo the action.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Event
20 | If Minimize all windows is selected, all current visible windows will be minimized.
21 | The option Undo is used after minimization of all windows. This restores all previously minimized windows.
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Move_mouse.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Move mouse
11 |
12 | The action Move mouse simulates a mouse movement. The coordinates can be specified.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Mouse position
20 | The mouse will be moved to the specified position.
21 |
22 |
23 |
24 |
25 | Method
26 | There are different methods to simulate mouse events. If the mouse movement is not recognized by the application using the default method, you may try to change it.
27 | Input mode has best performance and is the recommended one in most cases. It does not allow to set mouse movement speed.
28 | Event mode has lower performance.
29 | Play mode may require to disable the UAC to work. It may work better in games. It does not allow to set mouse movement speed.
30 |
31 |
32 | Input mode can only be used in one AutoHotFlow instance. If you run multiple AutoHotFlow instances simultanously, the second instance will not be able to use it. Also other applications and AutoHotkey scripts may block the input mode. If Input mode is blocked, it will automatically fall back to Event mode .
33 |
34 |
35 |
36 |
37 |
38 | Mouse movement speed
39 | The mouse movement speed can be changed here.
40 | If Input mode or Play mode is selected, the mouse will always move instantly.
41 |
42 |
43 |
44 |
45 |
46 | Delay in ms
47 | Specify the delay between each mouse action. It will be effective between every mouse click and between mouse movements.
48 | If Input mode is selected, the delay will always be 0 and this option will have no effect.
49 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/New_List.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | New list
11 |
12 | The action New list creates a new list, and initialize it with some data.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which will contain the list.
21 |
22 |
23 |
24 |
25 | Number of elements
26 | The new list can be empty.
27 | Optionally one or multiple elements can be initially added to the list.
28 |
29 |
30 |
31 |
32 |
33 | Content to add
34 | If Initialize with one element is selected, this field can contain either a value or an expression.
35 | If Initialize with multiple elements is selected, this multiline field can contain one or multiple values that will be added. Specify which delimiter will be used. The default setting is a new element in each line.
36 |
37 |
38 |
39 |
40 | Key
41 | Specify the position or key of insertion.
42 | If Numerically as first element is selected, the value(s) will be added numerically as the first item(s) with the index 1 (, 2, …).
43 | If Following key is selected, the value(s) will be added into a specified numerically position. If only one element will be added, any key name can be specified.
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/New_Time.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | New time
11 |
12 | The action New time creates a new timestamp.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Time
26 | Specify the date and time that should be stored to the variable.
27 |
28 |
29 |
30 |
31 | Remarks
32 |
33 | The current timestamp is always accessible in the built in variable a_now
.
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/New_Variable.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | New variable
11 |
12 | The action New variable creates a new variable with a specified value.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which will contain the value.
21 |
22 |
23 |
24 |
25 | Value
26 | The content of the variable.
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Play_Sound.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Play sound
11 |
12 | The action Play sound plays a system sound, or any sound file of supported type.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Select sound
20 | There is a selection of standard system sounds.
21 | If Sound file is selected, specify the name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
22 |
23 |
24 |
25 |
26 |
27 | Preview
28 | You can start and stop the sound
29 | The sound playback will not automatically stop when you close the element settings window.
30 |
31 |
32 |
33 |
34 | Remarks
35 |
36 | Only one sound can be played simuntaneously. If this action is executed while an other sound is playing, it will stop the playback and play the new sound.
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Random_number.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Random number
11 |
12 | The action Random number creates a new variable. The output variable will be of same type as the input variable.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Variable name
20 | Name of the variable which will contain the copy.
21 |
22 |
23 |
24 |
25 | Minimum value and Maximum value
26 | A number, variable or expression.
27 | If both numbers are integers, the generated number will be an integer. If one of them is a floating point, the generated number will be a floating point.
28 |
29 |
30 |
31 |
32 |
33 | Examples
34 |
35 |
36 |
37 | Get an integer between 1 and 10.
38 |
39 |
40 |
41 | Minimum value
42 |
43 |
44 | 1
45 |
46 |
47 |
48 |
49 | Maximum value
50 |
51 |
52 | 10
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 | Get a floating point number between -10 and 10.
61 |
62 |
63 |
64 | Minimum value
65 |
66 |
67 | -10.0
68 |
69 |
70 |
71 |
72 | Maximum value
73 |
74 |
75 | 10.0
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Read_from_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Read from file
11 |
12 | The action Read from file reads the content of a file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | File path
26 | Path of the file which contents will be read.
27 | The file path is assumed to be in the working directory if an absolute path isn't specified.
28 |
29 |
30 |
31 |
32 |
33 | Encoding
34 | The text in the files may be encoded differently. If the encoding is not set correctly, some of the characters can't be read properly.
35 |
36 |
37 |
38 |
39 | Size limit
40 | The amount of read data can be limited.
41 |
42 |
43 |
44 |
45 | Linefeed
46 | Standard text files in windows use a carriage return & linefeed when there is a line break. It might be useful to replace the two characters with a single linefeed.
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Read_from_ini.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Read from ini
11 |
12 | The action Read from ini reads a value from a standard format .ini file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Path of .ini file
26 | Path of the file.
27 | The file path is assumed to be in the working directory if an absolute path isn't specified.
28 |
29 |
30 |
31 |
32 |
33 | Action
34 | If Read a key is checked, only one key will be read and its value will be stored to the output variable.
35 | If Read the entire section is checked, the entire section will be stored to the output variable. Comments and empty lines are omitted. Only the first 65,533 characters of the section are retrieved.
36 | If Read the section names is checked, a list of all section names will be stored to the output variable.
37 |
38 |
39 |
40 |
41 |
42 | Section and Key
43 | The section and the key that contain the value.
44 | One or both of the options may be disabled, depending on the choice in Action.
45 |
46 |
47 |
48 |
49 |
50 | Behavior on error
51 | This option is only available if Read a key is checked.
52 | If the file, section or key won't be found, the action could throw an exception or write a default value in the variable.
53 |
54 |
55 |
56 |
57 |
58 | Remarks
59 |
60 | A standard ini file looks like this:
61 |
62 |
63 |
64 | [SectionName]
65 | Key=Value
66 |
67 |
68 |
69 |
70 |
71 |
72 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Rename_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Rename file
11 |
12 | The action Rename file renames one file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Source file
20 | The name of a single file.
21 | The file is assumed to be in the working directory if an absolute path isn't specified.
22 |
23 |
24 |
25 |
26 |
27 | New name
28 | The new file name including extension.
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Rename_folder.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Rename folder
11 |
12 | The action Rename folder renames one folder.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Source folder
20 | The name of a single folder.
21 | The folder is assumed to be in the working directory if an absolute path isn't specified.
22 |
23 |
24 |
25 |
26 |
27 | New name
28 | The new folder name.
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Replace_in_a_string.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Replace in a string
11 |
12 | The action Replace in a string replaces the specified substring with a new string.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input string
26 | The input string.
27 |
28 |
29 |
30 |
31 | Text to search
32 | The string to search for.
33 |
34 |
35 |
36 |
37 | Replace by
38 | Found text will be replaced with this text.
39 | If blank, the found text will be deleted.
40 |
41 |
42 |
43 |
44 |
45 | Number of replacements
46 | Either one occurrence other all occurrences can be replaced.
47 |
48 |
49 |
50 |
51 | Case sensitivity
52 | If Case insensitive is selected, the character case will be ignored. For example if the input string is “Hello World”, the search text “world” will match.
53 | If Case sensitive is selected, the character case will not be ignored.
54 |
55 |
56 |
57 |
58 |
59 | Supplied Variables
60 |
61 |
62 |
63 | a_numberOfReplacements
64 | Number of replacements that were performed.
65 |
66 |
67 |
68 |
69 |
70 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Rounding_a_number.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Rounding a number
11 |
12 | The action Rounding a number finds the next integer number to another number or cuts off some digits after comma.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input number
26 | The input number.
27 |
28 |
29 |
30 |
31 | Places after comma
32 | If this field contains 0, the result will be an integer.
33 | If field contains a positive integer, that many digits after comma will remain.
34 | If field contains a negative integer, that many digits before comma will be zero.
35 |
36 |
37 |
38 |
39 | Operation
40 | If Round normally is selected, the nearest integer will be found.
41 | It is also possible to round up or to round down.
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Script.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Script
11 |
12 | The action Script allows to execute a script.
13 |
14 | This action is in a very early stage and the scripting language is not complete. There is no detailed help available yet. Compatibilty breaking changes are likely in future.
15 |
16 | Settings
17 |
18 |
19 |
20 | Script
21 | Script that will be executed
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Search_in_a_string.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Search in a string
11 |
12 | The action Search in a string searches for the position of the specified substring in a string.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable
20 | Name of the variable which will contain the result. This is the position of the substring.
21 |
22 |
23 |
24 |
25 | Input string
26 | A string whose contents will be read from.
27 |
28 |
29 |
30 |
31 | Text to search
32 | The string to search for.
33 |
34 |
35 |
36 |
37 | Which occurrence
38 | Defines which occurrence from left or right will be found.
39 |
40 |
41 |
42 |
43 | Start position
44 | Defines the offset from left or right where the search begins. Position 1 is the first character.
45 |
46 |
47 |
48 |
49 | Case sensitivity
50 | If Case insensitive is selected, the character case will be ignored. For example if the input string is “Hello World”, the search text “world” will match.
51 | If Case sensitive is selected, the character case will not be ignored.
52 |
53 |
54 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Select_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Select file
11 |
12 | The action Select file displays a standard dialog that allows the user to select one or multiple file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 | If Options -> Allow to select multiple files is selected, the result will be a list instead of a string.
22 |
23 |
24 |
25 |
26 |
27 | Prompt
28 | Text displayed in the window to instruct the user what to do.
29 |
30 |
31 |
32 |
33 | Root directory
34 | The name of a single file or folder. This file or folder will be the preselected file or folder when the dialog appars.
35 | The file path is assumed to be in the working directory if an absolute path isn't specified.
36 |
37 |
38 |
39 |
40 |
41 | Filter
42 | Indicates which types of files are shown by the dialog.
43 |
44 |
45 |
46 |
47 | Options
48 | Some further options can be set here.
49 |
57 |
58 |
59 |
60 |
61 | Options
62 | Some further options can be set here.
63 |
64 |
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Select_folder.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Select folder
11 |
12 | The action Select folder displays a standard dialog that allows the user to select a folder.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Prompt
26 | Text displayed in the window to instruct the user what to do.
27 |
28 |
29 |
30 |
31 | Root directory
32 | The name of a single file or folder. This file or folder will be the preselected file or folder when the dialog appars.
33 | The file path is assumed to be in the working directory if an absolute path isn't specified.
34 |
35 |
36 |
37 |
38 |
39 | Options
40 | Some further options can be set here.
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Send_keystrokes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Send keystrokes
11 |
12 | The action Send keystrokes sends simulated keystrokes and mouse clicks to the active window.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Keys or text to send
20 | Specify the keys that will be sent.
21 | If Raw mode is selected, the entered string will be sent as is.
22 | If Raw mode is not selected, some keys can be declared as described in the section Remarks.
23 |
24 |
25 |
26 |
27 |
28 | Method
29 | There are different methods to simulate keyboard events. If the sent keys are not recognized by the application using the default method, you may try to change it.
30 | Input mode has best performance and is the recommended one in most cases.
31 | Event mode has lower performance.
32 | Play mode may require to disable the UAC to work. It may work better in games.
33 |
34 |
35 | Input mode can only be used in one AutoHotFlow instance. If you run multiple AutoHotFlow instances simultanously, the second instance will not be able to use it. Also other applications and AutoHotkey scripts may block the input mode. If Input mode is blocked, it will automatically fall back to Event mode .
36 |
37 |
38 |
39 |
40 |
41 | Remarks
42 |
43 |
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_Clipboard.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set clipboard
11 |
12 | The action Set clipboard sets the content of the clipboard.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | New clipboard content
20 | Text to write into clipboard. If this field is empty, the clipboard will be cleared.
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_Flow_Status.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set flow status
11 |
12 | The action Set flow status enables or disables one or all triggers of a flow.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | New state
20 | Choose whether the trigger(s) will be enabled or disabled.
21 |
22 |
23 |
24 |
25 | Which flow
26 | Choose which flow state should be changed.
27 |
28 |
29 |
30 |
31 | Which trigger
32 | Choose which trigger(s) should be enabled or disabled. Either all, or the default trigger, or any other trigger can be selected.
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_Process_Priority.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set process priority
11 |
12 | The action Set process priority sets the priority level of a process.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Process name or ID
20 | Name or ID of the process.
21 |
22 |
23 |
24 |
25 | Priority
26 | Specify the priority to set.
27 | Any process not designed to run at Realtime priority might reduce system stability if set to that level.
28 |
29 |
30 |
31 |
32 | Supplied Variables
33 |
34 |
35 |
36 | A_PID
37 | Process ID of the found process
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_Volume.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set volume
11 |
12 | The action Set volume sets the master volume of the first sound device.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Action
20 | Specify which action should be done.
21 |
22 |
23 |
24 |
25 | Mute settings
26 | If Set mute state is selected, specify which mute state to set.
27 |
28 |
29 |
30 |
31 | Absolute volume
32 | If Set a specific volume is selected, specify the new volume from 0 to 100 %.
33 |
34 |
35 |
36 |
37 | Relative volume
38 | If Increase or decrease volume is selected, specify by how many percent the volume should be increased or decreased.
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_element_parameter.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set element parameter
11 |
12 | The action Set element parameter changes a parameter of an element
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which flow
20 | Choose a flow.
21 |
22 |
23 |
24 |
25 | Which trigger
26 | Choose an element.
27 |
28 |
29 |
30 |
31 | Which parameter
32 | Choose an element parameter.
33 |
34 |
35 |
36 |
37 | New value
38 | Definde the new value. After selection of a parameter, one of the controls will be enabled where the new value can be set.
39 |
40 |
41 |
42 |
43 | Remarks
44 |
45 | If a parameter of a trigger is changed, the trigger will be disabled and reenabled. This will activate the new parameter.
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_file_attributes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set file attributes
11 |
12 | The action Set file attributes sets a timestamp of a file or folder.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | File path
20 | Name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
21 |
22 |
23 |
24 |
25 | Attributes
26 | The attributes to change.
27 |
28 |
29 |
30 |
31 | Options
32 | This action can perform on files, forlder or both. It can also iterate in the subfolders.
33 |
34 |
35 |
36 |
37 | Examples
38 |
39 |
40 |
41 | Hide all files in a folder.
42 |
43 |
44 |
45 | File path
46 |
47 |
48 | %A_MyDocuments%\exampleFolder\*
49 |
50 |
51 |
52 |
53 | Attributes
54 |
55 |
56 | ☑ Hidden ▣ all others
57 |
58 |
59 |
60 |
61 | Options
62 |
63 |
64 | ◉ Operate on files ☐ Recurse into subfolders
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_file_time.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Get file attributes
11 |
12 | The action Get file attributes retrieves the attributes (read-only, hidden, etc) of a file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | File path
20 | Name and path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
21 |
22 |
23 |
24 |
25 | New time
26 | The timestamp to set. The timestamp has the format YYYYMMDDHH24MISS
.
27 |
28 |
29 |
30 |
31 | Which time.
32 | Which time to change.
33 |
34 |
35 |
36 |
37 | Options
38 | This action can perform on files, forlder or both. It can also iterate in the subfolders.
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Set_lock_key.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Set lock key
11 |
12 | The action Set lock key sets the state of one of the lock keys.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which lock key
20 | Specify which lock key should be changed.
21 |
22 |
23 |
24 |
25 | Status to set
26 | Specify whether the flow should be enabled or disabled.
27 | If On or Off is selected, the key is turned on or off.
28 | If Toggle is selected, the key state will be toggled.
29 | If Always on or Always off is selected, the key is turned on or off and forces the key to stay in this state permanently.
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Shuffle_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Shuffle list
11 |
12 | The action Shuffle list shuffles all entries that have a numeric key in a list.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output list name
20 | Name of the variable which will contain the shuffled list. It can be the same as the input list.
21 |
22 |
23 |
24 |
25 | Input list
26 | Input list.
27 |
28 |
29 |
30 |
31 | Remarks
32 |
33 | Only numeric keys will be shuffled. If the list contains keys that are not a number, they will remain unchanged.
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Speech_output.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Speech output
11 |
12 | The action Speech output uses an installed text to speech engine to read some text.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Text to speak
20 | Text that should be spoken.
21 |
22 |
23 |
24 |
25 | Wait options
26 | If Wait until previous speech output has finished is selected, the flow will pause if the text to speech is currently used by an other element. Otherwise either the current speech output will be interrupted and a new one will be started.
27 | If Wait until current speech output finishes is selected, the flow will pause until the speech output will finish.
28 |
29 |
30 |
31 |
32 |
33 | Speech engine
34 | This list contains all installed speech engines of your computer. Select one of them.
35 | AutoHotFlow tries to preselect a speech engine that has the same language as the OS language.
36 |
37 |
38 |
39 |
40 |
41 | Volume
42 | Specify the volume from 0 to 100 %.
43 | A volume of 100 % means that it will be spoken with the current sound volume.
44 |
45 |
46 |
47 |
48 |
49 | Speed
50 | Specify the speed of the speech.
51 |
52 |
53 |
54 |
55 | Pitch
56 | Specify the pitch of the speech.
57 |
58 |
59 |
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Split_a_string.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Split a string
11 |
12 | The action Split a string splits a string into a list of substrings using the specified delimiters.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output list name
20 | Name of the variable which will contain the list with the results.
21 |
22 |
23 |
24 |
25 | Input string
26 | A string whose contents will be read from.
27 |
28 |
29 |
30 |
31 | Delimiter characters
32 | This field contains the separator characters (case sensitive). On every appearance of one of those characters the input text will be split into substrings.
33 | If this field is blank, each character of the input string will be treated as a separate substring.
34 | Each letter is a delimiter. Don't separate the delimiters by a comma or space, unless you want the comma or space to be a delimiter.
35 |
36 | Examples:
37 |
38 | ,
(Use comma as delimiter)
39 |
40 | %a_space%%a_tab%%a_lf%%a_cr%
(separate by whitespaces)
41 |
42 | %delimiters%
(variable that contains the delimiters)
43 |
44 | ab c
(use the letters a , b , c and a space as delimiter)
45 |
46 |
47 |
48 |
49 |
50 | Omit characters
51 | This field contains the characters (case sensitive) to exclude from the beginning and end of each substring.
52 | This field can be blank.
53 |
54 | Examples:
55 |
56 | ,.:;-!?
(Omit punctuation characters)
57 |
58 | %a_space%%a_tab%%a_lf%%a_cr%
(omit whitespaces)
59 |
60 |
61 |
62 |
63 |
64 |
65 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Square_root.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Square root
11 |
12 | The action Square root calculates the square root of a number.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input number
26 | The input number
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Stop_Flow.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Stop flow
11 |
12 | The action Stop flow stops all running instances of a flow.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which flow
20 | Choose which flow should be stopped.
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Stop_Sound.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Stop sound
11 |
12 | The action Stop sound stops a sound that is currently played by AutoHotFlow.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Suspend_Computer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Suspend computer
11 |
12 | The action Suspend computer suspends the computer.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Time_calculation.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Time calculation
11 |
12 | The action Time calculation adds an amount of time to a timestamp.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input time
26 | Input timestamp
27 |
28 |
29 |
30 |
31 | Time to add
32 | The amount of time which will be added to the input timestamp
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Time_difference.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Time difference
11 |
12 | The action Time difference calculates the time difference between two timestamps.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | First input time
26 | First timestamp
27 |
28 |
29 |
30 |
31 | Second input time
32 | Second timestamp
33 |
34 |
35 |
36 |
37 | Which unit
38 | Unit of the resulting time difference
39 |
40 |
41 |
42 |
43 | Remarks
44 |
45 | The formula of the calculation is: FirstInputTime - SecondInputTime = Result
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Trace_Point.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Trace point
11 |
12 | The action Trace point is used to debug the flow.
13 | Trace points can be added anywhere in the flow. With the action Trace point check it is possible to check which trace points have passed.
14 | The trace point can also write a log message and stop the instance if a condtion is true.
15 |
16 |
17 | Settings
18 |
19 |
20 |
21 | ID
22 | ID of the trace point. It can have any id and it helps to identify the correct trace point in the action Trace point check .
23 |
24 |
25 |
26 |
27 | Log message
28 | The trace point can log a message.
29 | This field can be left empty.
30 |
31 |
32 |
33 |
34 |
35 | Stop condition
36 | If the condition is true, the current instance with all its threads will be stopped.
37 | This field can be left empty.
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Trace_Point_Check.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Trace point check
11 |
12 | The action Trace point check is used to debug the flow.
13 | Trace points can be added anywhere in the flow with the action Trace point . With this action it is possible to check which trace points have passed.
14 | You can define freely which trace points must have beed passed and which mustn't have been passed. You can also ignore any trace point.
15 |
16 |
17 | Settings
18 |
19 |
20 |
21 | Trace points which must have been passed
22 | If All trace points is checked, all trace points will be checked.
23 | You may exclude some trace points under Trace points which must not have been passed .
24 | If All trace points is not checked, you can select which trace point will be checked. It is allowed not to select any trace point.
25 | The action will throw an exception if any of the selected tracepoints have not passed until the moment when this action is executed.
26 |
27 |
28 |
29 |
30 | Trace points which must not have been passed
31 | If All trace points is checked, all trace points will be checked.
32 | You may exclude some trace points under Trace points which must have been passed .
33 | If All trace points is not checked, you can select which trace point will be checked. It is allowed not to select any trace point.
34 | The action will throw an exception if any of the selected tracepoints have passed until the moment when this action is executed.
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Trigonometry.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Trigonometry
11 |
12 | The action Trigonometry calculates the sinus, cosine, tangent or the arcsine, arccosine, arctangent of a number.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Output variable name
20 | Name of the variable which will contain the result.
21 |
22 |
23 |
24 |
25 | Input number
26 | The input number.
27 |
28 |
29 |
30 |
31 | Operation
32 | Specify which tigonomic function should be done.
33 |
34 |
35 |
36 |
37 | Unit
38 | Choose whether the input or output number (depending on the operation) is in radians or degrees.
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Write_to_file.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Write to file
11 |
12 | The action Write to file writes some text to a file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Text to write
20 | Text that will be written to the file.
21 |
22 |
23 |
24 |
25 | File path
26 | Path of the file. The file path is assumed to be in the working directory if an absolute path isn't specified.
27 |
28 |
29 |
30 |
31 | Encoding
32 | The text in the files may be encoded differently.
33 | UTF-8 is the recommended encoding.
34 |
35 |
36 |
37 |
38 | Append or overwrite
39 | If Append is selected and the specified file exists, the existing file will remain and text will be written to the end of the file.
40 | If Overwrite is selected and the specified file exists, the file will be overwritten.
41 |
42 |
43 |
44 |
45 |
46 | Linefeed
47 | A line break can be represented either by a single linefeed character or by the two characters linefeed and carriage return.
48 | Standard text files in windows use both characters, a linefeed and a carriage return, when there is a line break.
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/Write_to_ini.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Write to ini
11 |
12 | The action Write to ini writes a value to a standard format .ini file.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Value
20 | Value that will be written in the .ini file.
21 |
22 |
23 |
24 |
25 | Path of .ini file
26 | Path of the file, including extension.
27 | The file path is assumed to be in the working directory if an absolute path isn't specified.
28 |
29 |
30 |
31 |
32 |
33 | Section and Key
34 | The section and the key that will contain the value.
35 |
36 |
37 |
38 |
39 | Remarks
40 |
41 | A standard ini file looks like this:
42 |
43 |
44 |
45 | [SectionName]
46 | Key=Value
47 |
48 |
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/reboot_Computer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Reboot computer
11 |
12 | The action Reboot computer reboots the computer.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Force
20 | If Force is selected, all open applications will be forced to close.
21 | Be careful using that option. It may cause loss of data.
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/shutdown.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Shutdown
11 |
12 | The action Shutdown shuts down the computer.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Force
20 | If Force is selected, all open applications will be forced to close.
21 | Be careful using that option. It may cause loss of data.
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/sleep.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Sleep
11 |
12 | The action Sleep pauses the current thread for a specified amount of time.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Duration
20 | Duration of the sleep.
21 |
22 |
23 |
24 |
25 | Remarks
26 |
27 | If there are other execution instances or threads, other actions will be executed while this sleep action is running.
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Actions/tooltip.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Tooltip
11 |
12 | The action Tooltip displays a tooltip with a message.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Text to show
20 | Message shown to the user.
21 |
22 |
23 |
24 |
25 | Duration
26 | Specify how long the tooltip will be shown.
27 |
28 |
29 |
30 |
31 | Options
32 | If Follow mouse is selected, the tooltip will follow the mouse. If not, the tooltip will remain at its position.
33 |
34 |
35 |
36 |
37 | Remarks
38 |
39 | If another action is executed while the a tooltip is shown, the tooltip will be replaced by the new one.
40 |
41 |
42 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Debug_dialog.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Debug dialog
11 |
12 | The condition Debug dialog is used to debug a flow.
13 | It opens a dialog which allows to view and change all variables and their content. The result of the dialog can be selected.
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Do_nothing.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Do nothing
11 |
12 | The condition Do nothing does nothing.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Result
20 | The result of the execution
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Expression.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Expressions
11 |
12 | The condition Expressions evaluates an expression and decides whether the result is true or false. This is similar to an if-statement in most programming languages.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Expression
20 | Expression to evaluate.
21 | The condition exits with yes if the result of the expression is not 0 or empty.
22 | The condition exits with no if the result is 0 or empty.
23 |
24 | Examples:
25 |
26 | (1 or 0) and 1
(results to 1)
27 |
28 | number > 5 && number <= 7
(results to 1 if number is between 6 or 7)
29 |
30 | Var%VarContainingTwo%
(Accessing variable Var2)
31 |
32 |
33 |
34 |
35 | Remarks
36 |
37 | Read more about expressions in the chapter Variables .
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/File_exists.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | File exists
11 |
12 | The condition File exists checks whether a file or folder exists.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | File path
20 | The name of a single file or folder, or a wildcard pattern.
21 | Both asterisks and question marks are supported as wildcards. A match occurs when the pattern appears in either the file's long/normal name or its 8.3 short name.
22 | The file path is assumed to be in the working directory if an absolute path isn't specified.
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/File_has_attribute.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | File has attribute
11 |
12 | The condition File has attribute checks whether a file or folder has an attribute.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | File path
20 | The name of a single file or folder, or a wildcard pattern.
21 | Both asterisks and question marks are supported as wildcards. A match occurs when the pattern appears in either the file's long/normal name or its 8.3 short name.
22 | The file path is assumed to be in the working directory if an absolute path isn't specified.
23 |
24 |
25 |
26 |
27 |
28 | Which attribute
29 | Select which attribute will be checked.
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Flow_Enabled.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Flow enabled
11 |
12 | The condition Flow enabled checks whether a trigger in a flow is enabled.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which flow
20 | Choose which flow should be checked.
21 |
22 |
23 |
24 |
25 | Which trigger
26 | Choose which trigger(s) should be checked. Either any, or the default trigger, or any other trigger can be selected.
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Flow_Running.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Flow executing
11 |
12 | The condition Flow executing checks whether a flow is executing.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Which flow
20 | Choose which flow should be checked.
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/List_contains_element.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | List contains element
11 |
12 | The condition List contains element checks whether a list contains an item.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Input list
20 | The input list.
21 |
22 |
23 |
24 |
25 | Search for what
26 | It's possible either to search for an index or key or to search for an element with a specific content.
27 |
28 |
29 |
30 |
31 | Key or index
32 | Only accessible if Search for an index or key is selected.
33 | Specify the position or key of the value to retrieve.
34 |
35 |
36 |
37 |
38 |
39 | Seeked content
40 | Only accessible if Search for an element with a specific content is selected.
41 | Enter the value to search for.
42 |
43 |
44 |
45 |
46 |
47 | Supplied Variables
48 |
49 |
50 |
51 | A_FoundKey
52 | This variable is only set if Search for an element with a specific content is selected.
53 | It contains the found key name which contains the searched content.
54 |
55 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Number is.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Number is
11 |
12 | The condition Number is checks whether a number has a specified value. It can compare float values and allow a certain deviation.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Input number
20 | The first number to compare.
21 |
22 |
23 |
24 |
25 | Expected number
26 | The second number to compare.
27 |
28 |
29 |
30 |
31 | Maximum difference.
32 | Maximum absolute and realtive difference of the number.
33 | The relative difference is calculated with the (first) Input number .
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Process_is_running.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Process is running
11 |
12 | The condition Process is running hecks whether a process is running.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Process name or ID
20 | Name or ID of the process.
21 |
22 |
23 |
24 |
25 | Supplied Variables
26 |
27 |
28 |
29 | A_PID
30 | Process ID of the found process.
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/String_contains_text.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | String contains text
11 |
12 | The condition String contains text checks whether a string contains the specified text.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Input string
20 | A string its contents will be read from.
21 |
22 |
23 |
24 |
25 | Text to search
26 | The string to search for.
27 |
28 |
29 |
30 |
31 | Search text position
32 | Specify whether the input string must start or end with the searched text or just contain it anywhere.
33 |
34 |
35 |
36 |
37 | Case sensitivity
38 | If Case insensitive is selected, the character case will be ignored. For example if the input string is “Hello World”, the search text “world” will match.
39 | If Case sensitive is selected, the character case will not be ignored.
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/Variable_is_empty.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Variable is empty
11 |
12 | The condition Variable is empty hecks whether a variable is empty or unset.
13 | The result will be Yes if the variable is either unset or contains nothing.
14 |
15 |
16 | TODOWarning
17 | TODOInfo
18 | Be careful using that action. It may cause loss of data.
19 | This action has low performance, since a new AutoHotkey thread must be started.
20 |
21 | Settings
22 |
23 |
24 |
25 | Variable name
26 | Name of the variable which will be checked.
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Conditions/key_is_down.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Key is down
11 |
12 | The condition Key is down checks whether a key is being held down.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Key name
20 | Name of the key which will be checked.
21 |
22 |
23 |
24 |
25 | Which key state
26 | If Logical is selected, the result will be yes if the key is physically held down and if any other flow holds the key.
27 | If Physical is selected, the result will be yes only if the key is physically held down.
28 |
29 |
30 |
31 |
32 | Remarks
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Loops/Work_through_a_list.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Work through a list
11 |
12 | The loop Work through a list allows to loop over all elements in a list, one at a time.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Input list
20 | The input list. The loop will iterathe through all elements of the list.
21 |
22 |
23 |
24 |
25 | Supplied Variables
26 |
27 |
28 |
29 | A_Index
30 | Index of the current iteration. It starts with the value 1 and increases on every loop.
31 |
32 |
33 |
34 |
35 | A_LoopKey
36 | Position or key of the current element.
37 |
38 |
39 |
40 |
41 | A_LoopField
42 | Value of the current element.
43 |
44 |
45 |
46 |
47 | Remarks
48 |
49 | All supplied variables will be removed after last iteration.
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Loops/condition.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Condition
11 |
12 | The loop Condition evaluates an expression on each iteraction and continues only if the condition result is true.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Condition
20 | Expression to evaluate on each iteration.
21 | If Evaluate on first iteration is checked, the condition will be checked before first iteration. If it is not checked, the first iteration will be always performed, with no regard whether the condition is true or not.
22 | Examples:
23 |
24 | a_index <= 10
(performs 10 iterations)
25 |
26 | VariableContainingBreakCondition
(continues as long as the variable is not false)
27 |
28 |
29 |
30 |
31 | Supplied Variables
32 |
33 |
34 |
35 | A_Index
36 | Index of the current iteration. It starts with the value 1 and increases on every loop.
37 |
38 |
39 |
40 |
41 | Remarks
42 |
43 | The supplied variable will be removed after last iteration.
44 |
45 |
46 | Read more about expressions in the chapter Variables .
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Loops/simpleloop.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Loop through files
11 |
12 | The loop Loop through files allows to repeat some actions several times.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Repeats
20 | If Endless loop is checked, the loop will never end. The loop can still be left if a connection leads to "break" part.
21 | If Endless loop is not checked, the loop will end after the specified repeats.
22 |
23 |
24 |
25 |
26 | Supplied Variables
27 |
28 |
29 |
30 | A_Index
31 | Index of the current iteration. It starts with the value 1 and increases on every loop.
32 |
33 |
34 |
35 |
36 | Remarks
37 |
38 | The supplied variable will be removed after last iteration.
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Clipboard_Changes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Clipboard changes
11 |
12 | The trigger Clipboard changes triggers whenever the clipboard content changes.
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Manual.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Manual
11 |
12 | The trigger Manual can be triggered manually or via action Execute flow .
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | ID
20 | Name of the trigger. It will help you to identify the correct trigger in dialogs where you have to select a trigger.
21 |
22 |
23 |
24 |
25 | Supplied Variables
26 |
27 |
28 |
29 | A_ManualTriggerID
30 | The ID of the manual trigger.
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Periodic_Timer.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Periodic timer
11 |
12 | The trigger Periodic timer triggers periodically.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Time interval
20 | Specify the time interval.
21 | Be careful if you specify a period smaller than 100 ms. AutoHotFlow might not be able to work that fast!
22 |
23 |
24 |
25 |
26 | Remarks
27 |
28 | It will not trigger on activation, instead the entirety of its period must elapse before it triggers the flow.
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Process_closes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Process closes
11 |
12 | The trigger Process closes triggers whenever a process closes.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Process name or ID
20 | Name or ID of the process.
21 | This field can be left empty, it will trigger whenever any process closes.
22 |
23 |
24 |
25 |
26 | Options
27 | Specify the check interval in ms.
28 | Be careful if you specify a period smaller than 1000 ms. It might sometimes trigger multiple times when a process closes.
29 |
30 |
31 |
32 |
33 | Supplied Variables
34 |
35 |
36 |
37 | A_ProcessID
38 | ID of the closed process.
39 |
40 |
41 |
42 |
43 | A_ProcessName
44 | Name of the closed process.
45 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Process_starts.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Process starts
11 |
12 | The trigger Process starts triggers whenever a process starts.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Process name or ID
20 | Name or ID of the process.
21 | This field can be left empty, it will trigger whenever any process starts.
22 |
23 |
24 |
25 |
26 | Options
27 | Specify the check interval in ms.
28 | Be careful if you specify a period smaller than 1000 ms. It might sometimes trigger multiple times when a process starts.
29 |
30 |
31 |
32 |
33 | Supplied Variables
34 |
35 |
36 |
37 | A_ProcessID
38 | ID of the started process.
39 |
40 |
41 |
42 |
43 | A_ProcessName
44 | Name of the started process.
45 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Shortcut.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Shortcut
11 |
12 | The trigger Shortcut reates a shortcut file which can be launched to trigger the flow.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Path of the shortcut
20 | Path of the shortcut file. The file path is assumed to be in the working directory if an absolute path isn't specified. The shortcut must have the extension .lnk
21 |
22 |
23 |
24 |
25 | Options
26 | If Remove shortcut when disabling is selected, the shortcut will be deleted, when the trigger is disabled.
27 |
28 |
29 |
30 |
31 | Remarks
32 |
33 | The shortcut will not trigger the flow if it is disabled.
34 | If AutoHotFlow is not running, the shortcut will start it. After start, it will trigger the flow, if the trigger is enabled.
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Start_up.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Start up
11 |
12 | The trigger Start up triggers either when the computer boots or when AutoHotFlow starts.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Trigger event
20 | If AutoHotFlow startup is selected, the trigger will trigger whenever AutoHotFlow starts.
21 | If Windows startup is selected, the trigger will trigger whenever Windows starts. It works only if AutoHotFlow is configured to start with windows.
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/Time_of_Day.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Time of day
11 |
12 | The trigger Time of day triggers on specifed time of day.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Weekdays
20 | Weekdays on which the flow will start.
21 |
22 |
23 |
24 |
25 | Time of day
26 | Time when the flow will start.
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Source_Elements/Default/help/en/Triggers/User_Idle_Time.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | User idle time
11 |
12 | The trigger User idle time triggers whenever the user is inactive for a specified amount of time.
13 |
14 |
15 | Settings
16 |
17 |
18 |
19 | Period of time
20 | The amount of time the user has to be idle before the trigger triggers.
21 |
22 |
23 |
24 |
25 | Method
26 | If Method: Default is selected, every physical user input and simulated user input (e.g. using action Send keystrokes ) will reset the timer.
27 | If Method: Physical is selected, only physical user input will reset the timer.
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Source_Elements/Default/language/.gitignore:
--------------------------------------------------------------------------------
1 | *_removed.ini
2 |
--------------------------------------------------------------------------------
/Source_Elements/Default/language/de.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/language/de.ini
--------------------------------------------------------------------------------
/Source_Elements/Default/language/en.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/language/en.ini
--------------------------------------------------------------------------------
/Source_Elements/Default/language/ko.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/language/ko.ini
--------------------------------------------------------------------------------
/Source_Elements/Default/language/ru.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/Source_Elements/Default/language/ru.ini
--------------------------------------------------------------------------------
/Source_Main/Hidden window/Hidden window.ahk:
--------------------------------------------------------------------------------
1 | ;The hidden window can receive messages from other processes.
2 | ;The initial purpose is to allow the trigger "shortcut". This trigger creates a shortcut.
3 | ;The shortcut starts the AutoHotFlow.ahk/exe and it sends the message to start the trigger to the already running AHF instance.
4 |
5 | ; create a hidden window which will be able to receive commands from outside
6 | CreateHiddenCommandWindow()
7 | {
8 | global
9 | gui, HiddenCommandWindow:add, edit, gHiddenCommandWindowOnNewMessage vHiddenCommandWindowEditMessage
10 | gui, HiddenCommandWindow:show, hide, %_ScriptDir% AHF_HIDDEN_COMMAND_WINDOW
11 | }
12 |
13 | ; a new command was pasted in the hidden window.
14 | HiddenCommandWindowOnNewMessage()
15 | {
16 | global HiddenCommandWindowEditMessage
17 |
18 | ; get the command
19 | guicontrolget, newMessage,, HiddenCommandWindowEditMessage
20 |
21 | ; process the command
22 | HiddenCommandWindowProcessMessage(newMessage)
23 | }
24 |
25 | ; Process a command which was passed to the hidden window
26 | HiddenCommandWindowProcessMessage(message)
27 | {
28 | ; split the parts of the message, which are delimited by pipes
29 | messageParsed := Object()
30 | loop, parse, message, |
31 | {
32 | messageParsed.push(A_LoopField)
33 | }
34 |
35 | ; process known commands
36 | if (messageParsed[1] = "trigger")
37 | {
38 | flowID := messageParsed[2]
39 | triggerID := messageParsed[3]
40 |
41 | if (_getElementInfo(flowID, triggerID, "enabled"))
42 | {
43 | API_Execution_ExecuteFlow(flowID, triggerID)
44 | }
45 | }
46 | Else
47 | {
48 | logger("a0", "unknown command received through command window: " substr(messageParsed, 1, 100))
49 | }
50 | }
--------------------------------------------------------------------------------
/Source_Main/Tray/Tray.ahk:
--------------------------------------------------------------------------------
1 |
2 | ; change the tray icon
3 | Menu, tray, Icon, %_ScriptDir%\Icons\mainicon.ico
4 |
5 | ; create tray menu
6 | if a_iscompiled
7 | {
8 | ; delete default menu if compiled
9 | Menu, tray, NoStandard
10 | }
11 | else
12 | {
13 | ; if not compiled, add a delimiter
14 | ;Menu, tray, add
15 | }
16 |
17 | ; add entry to show manager gui and set it to default (action on double click)
18 | Menu, tray, add, % lang("Show Manager"), onTrayMenuShowManagerGUI
19 | Menu, tray, default, % lang("Show Manager")
20 |
21 | ; add entry to exit AHF
22 | Menu, tray, add, % lang("Exit #verb"), exit
23 |
24 |
25 | ; disable default tray menu entries
26 | if (not _settings.developing)
27 | Menu, tray, NoStandard
28 |
29 |
30 | ; Set tooltip of tray icon
31 | Menu, tray, tip, % "AutoHotFlow"
32 |
33 | ; user wants to open the manager gui
34 | onTrayMenuShowManagerGUI()
35 | {
36 | API_Manager_ShowWindow()
37 | }
38 |
--------------------------------------------------------------------------------
/Source_Manager/User Interface/Help.ahk:
--------------------------------------------------------------------------------
1 |
2 | ; Show help file for AHF.
3 | ui_showHelp()
4 | {
5 | global
6 |
7 | ; if a previous help gui is shown, destry it
8 | Gui, Help:Destroy
9 |
10 | ; disable DPI for this gui
11 | gui,Help:-dpiscale
12 |
13 | ; Find the help file
14 | local uiLang := _getSettings("UILanguage")
15 | local helpfilepath := _scriptDir "\Help\" UILang "\index.html"
16 | If not fileexist(helpfilepath)
17 | {
18 | helpfilepath := _scriptDir "\Help\en\index.html"
19 | If not fileexist(helpfilepath)
20 | {
21 | MsgBox, 16, % lang("Error"),% lang("No help file was found")
22 | Return
23 | }
24 | }
25 |
26 | ; show a browser in the gui
27 | Gui, Help:Add, ActiveX, x0 y0 w720 h490 vHelpGuiBrowser, Shell.Explorer
28 | HelpGuiBrowser.Navigate(helpfilepath)
29 |
30 | ; adjust gui appearance
31 | Gui, Help: +ToolWindow
32 | Gui, Help:Color, FFFFFF
33 | Gui, Help: +resize
34 |
35 | ; Find the perfect gui size
36 | SysGet, MonitorWorkArea, MonitorWorkArea
37 | local helpx := MonitorWorkArealeft + 50
38 | local helpy := MonitorWorkAreatop + 50
39 | local helph := MonitorWorkAreabottom - MonitorWorkAreatop - 100
40 | local helpw := MonitorWorkArearight - MonitorWorkArealeft - 100
41 |
42 | ; Show the help gui
43 | Gui, Help:Show, x%helpx% y%helpy% w%helpw% h%helph%,% lang("Help #noun")
44 | Return
45 |
46 | ; user closes help gui
47 | Helpguiclose:
48 | ; destroy the gui
49 | Gui, Help:Destroy
50 | return
51 |
52 | ; user resizes the help gui
53 | helpguisize:
54 | ; move the browser control
55 | guicontrol, move, HelpGuiBrowser ,w%A_GuiWidth% h%A_GuiHeight%
56 | return
57 | }
58 |
--------------------------------------------------------------------------------
/Source_Test/Unit_Tests.ahk:
--------------------------------------------------------------------------------
1 |
2 | #Include %a_scriptdir%\..\lib\Yunit\Yunit.ahk
3 | #Include %a_scriptdir%\..\lib\Yunit\Window.ahk
4 | #Include %a_scriptdir%\..\lib\Yunit\StdOut.ahk
5 |
6 | #include %a_scriptdir%\..\Source_Main\Globals\Global Variables.ahk
7 |
8 |
9 | #include main\Globals\test globals.ahk
10 |
11 | Yunit.Use(YunitStdOut, YunitWindow).Test(main_Globals_TestSuite)
12 |
13 |
--------------------------------------------------------------------------------
/Source_Test/main/Globals/Test globals.ahk:
--------------------------------------------------------------------------------
1 |
2 | class main_Globals_TestSuite
3 | {
4 | Begin()
5 | {
6 | init_GlobalVars()
7 | }
8 |
9 | Test_Vars_exist()
10 | {
11 | global
12 | Yunit.assert(IsObject(_flows) == true)
13 | Yunit.assert(IsObject(_settings) == true)
14 | Yunit.assert(IsObject(_execution) == true)
15 | }
16 |
17 | }
--------------------------------------------------------------------------------
/Tools for contributors/Element creation/help/Index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Hilfe
5 |
--------------------------------------------------------------------------------
/Tools for contributors/Element creation/help/Menu.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | Help
11 |
12 |
13 |
24 |
25 |
--------------------------------------------------------------------------------
/Tools for contributors/Element creation/help/stylesheet.css:
--------------------------------------------------------------------------------
1 | html, table{
2 | font-family: sans-serif;
3 | font-size: 14px;
4 | }
5 | h1 {
6 | color: black;
7 | margin-top: 0.3cm;
8 | margin-bottom: 0.4cm;
9 | page-break-before: "always";
10 | }
11 | h2 {
12 | color: black;
13 | margin-top: 0.3cm;
14 | margin-bottom: 0.4cm;
15 | page-break-before: "always";
16 | }
17 | p.warning {
18 | border-left: 6px solid #ccc!important;
19 | border-color: rgb(255, 0, 0)!important;
20 | background-color: rgb(255, 196, 196);
21 | padding: 0.1em 16px;
22 | }
23 | p.info {
24 | border-left: 6px solid #ccc!important;
25 | border-color: rgb(206, 203, 0)!important;
26 | background-color: rgb(255, 254, 185);
27 | padding: 0.1em 16px;
28 | }
29 | table {
30 | border-color: #000000;
31 | border-width: 2px;
32 | border-style: solid;
33 | border-collapse: collapse;
34 | }
35 |
36 | td {
37 | border-color: #000000;
38 | border-width: 2px;
39 | border-style: solid;
40 | padding: 5px;
41 | }
42 | td.example-parameter {
43 | width: 30%;
44 | padding-right: 10px;
45 | border-width: 1px;
46 | }
47 | td.example-value {
48 | font-family: monospace;
49 | width: 100%;
50 | border-width: 1px;
51 | }
52 | table.settings {
53 | width: 100%;
54 | background-color: #ccffff;
55 | }
56 | table.examples {
57 | width: 100%;
58 | background-color: #ccffcc;
59 | }
60 | table.example {
61 | width: 100%;
62 | background-color: #ccffcc;
63 | border-width: 1px;
64 | }
65 | table.variables {
66 | width: 100%;
67 | background-color: #feffcc;
68 | }
69 |
70 | table.codeblock {
71 | width: 100%;
72 | background-color: #d3d3d3;
73 | font-family: monospace;
74 | }
75 | ul.examples {
76 | background-color: #ccffcc;
77 | border-color: #000000;
78 | border-width: 1px;
79 | border-style: solid;
80 | line-height: 100%;
81 | font-family: monospace;
82 | }
83 |
84 | i {
85 | font-family: sans-serif;
86 | font-weight: normal;
87 | color:rgb(59, 59, 59);
88 | }
89 |
90 | h4 {
91 | font-size: 16px;
92 | }
93 | h4.VariableName {
94 | font-family: monospace;
95 | }
96 | code {
97 | background-color: rgb(228, 228, 228);
98 | }
99 |
100 | iframe {
101 | width: 100%;
102 | height: 80%;
103 | }
104 |
105 |
--------------------------------------------------------------------------------
/Tools for contributors/Element creation/raw templates/template - compatibility.ahk:
--------------------------------------------------------------------------------
1 | LoadFlowCheckCompatibilityElement_Package_&packageName&(p_FlowID, p_ElementID, p_AHFVersion, p_PackageVersion)
2 | {
3 | elementClass := x_getElementClass(p_FlowID, p_ElementID)
4 |
5 | ; example:
6 | /*
7 | if (p_PackageVersion <= 1.1.0)
8 | {
9 | if (elementClass = "Action_MyPackage_MyElement")
10 | {
11 | elementPars := x_getElementPars(p_FlowID, p_ElementID)
12 | if (elementPars.myParam = "")
13 | {
14 | x_setElementPar(p_FlowID, p_ElementID, "myParam", 0)
15 | }
16 | }
17 | }
18 | */
19 | }
--------------------------------------------------------------------------------
/Tools for contributors/Element creation/readme.txt:
--------------------------------------------------------------------------------
1 | There is a documentation how to use the element template creator and much more in the folder "Documentation".
--------------------------------------------------------------------------------
/Tools for contributors/Translation/start translation tool.bat:
--------------------------------------------------------------------------------
1 | start "" ../../AutoHotkey/AutoHotFlow.exe "Translation Tool.ahk"
--------------------------------------------------------------------------------
/Tools for contributors/Translation/stylesheet.css:
--------------------------------------------------------------------------------
1 | html, table{
2 | font-family: sans-serif;
3 | font-size: 14px;
4 | }
5 | h1 {
6 | color: black;
7 | margin-top: 0.3cm;
8 | margin-bottom: 0.4cm;
9 | page-break-before: "always";
10 | }
11 | h2 {
12 | color: black;
13 | margin-top: 0.3cm;
14 | margin-bottom: 0.4cm;
15 | page-break-before: "always";
16 | }
17 | p.warning {
18 | border-left: 6px solid #ccc!important;
19 | border-color: rgb(255, 0, 0)!important;
20 | background-color: rgb(255, 196, 196);
21 | padding: 0.1em 16px;
22 | }
23 | p.info {
24 | border-left: 6px solid #ccc!important;
25 | border-color: rgb(206, 203, 0)!important;
26 | background-color: rgb(255, 254, 185);
27 | padding: 0.1em 16px;
28 | }
29 | table {
30 | border-color: #000000;
31 | border-width: 2px;
32 | border-style: solid;
33 | border-collapse: collapse;
34 | }
35 |
36 | td {
37 | border-color: #000000;
38 | border-width: 2px;
39 | border-style: solid;
40 | padding: 5px;
41 | }
42 | td.example-parameter {
43 | width: 30%;
44 | padding-right: 10px;
45 | border-width: 1px;
46 | }
47 | td.example-value {
48 | font-family: monospace;
49 | width: 100%;
50 | border-width: 1px;
51 | }
52 | table.settings {
53 | width: 100%;
54 | background-color: #ccffff;
55 | }
56 | table.examples {
57 | width: 100%;
58 | background-color: #ccffcc;
59 | }
60 | table.example {
61 | width: 100%;
62 | background-color: #ccffcc;
63 | border-width: 1px;
64 | }
65 | table.variables {
66 | width: 100%;
67 | background-color: #feffcc;
68 | }
69 |
70 | table.codeblock {
71 | width: 100%;
72 | background-color: #d3d3d3;
73 | font-family: monospace;
74 | }
75 | ul.examples {
76 | background-color: #ccffcc;
77 | border-color: #000000;
78 | border-width: 1px;
79 | border-style: solid;
80 | line-height: 100%;
81 | font-family: monospace;
82 | }
83 |
84 | i {
85 | font-family: sans-serif;
86 | font-weight: normal;
87 | color:rgb(59, 59, 59);
88 | }
89 |
90 | h4 {
91 | font-size: 16px;
92 | }
93 | h4.VariableName {
94 | font-family: monospace;
95 | }
96 | code {
97 | background-color: rgb(228, 228, 228);
98 | }
99 |
100 | iframe {
101 | width: 100%;
102 | height: 80%;
103 | }
104 |
105 |
--------------------------------------------------------------------------------
/bin/7-zip.chm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/bin/7-zip.chm
--------------------------------------------------------------------------------
/bin/7za.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/bin/7za.exe
--------------------------------------------------------------------------------
/bin/license.txt:
--------------------------------------------------------------------------------
1 | 7-Zip Command line version
2 | ~~~~~~~~~~~~~~~~~~~~~~~~~~
3 | License for use and distribution
4 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 |
6 | 7-Zip Copyright (C) 1999-2010 Igor Pavlov.
7 |
8 | 7za.exe is distributed under the GNU LGPL license
9 |
10 | Notes:
11 | You can use 7-Zip on any computer, including a computer in a commercial
12 | organization. You don't need to register or pay for 7-Zip.
13 |
14 |
15 | GNU LGPL information
16 | --------------------
17 |
18 | This library is free software; you can redistribute it and/or
19 | modify it under the terms of the GNU Lesser General Public
20 | License as published by the Free Software Foundation; either
21 | version 2.1 of the License, or (at your option) any later version.
22 |
23 | This library is distributed in the hope that it will be useful,
24 | but WITHOUT ANY WARRANTY; without even the implied warranty of
25 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
26 | Lesser General Public License for more details.
27 |
28 | You can receive a copy of the GNU Lesser General Public License from
29 | http://www.gnu.org/
30 |
--------------------------------------------------------------------------------
/bin/readme.txt:
--------------------------------------------------------------------------------
1 | 7-Zip Command line version 9.20
2 | -------------------------------
3 |
4 | 7-Zip is a file archiver with high compression ratio.
5 | 7za.exe is a standalone command line version of 7-Zip.
6 |
7 | 7-Zip Copyright (C) 1999-2010 Igor Pavlov.
8 |
9 | Features of 7za.exe:
10 | - High compression ratio in new 7z format
11 | - Supported formats:
12 | - Packing / unpacking: 7z, xz, ZIP, GZIP, BZIP2 and TAR
13 | - Unpacking only: Z, lzma
14 | - Highest compression ratio for ZIP and GZIP formats.
15 | - Fast compression and decompression
16 | - Strong AES-256 encryption in 7z and ZIP formats.
17 |
18 | 7za.exe is a free software distributed under the GNU LGPL.
19 | Read license.txt for more information.
20 |
21 | Source code of 7za.exe and 7-Zip can be found at
22 | http://www.7-zip.org/
23 |
24 | 7za.exe can work in Windows 95/98/ME/NT/2000/2003/2008/XP/Vista/7.
25 |
26 | There is also port of 7za.exe for POSIX systems like Unix (Linux, Solaris, OpenBSD,
27 | FreeBSD, Cygwin, AIX, ...), MacOS X and BeOS:
28 |
29 | http://p7zip.sourceforge.net/
30 |
31 |
32 | This distributive packet contains the following files:
33 |
34 | 7za.exe - 7-Zip standalone command line version.
35 | readme.txt - This file.
36 | license.txt - License information.
37 | 7-zip.chm - User's Manual in HTML Help format.
38 |
39 |
40 | ---
41 | End of document
42 |
--------------------------------------------------------------------------------
/find modules - only default package.ahk:
--------------------------------------------------------------------------------
1 | #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
2 |
3 | run, "%a_scriptdir%\find modules.ahk" onlyDefaultPackage
--------------------------------------------------------------------------------
/innoSetupScript - Extension Package template.iss:
--------------------------------------------------------------------------------
1 | ; Script generated by the Inno Setup Script Wizard.
2 | ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
3 |
4 | #define MyAppName "AutoHotFlow Extension &packageName&"
5 | #define MyAppVersion "&version&"
6 | #define MyAppPublisher "&author&"
7 | #define MyAppURL "&website&"
8 | #define MyAppExeName "AutoHotFlow.exe"
9 |
10 | ;#expr Exec("C:\Users\bichl\Documents\git\AutoHotFlow\innoSetupPrebuildSteps.exe")
11 |
12 | [Setup]
13 | ; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
14 | ; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
15 | AppId={{504F70A2-A1ED-4593-B177-54425F0E7CAC}
16 | AppName={#MyAppName}
17 | AppVersion={#MyAppVersion}
18 | AppPublisher={#MyAppPublisher}
19 | AppPublisherURL={#MyAppURL}
20 | AppSupportURL={#MyAppURL}
21 | AppUpdatesURL={#MyAppURL}
22 | DefaultDirName={autopf}\{#MyAppName}
23 | DisableProgramGroupPage=yes
24 | LicenseFile=Source_Elements\&packageName&\License.txt
25 | PrivilegesRequiredOverridesAllowed=dialog
26 | OutputBaseFilename={#MyAppName} Setup
27 | Compression=lzma
28 | SolidCompression=yes
29 | WizardStyle=modern
30 | OutputDir=.
31 | SetupIconFile=icons\MainIcon.ico
32 | CreateUninstallRegKey=no
33 | Uninstallable=no
34 |
35 | [Languages]
36 | Name: "english"; MessagesFile: "compiler:Default.isl"
37 |
38 | [Tasks]
39 |
40 | [Icons]
41 |
42 | [Run]
43 | Filename: "{app}\find modules.exe"
44 | Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppExeName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent runasoriginaluser
45 |
46 | [InstallDelete]
47 |
48 | [Files]
49 | &files&
--------------------------------------------------------------------------------
/language/.gitignore:
--------------------------------------------------------------------------------
1 | /*.ini
2 |
--------------------------------------------------------------------------------
/language/basic/.gitignore:
--------------------------------------------------------------------------------
1 | *_removed.ini
2 |
--------------------------------------------------------------------------------
/language/basic/de.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/language/basic/de.ini
--------------------------------------------------------------------------------
/language/basic/ko.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/language/basic/ko.ini
--------------------------------------------------------------------------------
/language/basic/ru.ini:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bichlepa/AutoHotFlow/11c13efd03f07c31235cc146290e16784d0fd137/language/basic/ru.ini
--------------------------------------------------------------------------------
/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "developing": 1,
3 | "FlowExecutionPolicy": "Wait",
4 | "FlowWorkingDir": "C:\\Users\\bichl\\Documents\\AutoHotFlow",
5 | "HideDemoFlows": "0",
6 | "LogLevelApp": "3",
7 | "LogLevelFlow": "3",
8 | "LogLevelThread": "2",
9 | "LogToFile": "1",
10 | "runAsAdmin": "0",
11 | "ShowElementsLevel": "Programmer",
12 | "UILanguage": "en"
13 | }
--------------------------------------------------------------------------------