;_____________________________________________________________________________
;
;                          Word Functions
;_____________________________________________________________________________
;
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)

Name "Word Functions"
OutFile "WordFunc.exe"
Caption "$(^Name)"
XPStyle on

Var INI
Var HWND
Var STATE

!include "WinMessages.nsh"
!include "WordFunc.nsh"

!insertmacro WordFind
!insertmacro WordFind2X
!insertmacro WordReplace
!insertmacro WordAdd
!insertmacro WordInsert
!insertmacro StrFilter
!insertmacro VersionCompare
!insertmacro VersionConvert

Page Custom ShowCustom LeaveCustom

Function ShowCustom
	InstallOptions::initDialog /NOUNLOAD "$INI"
	Pop $hwnd
	InstallOptions::show
	Pop $0
FunctionEnd

Function LeaveCustom
	ReadINIStr $0 $INI "Settings" "State"
	StrCmp $0 0 Enter

	GetDlgItem $1 $HWND 1202
	EnableWindow $1 1
	GetDlgItem $1 $HWND 1203
	ShowWindow $1 1
	GetDlgItem $1 $HWND 1204
	ShowWindow $1 1
	GetDlgItem $1 $HWND 1206
	EnableWindow $1 1
	GetDlgItem $1 $HWND 1205
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1206
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"

	ReadINIStr $0 $INI "Field 1" "State"
	StrCmp $0 "1. WordFind        (Find word by number)" 0 WordFind2Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:-4"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Word):"
	goto WordFindSend

	WordFind2Send:
	StrCmp $0 "                           (Delimiter exclude)" 0 WordFind3Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E-2{"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Before{ or }after delimiter):"
	goto WordFindSend

	WordFind3Send:
	StrCmp $0 "                           (Sum of words)" 0 WordFind4Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:#"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Sum of words):"
	goto WordFindSend

	WordFind4Send:
	StrCmp $0 "                           (Sum of delimiters)" 0 WordFind5Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E*"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Option"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Sum of delimiters):"
	goto WordFindSend

	WordFind5Send:
	StrCmp $0 "                           (Find word number)" 0 WordFind6Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:/Program Files"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:/Word"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Word #):"
	goto WordFindSend

	WordFind6Send:
	StrCmp $0 "                           ( }} )" 0 WordFind7Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E+2}}"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Before{{ or }}after word):"
	goto WordFindSend

	WordFind7Send:
	StrCmp $0 "                           ( {} )" 0 WordFind8Send
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+2{}"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Without word):"
	goto WordFindSend

	WordFind8Send:
	StrCmp $0 "                           ( *} )" 0 WordFind2XSend
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|C:\"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E+2*}"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Before{* or *}after word with word):"
	goto WordFindSend

	WordFind2XSend:
	StrCmp $0 "2. WordFind2X" 0 WordReplace1Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:[C:\io.sys];[C:\logo.sys];[C:\WINDOWS]"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:[C:\"
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 1
	SendMessage $1 ${WM_SETTEXT} 1 "STR:];"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E+2"
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Delimiter1"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Delimiter2"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (Word):"
	abort

	WordReplace1Send:
	StrCmp $0 "3. WordReplace (Replace)" 0 WordReplace2Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys|C:\logo.sys|C:\WINDOWS"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:SYS"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:bmp"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+2"
	goto WordReplaceSend

	WordReplace2Send:
	StrCmp $0 "                           (Delete)" 0 WordReplace3Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys|C:\logo.sys|C:\WINDOWS"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:SYS"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E+"
	goto WordReplaceSend

	WordReplace3Send:
	StrCmp $0 "                           (Multiple-replace)" 0 WordAdd1Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys||||||C:\logo.sys|||C:\WINDOWS"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+1*"
	goto WordReplaceSend

	WordAdd1Send:
	StrCmp $0 "4. WordAdd        (Add)" 0 WordAdd2Send
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+C:\WINDOWS|C:\config.sys|C:\IO.SYS"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (String1 + String2):"
	goto WordAddSend

	WordAdd2Send:
	StrCmp $0 "                           (Delete) " 0 WordInsertSend
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E-C:\WINDOWS|C:\config.sys|C:\IO.SYS"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (String1 - String2):"
	goto WordAddSend

	WordInsertSend:
	StrCmp $0 "5. WordInsert" 0 StrFilter1Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys|C:\WINDOWS"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|"
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 1
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\logo.sys"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:E+2"
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Delimiter"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result:"
	abort

	StrFilter1Send:
	StrCmp $0 "6. StrFilter           (UpperCase)" 0 StrFilter2Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:123abc 456DEF 7890|%#"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (String in uppercase):"
	goto StrFilterSend

	StrFilter2Send:
	StrCmp $0 "                           (LowerCase)" 0 StrFilter3Send
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:123abc 456DEF 7890|%#"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:-"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:ef"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (String in lowercase except EF):"
	goto StrFilterSend

	StrFilter3Send:
	StrCmp $0 "                           (Filter)" 0 VersionCompareSend
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:123abc 456DEF 7890|%#"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:+12"
	GetDlgItem $1 $HWND 1203
	SendMessage $1 ${WM_SETTEXT} 1 "STR:b"
	GetDlgItem $1 $HWND 1204
	SendMessage $1 ${WM_SETTEXT} 1 "STR:def"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (String Digits + Letters + b - def):"
	goto StrFilterSend

	VersionCompareSend:
	StrCmp $0 "7. VersionCompare" 0 VersionConvertSend
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:1.1.1.9"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:1.1.1.01"
	GetDlgItem $1 $HWND 1203
	ShowWindow $1 0
	GetDlgItem $1 $HWND 1204
	ShowWindow $1 0
	GetDlgItem $1 $HWND 1206
	EnableWindow $1 0
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Version1"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Version2"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (0-equal 1-newer 2-older):"
	abort

	VersionConvertSend:
	StrCmp $0 "8. VersionConvert" 0 Abort
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:9.0c"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1203
	ShowWindow $1 0
	GetDlgItem $1 $HWND 1204
	ShowWindow $1 0
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1206
	EnableWindow $1 0
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Version"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:CharList"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result (numerical version format):"
	abort

	Abort:
	Abort

	WordFindSend:
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 0
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys|C:\logo.sys|C:\Program Files|C:\WINDOWS"
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Delimiter"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	Abort

	WordReplaceSend:
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 1
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Replace it"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:         with"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Word #"
	GetDlgItem $1 $HWND 1211
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Result:"
	Abort

	WordAddSend:
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 0
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1201
	SendMessage $1 ${WM_SETTEXT} 1 "STR:C:\io.sys|C:\logo.sys|C:\WINDOWS"
	GetDlgItem $1 $HWND 1202
	SendMessage $1 ${WM_SETTEXT} 1 "STR:|"
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String1"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Delimiter"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String2"
	Abort

	StrFilterSend:
	GetDlgItem $1 $HWND 1203
	EnableWindow $1 1
	GetDlgItem $1 $HWND 1206
	EnableWindow $1 0
	GetDlgItem $1 $HWND 1207
	SendMessage $1 ${WM_SETTEXT} 1 "STR:String"
	GetDlgItem $1 $HWND 1208
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Filter"
	GetDlgItem $1 $HWND 1209
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Include"
	GetDlgItem $1 $HWND 1210
	SendMessage $1 ${WM_SETTEXT} 1 "STR:Exclude"
	Abort

