source/media/helpimg/sbasic/Else_fragment.svg |   38 -------------
 source/media/helpimg/sbasic/If_statement.svg  |   74 +++++++++++++++-----------
 source/text/sbasic/shared/03090101.xhp        |   46 ++++++++--------
 3 files changed, 67 insertions(+), 91 deletions(-)

New commits:
commit 2fed269e1f9315e50e277c54ffc1053d48385ca9
Author:     Alain Romedenne <alain.romede...@libreoffice.org>
AuthorDate: Thu Aug 22 14:59:04 2024 +0200
Commit:     Alain Romedenne <alain.romede...@libreoffice.org>
CommitDate: Thu Aug 22 16:57:24 2024 +0200

    tdf#162470 Fix to If statement syntax diagram
    
    Change-Id: Icafc95df09367a9e7401742630ae06d7ebcc89b0
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/172198
    Tested-by: Jenkins
    Reviewed-by: Alain Romedenne <alain.romede...@libreoffice.org>
    Reviewed-by: Pierre F <f...@bger.ch>

diff --git a/source/media/helpimg/sbasic/Else_fragment.svg 
b/source/media/helpimg/sbasic/Else_fragment.svg
deleted file mode 100644
index beee1d4781..0000000000
--- a/source/media/helpimg/sbasic/Else_fragment.svg
+++ /dev/null
@@ -1,38 +0,0 @@
-<svg class="railroad-diagram" height="92" viewBox="0 0 509.5 92" width="509.5" 
xmlns="http://www.w3.org/2000/svg";>
-<g transform="translate(.5 .5)">
-<style>/* <![CDATA[ */
-    svg.railroad-diagram {
-        background-color:transparent;
-    }
-    svg.railroad-diagram path {
-        stroke-width:1;
-        stroke:black;
-        fill:rgba(0,0,0,0);
-    }
-    svg.railroad-diagram text {
-        font:bold 14px monospace;
-        font-family: Verdana, sans-serif;
-        text-anchor:middle;
-    }
-    svg.railroad-diagram text.label{
-        text-anchor:start;
-    }
-    svg.railroad-diagram text.comment{
-        font:italic 12px monospace;
-    }
-    svg.railroad-diagram rect{
-        stroke-width:1;
-        stroke:black;
-        fill:transparent;
-    }
-
-/* ]]> */
-</style><g>
-<path d="M20 20v20m0 -10h20"></path></g><g>
-<path d="M40 30h0.0"></path><path d="M469.5 30h0.0"></path><path d="M40.0 
30h30"></path><g>
-<path d="M70.0 30h369.5"></path></g><path d="M439.5 30h30"></path><path 
d="M40.0 30a15 15 0 0 1 15 15v1a15 15 0 0 0 15 15"></path><g>
-<path d="M70.0 61h0.0"></path><path d="M439.5 61h0.0"></path><g 
class="terminal">
-<path d="M70.0 61h0.0"></path><path d="M124.0 61h0.0"></path><rect height="22" 
rx="10" ry="10" width="54.0" x="70.0" y="50"></rect><text x="97.0" 
y="65">Else</text></g><path d="M124.0 61h10"></path><path d="M134.0 
61h10"></path><g class="terminal">
-<path d="M144.0 61h0.0"></path><path d="M240.5 61h0.0"></path><rect 
height="22" rx="10" ry="10" width="96.5" x="144.0" y="50"></rect><text 
x="192.25" y="65">condition</text></g><path d="M240.5 61h10"></path><path 
d="M250.5 61h10"></path><g class="terminal">
-<path d="M260.5 61h0.0"></path><path d="M314.5 61h0.0"></path><rect 
height="22" rx="10" ry="10" width="54.0" x="260.5" y="50"></rect><text 
x="287.5" y="65">Then</text></g><path d="M314.5 61h10"></path><path d="M324.5 
61h10"></path><g class="terminal">
-<path d="M334.5 61h0.0"></path><path d="M439.5 61h0.0"></path><rect 
height="22" rx="10" ry="10" width="105.0" x="334.5" y="50"></rect><text 
x="387.0" y="65">statements</text></g></g><path d="M439.5 61a15 15 0 0 0 15 
-15v-1a15 15 0 0 1 15 -15"></path></g><path d="M 469.5 30 h 20 m 0 -10 v 
20"></path></g></svg>
\ No newline at end of file
diff --git a/source/media/helpimg/sbasic/If_statement.svg 
b/source/media/helpimg/sbasic/If_statement.svg
index c7a41b1bee..b9b69bc50f 100644
--- a/source/media/helpimg/sbasic/If_statement.svg
+++ b/source/media/helpimg/sbasic/If_statement.svg
@@ -1,4 +1,4 @@
-<svg class="railroad-diagram" width="764" height="101" viewBox="0 0 764 101" 
xmlns="http://www.w3.org/2000/svg"; xmlns:xlink="http://www.w3.org/1999/xlink";>
+<svg class="railroad-diagram" width="820" height="101" viewBox="0 0 820 101" 
xmlns="http://www.w3.org/2000/svg"; xmlns:xlink="http://www.w3.org/1999/xlink";>
 <g transform="translate(.5 .5)">
 <g>
 <path d="M20 30v20m10 -20v20m-10 -10h20"></path>
