Contents | Index | < Browse | Browse >
 
 IF Argument   OPERATOR   Argument
 ELSEIF, ELSE, ENDIF
 AND, OR
 ================================================================
 This is the standard If/Else/EndIf stuff, common in any computer 
 language. The way to use it, is to think logically.

    var = 1
    IF     $var = 2
    OR     $var = 3
         say 'var = 2 or 3n'
    ELSEIF $var = 5
    AND    $var = 1
         say 'var = 1 and 5n'
    ELSEIF $var = 1
         say 'var = 1 - correctn'
    ELSE
         say 'don't know..n'
    ENDIF

 The above should print out 'var = 1 - correct'

 Rules of the game :
 - In any if construct, you MUST start with IF and end with ENDIF.
 - In between you may use only one ELSE 
 - You can have as many ELSEIF's as you want - only the commands
   attached to the 1st ELSEIF which satisfies the criteria will
   be executed.
 - You can have many AND or OR statements - these MUST follow
   exactly after an IF or ELSEIF or ELSE.
 - You can have if within if within if constructs, up to 126
   levels.

 If you don't understand how it works, run gui4cli in debug mode.
 (Press control-D) This will show you what it's doing.

 The Arguments can be strings, or numbers or variables. Note that if 
 you want to compare a variable you MUST place a $ character in front 
 of it (to indicate that you mean the *contents* of the variable).

 See the OPERATOR explanation to see what operators you can use.

 IF (as well as WHILE etc) is smart enough to understand the comparison
 of Numbers. So if you compare :

    IF  2 > 10

 ...the answer will be FALSE, since 2 is less than 10, although if they
 were compared strictly as strings 2 would be more that 10.

 IF can also be replaced by the  IFEXISTS  command. This has different
 arguments (see its explanation), but otherwise replaces IF in
 every way.

 IMPORTANT :
 The most common mistake I make when writing GUIs is this :

 If  variable = 10      <- This compares 10 to the name of the variable

     instead of :

 If  $variable = 10     <- Correct. Compares 10 to the contents of "variable"

 Example :  Run Gui   Source