;=Enter=
	Enter:
	StrCpy $0 ''
	ReadINIStr $STATE $INI "Field 1" "State"
	ReadINIStr $R1 $INI "Field 2" "State"
	ReadINIStr $R2 $INI "Field 3" "State"
	ReadINIStr $R3 $INI "Field 4" "State"
	ReadINIStr $R4 $INI "Field 5" "State"

	StrCmp $STATE "1. WordFind        (Find word by number)" WordFind
	StrCmp $STATE "                           (Delimiter exclude)" WordFind
	StrCmp $STATE "                           (Find in string)" WordFind
	StrCmp $STATE "                           (Sum of words)" WordFind
	StrCmp $STATE "                           (Sum of delimiters)" WordFind
	StrCmp $STATE "                           (Find word number)" WordFind
	StrCmp $STATE "                           ( }} )" WordFind
	StrCmp $STATE "                           ( {} )" WordFind
	StrCmp $STATE "                           ( *} )" WordFind
	StrCmp $STATE "2. WordFind2X" WordFind2X
	StrCmp $STATE "3. WordReplace (Replace)" WordReplace
	StrCmp $STATE "                           (Delete)" WordReplace
	StrCmp $STATE "                           (Multiple-replace)" WordReplace
	StrCmp $STATE "4. WordAdd        (Add)" WordAdd
	StrCmp $STATE "                           (Delete) " WordAdd
	StrCmp $STATE "5. WordInsert" WordInsert
	StrCmp $STATE "6. StrFilter           (UpperCase)" StrFilter
	StrCmp $STATE "                           (LowerCase)" StrFilter
	StrCmp $STATE "                           (Filter)" StrFilter
	StrCmp $STATE "7. VersionCompare" VersionCompare
	StrCmp $STATE "8. VersionConvert" VersionConvert
	Abort

	WordFind:
	${WordFind} "$R1" "$R2" "$R4" $R0
	IfErrors 0 Send
	StrCpy $0 $R0
	StrCmp $R0 3 0 +3
	StrCpy $3 '"+1" "-1" "+1}" "+1{" "#" "/word"'
	goto error3
	StrCmp $R0 2 0 error1
	StrCpy $R4 $R4 '' 1
	StrCpy $1 $R4 1
	StrCmp $1 / 0 error2
	StrCpy $R4 $R4 '' 1
	StrCpy $R0 '"$R4" no such word.'
	goto Send

	WordFind2X:
	${WordFind2X} "$R1" "$R2" "$R3" "$R4" $R0
	IfErrors 0 Send
	StrCpy $0 $R0
	StrCmp $R0 3 0 +3
	StrCpy $3 '"+1" "-1"'
	goto error3
	StrCmp $R0 2 +3
	StrCpy $R0 '"$R2...$R3" no words found.'
	goto Send
	StrCpy $R4 $R4 '' 1
	StrCpy $1 $R4 1
	StrCmp $1 / 0 +2
	StrCpy $R4 $R4 '' 1
	StrCpy $R0 '"$R4" no such word.'
	goto Send

	WordReplace:
	${WordReplace} "$R1" "$R2" "$R3" "$R4" $R0
	IfErrors 0 Send
	StrCpy $0 $R0
	StrCmp $R0 3 0 +3
	StrCpy $3 '"+1" "+1*" "+" "+*" "{}"'
	goto error3
	StrCmp $R0 2 0 error1
	StrCpy $R4 $R4 '' 1
	goto error2

	WordAdd:
	${WordAdd} "$R1" "$R2" "$R4" $R0
	IfErrors 0 Send
	StrCpy $0 $R0
	StrCmp $R0 3 0 error1empty
	StrCpy $3 '"+text" "-text"'
	goto error3

	WordInsert:
	${WordInsert} "$R1" "$R2" "$R3" "$R4" $R0
	IfErrors 0 Send
	StrCpy $0 $R0
	StrCmp $R0 3 0 +3
	StrCpy $3 '"+1" "-1"'
	goto error3
	StrCmp $R0 2 0 error1empty
	StrCpy $R4 $R4 '' 1
	goto error2

	StrFilter:
	${StrFilter} "$R1" "$R2" "$R3" "$R4" $R0
	IfErrors 0 Send
	StrCpy $R0 'Syntax error'
	goto Send

	VersionCompare:
	${VersionCompare} "$R1" "$R2" $R0
	goto Send

	VersionConvert:
	${VersionConvert} "$R1" "$R2" $R0
	goto Send

	error3:
	StrCpy $R0 '"$R4" syntax error ($3)'
	goto Send
	error2:
	StrCpy $R0 '"$R4" no such word number'
	goto Send
	error1empty:
	StrCpy $R0 '"$R2" delimiter is empty'
	goto Send
	error1:
	StrCpy $R0 '"$R2" delimiter not found in string'
	goto Send

	Send:
	GetDlgItem $1 $HWND 1205
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$R0"
	GetDlgItem $1 $HWND 1206
	SendMessage $1 ${WM_SETTEXT} 1 "STR:$0"
	abort
FunctionEnd

Function .onInit
	InitPluginsDir
	GetTempFileName $INI $PLUGINSDIR
	File /oname=$INI "WordFunc.ini"
FunctionEnd

Page instfiles

Section "Empty"
SectionEnd