@@ -55,53 +55,65 @@
 <path d="M410 40h10"></path>
 <g>
 <path d="M420 40h0"></path>
-<path d="M576 40h0"></path>
+<path d="M632 40h0"></path>
 <path d="M420 40h20"></path>
 <g>
-<path d="M440 40h116"></path>
+<path d="M440 40h172"></path>
 </g>
-<path d="M556 40h20"></path>
+<path d="M612 40h20"></path>
 <path d="M420 40a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
-<g class="non-terminal ">
+<g>
+<path d="M440 60h0"></path>
+<path d="M612 60h0"></path>
+<g class="terminal ">
 <path d="M440 60h0"></path>
-<path d="M556 60h0"></path>
-<rect x="440" y="49" width="116" height="22"></rect>
-<text x="498" y="64">Else options</text>
+<path d="M492 60h0"></path>
+<rect x="440" y="49" width="52" height="22" rx="10" ry="10"></rect>
+<text x="466" y="64">Else</text>
+</g>
+<path d="M492 60h10"></path>
+<path d="M502 60h10"></path>
+<g class="terminal ">
+<path d="M512 60h0"></path>
+<path d="M612 60h0"></path>
+<rect x="512" y="49" width="100" height="22" rx="10" ry="10"></rect>
+<text x="562" y="64">statements</text>
+</g>
 </g>
-<path d="M556 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+<path d="M612 60a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
 </g>
 <g>
-<path d="M576 40h0"></path>
-<path d="M724 40h0"></path>
-<path d="M576 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
+<path d="M632 40h0"></path>
+<path d="M780 40h0"></path>
+<path d="M632 40a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path>
 <g>
-<path d="M596 20h108"></path>
+<path d="M652 20h108"></path>
 </g>
-<path d="M704 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
-<path d="M576 40h20"></path>
+<path d="M760 20a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path>
+<path d="M632 40h20"></path>
 <g>
-<path d="M596 40h0"></path>
-<path d="M704 40h0"></path>
-<path d="M596 40h20"></path>
+<path d="M652 40h0"></path>
+<path d="M760 40h0"></path>
+<path d="M652 40h20"></path>
 <g class="terminal ">
-<path d="M616 40h4"></path>
-<path d="M680 40h4"></path>
-<rect x="620" y="29" width="60" height="22" rx="10" ry="10"></rect>
-<text x="650" y="44">EndIf</text>
+<path d="M672 40h4"></path>
+<path d="M736 40h4"></path>
+<rect x="676" y="29" width="60" height="22" rx="10" ry="10"></rect>
+<text x="706" y="44">EndIf</text>
 </g>
