536 lines
16 KiB
Plaintext
536 lines
16 KiB
Plaintext
|
;_____________________________________________________________________________
|
||
|
;
|
||
|
; Word Functions
|
||
|
;_____________________________________________________________________________
|
||
|
;
|
||
|
; 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)
|
||
|
|
||
|
Name "Word Functions"
|
||
|
OutFile "WordFunc.exe"
|
||
|
Caption "$(^Name)"
|
||
|
XPStyle on
|
||
|
RequestExecutionLevel user
|
||
|
|
||
|
Var INI
|
||
|
Var HWND
|
||
|
Var STATE
|
||
|
|
||
|
!include "WinMessages.nsh"
|
||
|
!include "WordFunc.nsh"
|
||
|
|
||
|
Page Custom ShowCustom LeaveCustom
|
||
|
|
||
|
Function ShowCustom
|
||
|
InstallOptions::initDialog "$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
|