;-------------------------------------------------------------------------------
; Action Configuration File Guide
;-------------------------------------------------------------------------------
;
; GENERAL GUIDELINES
;
; - We will scan the Actions folder and sub folders for any file named *.b.ini
; - When creating a new action:
;   a. Create a folder in the Actions folder. Name it so it is easy to 
;      understand what actions it contains (e.g. ImageMagick)
;   b. In this folder, put all your AnyName.b.ini files
;   c. Put all the executables needed for this Action pack inside a sub folder 
;      named "exe". This is not mandatory, but recommended for consistency.
;   d. When possible, have your command line output its files to out\ sub 
;      folder. Not mandatory but recommended for consistency and to avoid 
;      overwriting any file.
;  - When a command is executed, it will set the working directory to the same
;    directory of the input files. 
;
;-------------------------------------------------------------------------------

[action]
;
; active (optional)
; true or false
;
; If false, will be ignored by the system. Good for disabling an action without 
; deleting it.
;
active          =false

;
; name
; Any text
;
; This is what the button will show.
;
name            =Sample Config File

; 
; acceptFormat
; Comma delimited list of extensions or *
;
; This list tells the system which formats may be handled by this action
;
acceptFormat    =*

;
; acceptMulti / acceptSingle
; true or false
;
; Tells the system if this action should be available when single files are 
; dropped and/or multiple files are dropped.
; 
acceptMulti     =true
acceptSingle    =true

;
; outputTo (optional)
; Any text or empty
;
; If not empty, a folder with this name will be created in the same folder as
; the folder of the dropped files.
; This is good if you want to output the result of this action into a certain 
; folder.
; For consistency, use "out" as a folder.
; Note that you also must configure your command line to output to this folder.
;
outputTo        =out

;
; showFolder (optional)
; true or false
;
; By default, if the user presses the Select button in order to select files 
; (as opposed to dropping files on the button), the output folder will be 
; opened when done.
; To disable this, set showFolder to false
;
showFolder      =false

;
; debug (optional)
; true or false
;
; If true, will not execute the command line but instead will only show it in 
; a message box and copy it to Clipboard.
; This has the same effect as the global setting (avoidExecution) in the 
; configuation file.
;
debug           =true


;
; commandline
; The command line to execute.
; 
; You may use special tags (enclosed in ~ signs) in this command line.
; The tags will be replaced before the command is executed.
;
; Enclose the entire command line in quotes.
;
;
; General Variables
; -----------------
;
;   ~Var:ThisDir~
;
;     The directory of the action INI file
;     Useful to specify the path to the executable:
;       "~Var:ThisDir~\exe\flac.exe"
;
;
; Filename Variables
; ------------------
;
;   All the below variables should be in the format ~Var:VarName~
;   They will all produce a portion of the filename of the first input file.
;   This is useful when the action supports single file only (e.g. to extract a
;   single PDF to single pages).
; 
;   ~Var:InDir~         Directory of the first input file.
;   ~Var:InFilename~    Filename (without path) of the first input file.
;   ~Var:InNameNoExt~   Filename (without extension) of the first input file.
;   ~Var:InExtension~   The extension of the first input file.
;   ~Var:InDrive~       The drive letter of the first input file.
;   ~Var:InFullName~    The full filename (with path) of the first input file.
;
;
; Filename Loop Variables
; -----------------------
;
;   If a command line contains any of the below tags, the command line will
;   be executed separately for each file in the list of dropped files.
;   The variable name will then include the part of the filename from the file
;   currently being proessed.
; 
;   ~Loop:InDir~        Directory of the processed file.
;   ~Loop:InFilename~   Filename (without path) of the processed file.
;   ~Loop:InNameNoExt~  Filename (without extension) of the processed file.
;   ~Loop:InExtension~  The extension of the processed file.
;   ~Loop:InDrive~      The drive letter of the processed file.
;   ~Loop:InFullName~   The full filename (with path) of the processed file.
;
; Functions
; ---------
;
;   ~Func:InFiles(style,separator,useQuotes)~
;
;     The entire list of dropped files.
;     The result may be formatted using three arguments:
;       style = names or fullpath
;       separator = space or comma (use the actual words)
;       useQuotes = true or false
;
;     This is useful when you want to use the entire list of dropped files in a 
;     single command line.
;
;     Example: ~Func:InFiles(names,space,true)~
;              ~Func:InFiles(fullpath,comma,false)~
;
;
; GUI Windows
; -----------
;
;   You may include a request for additional input from the user in your command
;   line. This is useful when the user can select an output format or other 
;   parameters that will be embeded in the command line.
;
;
;   ~Gui:SelectFormat(option1,option2,...)~
;
;     Will show a window with buttons, letting the user select any of the 
;     specified options. You may use as many options as you want.
;
;     Example: "OutFileName.~Gui:SelectFormat(PNG,GIF,JPG)~"
;              Will ask the user to select an extension to the output file.
;              When the user presses the button, this entire string will look 
;              like "OutFilename.png"
;
;
;   ~Gui:Select(caption,option1,option2,...)~
;
;     Same as SelectFormat with these differences:
;     a. It will not make the returned value lowercase
;     b. It allows for a custom caption
;
;     Example: ~Gui:Select(Select Bitrate,128,192,320)~
;
;     If you wish to the caption on the button to be different than the returned
;     value, use caption[value] as the option text.;
;
;     Example: ~Gui:Select(Select Quality,Normal[128],CD[192],Studio[320])~
;
;
;   ~Gui:Input(caption,default)~
;
;     Will show a window with an input field and an optional default value
;
;     Example: ~Gui:Input(Enter Bitrate,192)~
;
;
;  CONSOLE COMMANDS
;  ----------------
;
;    You may start a command line with the character ">" in order to execute a 
;    windows console command (e.g. copy, del).
; 
;    Example: ">copy "~Loop:InFullName~" "~Var:InDir~\out\""
;
;
;  MULTIPLE COMMANDS
;  -----------------
; 
;    You may add up to 10 command lines per action - they will run one after
;    the other (each one first running through all the files).
;
;    To do so, add commandline2 - commandLine10 keys.
;
;    Example;
;      commandLine  =""~Var:ThisDir~\command1.exe" "~Loop:InFilename~""
;      commandLine2 =""~Var:ThisDir~\command2.exe" "~Loop:InFilename~""
;
commandLine     =""~Var:ThisDir~\exe\flac.exe" -s "~Loop:InFilename~" -o "out\~Loop:InNameNoExt~.wav""