-<path d="M684 40h20"></path>
-<path d="M596 40a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path>
+<path d="M740 40h20"></path>
+<path d="M652 40a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path>
 <g class="terminal ">
-<path d="M616 70h0"></path>
-<path d="M684 70h0"></path>
-<rect x="616" y="59" width="68" height="22" rx="10" ry="10"></rect>
-<text x="650" y="74">End If</text>
+<path d="M672 70h0"></path>
+<path d="M740 70h0"></path>
+<rect x="672" y="59" width="68" height="22" rx="10" ry="10"></rect>
+<text x="706" y="74">End If</text>
 </g>
-<path d="M684 70a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path>
+<path d="M740 70a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path>
 </g>
-<path d="M704 40h20"></path>
+<path d="M760 40h20"></path>
 </g>
-<path d="M 724 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
+<path d="M 780 40 h 20 m -10 -10 v 20 m 10 -20 v 20"></path>
 </g>
 <style>
     svg.railroad-diagram {
diff --git a/source/text/sbasic/shared/03090101.xhp 
b/source/text/sbasic/shared/03090101.xhp
index f2e700c971..5030b2c202 100644
--- a/source/text/sbasic/shared/03090101.xhp
+++ b/source/text/sbasic/shared/03090101.xhp
@@ -20,7 +20,7 @@
 
 <meta>
   <topic id="textsbasicshared03090101xml" indexer="include" status="PUBLISH">
-    <title id="tit" xml-lang="en-US">If...Then...Else Statement</title>
+    <title id="tit">If...Then...Else Statement</title>
     <filename>/text/sbasic/shared/03090101.xhp</filename>
   </topic>
 </meta>
@@ -28,7 +28,7 @@
 <body>
 
 <section id="ifthenelse">
-<bookmark xml-lang="en-US" branch="index" id="bm_id3154422">
+<bookmark branch="index" id="bm_id3154422">
   <bookmark_value>If statement</bookmark_value>
   <bookmark_value>ElseIf; If statement</bookmark_value>
   <bookmark_value>Else;If statement</bookmark_value>
@@ -37,12 +37,11 @@
 </bookmark>
 
 <h1 id="hd_id81592320644826"><link 
href="text/sbasic/shared/03090101.xhp">If...Then...Else Statement</link></h1>
-<paragraph id="par_id3155555" role="paragraph" xml-lang="en-US">Defines one or 
more statement blocks that you only want to execute if a given condition or 
expression is <literal>True</literal>.</paragraph>
+<paragraph id="par_id3155555" role="paragraph">Defines one or more statement 
blocks that you only want to execute if a given condition or expression is 
<literal>True</literal>.</paragraph>
 </section>
 
 <embed href="text/sbasic/shared/00000003.xhp#functsyntax"/>
 <paragraph role="image" id="par_id311592320434736"><image 
src="media/helpimg/sbasic/If_statement.svg" id="img_id601592320434736"><alt 
id="alt_id551592320434736">If...EndIf statement</alt></image></paragraph>
-<paragraph role="image" id="par_id221592320436632"><image 
src="media/helpimg/sbasic/Else_fragment.svg" id="img_id81592320436632"><alt 
id="alt_id391592320436632">Else fragment</alt></image></paragraph>
 
 <bascode>
   <paragraph id="par_id3153126" role="bascode" localize="false">If condition 
Then </paragraph>
@@ -53,35 +52,39 @@
   <paragraph role="bascode" id="bas_id31592319640235" localize="false">    
statements]</paragraph>
   <paragraph role="bascode" id="bas_id861592319641899" 
localize="false">{EndIf|End If}</paragraph>
 </bascode>
-  <paragraph id="par_id3123476" role="paragraph" xml-lang="en-US">Instead of 
<emph>End If</emph> you can write <emph>EndIf</emph>.</paragraph>
+  <paragraph id="par_id3123476" role="paragraph">Instead of <emph>End 
If</emph> you can write <emph>EndIf</emph>.</paragraph>
   <tip id="par_id631592322239043"><emph>If</emph> statements can be shortened 
to one line when using single statement blocks.</tip>
 <bascode>
   <paragraph role="bascode" id="bas_id771592321093694" localize="false">If 
condition Then statement [Else statement]</paragraph>
 </bascode>
 
 <embed href="text/sbasic/shared/00000003.xhp#functparameters"/>
-  <paragraph id="par_id3153062" role="paragraph" xml-lang="en-US">The 
<emph>If...Then</emph> statement executes program blocks depending on given 
conditions. When %PRODUCTNAME Basic encounters an <emph>If</emph> statement, 
the condition is tested. If the condition is <literal>True</literal>, all 
subsequent statements up to the next <emph>Else</emph> or <emph>ElseIf</emph> 
statement are executed. If the condition is <literal>False</literal>, and an 
<emph>ElseIf</emph> statement follows, %PRODUCTNAME Basic tests the next 
expression and executes the following statements if the condition is 
<literal>True</literal>. If <literal>False</literal>, the program continues 
either with the next <emph>ElseIf</emph> or <emph>Else</emph> statement. 
Statements following <emph>Else</emph> are executed only if none of the 
previously tested conditions were <literal>True</literal>. After all conditions 
are evaluated, and the corresponding statements executed, the program continues 
with the statement fol
 lowing <emph>EndIf</emph>.</paragraph>
-<paragraph id="par_id3153192" role="paragraph" xml-lang="en-US">You can nest 
multiple <emph>If...Then</emph> statements.</paragraph>
-<paragraph id="par_id3154684" role="paragraph" xml-lang="en-US"> 
<emph>Else</emph> and <emph>ElseIf</emph> statements are optional.</paragraph>
-<paragraph id="par_id3152939" role="warning" xml-lang="en-US">You can use 
<emph>GoTo</emph> and <emph>GoSub</emph> to jump out of an 
<emph>If...Then</emph> block, but not to jump into an <emph>If...Then</emph> 
structure.</paragraph>
+  <paragraph id="par_id3153062" role="paragraph">The <emph>If...Then</emph> 
statement executes program blocks depending on given conditions. When 
%PRODUCTNAME Basic encounters an <emph>If</emph> statement, the condition is 
tested. If the condition is <literal>True</literal>, all subsequent statements 
up to the next <emph>Else</emph> or <emph>ElseIf</emph> statement are executed. 
If the condition is <literal>False</literal>, and an <emph>ElseIf</emph> 
statement follows, %PRODUCTNAME Basic tests the next expression and executes 
the following statements if the condition is <literal>True</literal>. If 
<literal>False</literal>, the program continues either with the next 
<emph>ElseIf</emph> or <emph>Else</emph> statement. Statements following 
<emph>Else</emph> are executed only if none of the previously tested conditions 
were <literal>True</literal>. After all conditions are evaluated, and the 
corresponding statements executed, the program continues with the statement 
following <emph>EndI
 f</emph>.</paragraph>
+<paragraph id="par_id3153192" role="paragraph">You can nest multiple 
<emph>If...Then</emph> statements.</paragraph>
+<paragraph id="par_id3154684" role="paragraph"> <emph>Else</emph> and 
<emph>ElseIf</emph> statements are optional.</paragraph>
+<paragraph id="par_id3152939" role="warning">You can use <emph>GoTo</emph> and 
<emph>GoSub</emph> to jump out of an <emph>If...Then</emph> block, but not to 
jump into an <emph>If...Then</emph> structure.</paragraph>
 
 <embed href="text/sbasic/shared/00000003.xhp#functexample"/>
-<paragraph id="par_id3153951" role="paragraph" xml-lang="en-US">The following 
example enables you to enter the expiration date of a product, and determines 
if the expiration date has passed.</paragraph>
+<paragraph id="par_id3153951" role="paragraph">The following example enables 
you to enter the expiration date of a product, and determines if the expiration 
date has passed.</paragraph>
 <bascode>
 <paragraph id="par_idm1341422592" role="bascode" localize="false">Sub 
ExampleIfThenDate</paragraph>
-<paragraph id="par_idm1341421360" role="bascode" localize="false">    Dim 
sDate As String</paragraph>
-<paragraph id="par_idm1341420128" role="bascode" localize="false">    Dim 
sToday As String</paragraph>
-<paragraph id="par_id3154490" role="bascode" xml-lang="en-US">    sDate = 
InputBox("Enter the expiration date (MM.DD.YYYY)")</paragraph>
-<paragraph id="par_idm1341417136" role="bascode" localize="false">    sDate = 
Right$(sDate, 4) + Mid$(sDate, 4, 2) + Left$(sDate, 2)</paragraph>
-<paragraph id="par_idm1341415856" role="bascode" localize="false">    sToday = 
Date$</paragraph>
-<paragraph id="par_idm1341414624" role="bascode" localize="false">    sToday = 
Right$(sToday, 4)+ Mid$(sToday, 4, 2) + Left$(sToday, 2)</paragraph>
-<paragraph id="par_idm1341413344" role="bascode" localize="false">    If sDate 
&lt; sToday Then</paragraph>
-<paragraph id="par_id3155601" role="bascode" xml-lang="en-US">        MsgBox 
"The expiration date has passed"</paragraph>
-<paragraph id="par_idm1341410352" role="bascode" localize="false">    ElseIf 
sDate &gt; sToday Then</paragraph>
-<paragraph id="par_id3146912" role="bascode" xml-lang="en-US">        MsgBox 
"The expiration date has not yet passed"</paragraph>
+<paragraph id="par_idm1341421360" role="bascode" localize="false">    Dim 
sInput As String</paragraph>
+<paragraph id="par_idm1341420128" role="bascode" localize="false">    Dim 
dInput As Date</paragraph>
+<paragraph role="bascode" id="bas_id171724332291365" localize="false"> 
</paragraph>
+<paragraph role="bascode" id="bas_id471724332439115">  On Error Goto 
inputError</paragraph>
+<paragraph id="par_id3154490" role="bascode">    sInput = InputBox("Enter the 
expiration date (YYYY-MM-DD)")</paragraph>
+<paragraph id="par_idm1341417136" role="bascode" localize="false">    dInput = 
DateValue(sInput)</paragraph>
+<paragraph id="par_idm1341414624" role="bascode" localize="false"> </paragraph>
+<paragraph id="par_idm1341413344" role="bascode" localize="false">    If 
dInput &lt; Date() Then</paragraph>
+<paragraph id="par_id3155601" role="bascode">        MsgBox "The expiration 
date has passed"</paragraph>
+<paragraph id="par_idm1341410352" role="bascode" localize="false">    ElseIf 
dInput &gt; Date() Then</paragraph>
+<paragraph id="par_id3146912" role="bascode">        MsgBox "The expiration 
date has not yet passed"</paragraph>
 <paragraph id="par_idm1341407312" role="bascode" localize="false">    
Else</paragraph>
-<paragraph id="par_id3154754" role="bascode" xml-lang="en-US">        MsgBox 
"The expiration date is today"</paragraph>
+<paragraph id="par_id3154754" role="bascode">        MsgBox "The expiration 
date is today"</paragraph>
 <paragraph id="par_idm1341404336" role="bascode" localize="false">    End 
If</paragraph>
+<paragraph role="bascode" id="bas_id561724332495121" localize="false"> 
</paragraph>
+<paragraph role="bascode" id="bas_id101724332497100" 
localize="false">inputError:</paragraph>
+<paragraph role="bascode" id="bas_id1001724332498412">    If dInput = 0 Then 
MsgBox "Invalid input"</paragraph>
 <paragraph id="par_idm1341403104" role="bascode" localize="false">End 
Sub</paragraph>
 </bascode>
 
@@ -91,5 +94,4 @@
 </section>
 
 </body>
-
 </helpdocument>
\ No newline at end of file

Reply via email to