format
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@2668 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
c6fcdeb6ba
commit
7fdfd8a0c5
1 changed files with 40 additions and 37 deletions
|
@ -479,50 +479,53 @@ value of a Field using ReadINIStr:</p>
|
|||
<pre class="margin">
|
||||
ReadINIStr $R0 "$PLUGINSDIR\test.ini" "Field 1" "State"
|
||||
</pre>
|
||||
<p class="text"> Important Note:</p>
|
||||
<p class="text"> For Multiline edit
|
||||
boxe's the output "State" comes with "\r\n" if text as more
|
||||
than one line and is your responsiblity to convert it inside script to
|
||||
"$\r$\n" if needed! example macro:</p>
|
||||
<pre class="margin">NORMALIZE_CRCF VALUE
|
||||
push $1 ; Index
|
||||
push $2 ; Output char by char
|
||||
push $3 ; Output char by char next
|
||||
push $4 ; Text Accumulator
|
||||
<p class="text"><span class="bold">Note:</span></p>
|
||||
<p class="text">For Multiline edit boxes the output "State" comes with "\r\n"
|
||||
if the text contains more than one line. You have to convert it to "$\r$\n" if needed,
|
||||
using this macro:</p>
|
||||
<pre class="margin">!macro NORMALIZE_CRCF VALUE
|
||||
|
||||
StrCpy $1 "0"
|
||||
DONEXT:
|
||||
StrCpy $2 ${VALUE} 1 $1
|
||||
IntOp $1 $1 + 1
|
||||
StrCpy $3 ${VALUE} 1 $1
|
||||
StrCmp $3 "" EOT
|
||||
StrCmp $2 "\" 0 NORMAL_CHAR
|
||||
StrCmp $3 "r" FOUND_CR
|
||||
StrCmp $3 "n" 0 NORMAL_CHAR
|
||||
;FOUND_LF:
|
||||
StrCpy $4 "$4$\r"
|
||||
IntOp $1 $1 + 1
|
||||
goto DONEXT
|
||||
;Note: Do not use $R1-$R4 as value
|
||||
|
||||
FOUND_CR:
|
||||
StrCpy $4 "$4$\n"
|
||||
IntOp $1 $1 + 1
|
||||
goto DONEXT
|
||||
Push $R1 ; Index
|
||||
Push $R2 ; Output char by char
|
||||
Push $R3 ; Output char by char next
|
||||
Push $R4 ; Text Accumulator
|
||||
|
||||
NORMAL_CHAR:
|
||||
StrCpy $4 "$4$2"
|
||||
goto DONEXT
|
||||
StrCpy $R1 "0"
|
||||
|
||||
DONEXT:
|
||||
StrCpy $R2 ${VALUE} 1 $R1
|
||||
IntOp $R1 $R1 + 1
|
||||
StrCpy $R3 ${VALUE} 1 $R1
|
||||
StrCmp $R3 "" EOT
|
||||
StrCmp $R2 "\" 0 NORMAL_CHAR
|
||||
StrCmp $R3 "r" FOUND_CR
|
||||
StrCmp $R3 "n" 0 NORMAL_CHAR
|
||||
|
||||
EOT:
|
||||
StrCpy ${VALUE} $4
|
||||
pop $4
|
||||
pop $3
|
||||
pop $2
|
||||
pop $1
|
||||
StrCpy $R4 "$R4$\r"
|
||||
IntOp $R1 $R1 + 1
|
||||
Goto DONEXT
|
||||
|
||||
FOUND_CR:
|
||||
StrCpy $R4 "$R4$\n"
|
||||
IntOp $R1 $R1 + 1
|
||||
Goto DONEXT
|
||||
|
||||
NORMAL_CHAR:
|
||||
StrCpy $R4 "$R4$R2"
|
||||
Goto DONEXT
|
||||
|
||||
EOT:
|
||||
StrCpy ${VALUE} $R4
|
||||
|
||||
Pop $R4
|
||||
Pop $R3
|
||||
Pop $R2
|
||||
Pop $R1
|
||||
|
||||
!macroend
|
||||
</pre>
|
||||
<pre class="margin"> </pre>
|
||||
<p class="subheader">Validate the input</p>
|
||||
<p class="text">If you want to validate the input on the page,
|
||||
for example, you want to check whether the user has filled in
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue