|01 Expression Editor The |BExpression Editor|B lets you specify or modify assignment and conditional expressions. You enter the |BExpression Editor|B through Conditional Goto, If-Then, If-Then-Else, Loop, Module, Subroutine, Variable, and Conditional Wait icons. You can also specify conditions for data validation in input fields in the Forms icon. You are allowed to create multiple expressions for |BModule|B, |BSubroutine|B, and |BVariable|B icons by pressing the Return key after entering each expression or by using the up and down arrows which appear in the |BExpression Editor|B when you have entered through one of these icons. If you enter through conditional icons such as If-Then then you are allowed to enter only one expression. Variables are defined using expressions in the expression field near the top of the |BExpression Editor|B. The |BExpression Editor|B is divided into five separate regions: Functions, Variables, Logical Operators, Arithmetic Operators, and the Expression Field. The Functions window lists standard arithmetic and string functions supported in AmigaVision. The Variables Window lists all the local and global variables that are available for use. The Logical Operators are used exclusively in conditional expressions. The Arithmetic Operators are used in assignment expressions. There is a Field provided for entering or editing an expression. You may either type in an expression or build it by selecting the desired items from the gadgets, variables, and functions in the |BExpression Editor|B. For example, you might create a variable called SCORE by typing, in the expression field, SCORE=100 or by typing SCORE and clicking on the = gadget and then on the gadgets representing the numbers 1, 0, and 0. When you have completed assigning a value to a variable, click on the |HEnter|H gadget or press the Enter key on the keyboard. As no variable by the name SCORE exists a new variable is created and displayed in the Variables Window. A one character code I, which stands for integer variable, is also displayed with the new variable SCORE. The other codes are B for boolean, S for string, and F for floating point. These codes help remind you the variable types so that you will mix incompatible types in an expression such as assigning strings to integer variables and so on. The Arithmetic operators in the Editor follow the standard symbols in most programming languages. Use + for addition, - for subtraction, * for multiplication, / for division, and () to control the order of operations. The symbol % stands for modulus. For example,the expression a = 16 % 3 will assign a value of 1 for a, which is the remainder when you divide 16 by 3. The only use of the symbol = is for assignment of values or expressions. The Enter gadget is for simulating the keyboard Enter key. The Logical operators are used for specifying conditional expressions. Use AND for conjunctions, OR for disjunction, NOT for negation, < for less than, > for greater than, <= for less than or equal to, >= for greater than or equal to, <> for not equal to, and == for testing the equivalence of two values. In AmigaVision all string comparisons using the == symbol is insensitive to the case of the characters in the string. In other words, all strings can contain mixed upper or lower cases. If you need to convert all the characters in a string to upper or lower cases there are special string functions available for this purpose. The ?= is for matching patterns in a string. For example you have a string variable called ANSWER which contains the string that was entered by a user in response to the question say, "Who Discovered America?" If you want to see if the word (substring) "Columbus" appears in the ANSWER. Then you will use the conditional test expression: ANSWER ?= "*Columbus*" This test will return a TRUE value if ANSWER contained the word Columbus at any location, even in a long sentence. The pattern string you specify can contain two wildcard characters: the * character to indicate any phrase including spaces and the character ? for any single character. These wildcard characters are very useful in specifying spelling and grammar tolerance levels. In the above example for instance if you also want to forgive poor spelling of the word "Columbus" then your pattern matching expression will be something like: ANSWER ?= "*Col?us?" Thus even an answer such as "Colxus" will be considered as a good answer for the question "Who Discovered America?" The |HExpression Field|H has five gadgets associated with it. Their names indicate their respective uses. See the User Manual for description of each of the functions shown in the function window. You can click on a function or a variable and it will be inserted in the Expression Field at the location of the cursor. |02 Videodisc Controller A choice of video commands is shown near the top left of the window. Click on a command gadget to use the command. Notice there are two arrows to the left of the command name. These are used to specify forward or reverse. For instance, if you click on the left arrows on the side of the Fast gadget, the video will play fast reverse. |HStill|H pauses the video. |HPlay|H shows the video at normal speed in forward or reverse. |HStep|H advances one frame at a time. To move forward or reverse at very fast pace, point to |HScan|H and press the left mouse button. Hold the mouse button down while scanning and release the button to stop. |HSlow|H shows video in slow motion. |HFast|H shows video in fast motion. Click on the |HAudio 1|H and |HAudio 2|H gadgets to change the status of the audio channels. A check mark indicates that the audio is in the On state. The Audio switches function only in the forward play motion of the videodisc. The |HVideo|H and |HIndex|H gadgets are used in a similar fashion, to turn the video and index on or off. The |HVideo on or off|H option is available only in certain players. As there are no standards currently among the manufacturers, some players do not have this feature. For those players without this feature, the |HVideo status|H gadget has no effect on the display of video. A check mark indicates the On state. |HIndex|H refers to the video frame numbers shown typically in the top area of the videodisc display. You may also store two separate frame numbers temporarily in memory. To do so, click on either the |HM1|H or |HM2|H gadget. This will enter the number of the current frame into that memory area. You may use the frame numbers stored in this memory area in specifying the frame numbers for the |HPlay|H and |HSearch|H operations. In the upper right section of the controller, |HFrame|H displays the current frame whenever the video is stopped or paused. Play will show the segment of video between the two specified frames and then stop. Search will advance the video to the frame specified. Clicking on the |HStart|H or |HStop|H gadgets in the |HPlay|H area or |HFrame|H in the |HSearch|H area brings up the |BSpecify Value|B requester. |HEnter Frame|H opens the |BSpecify Value|B requester. |HCurrent Frame|H enters the current frame. If you choose one of the memory choices, the frame number saved under it will be entered. |HSave|H and |HPreview|H options are only available if you entered the |BVideodisc Controller|B from the |BVideo|B icon requester and are disabled when you access the controller from the pull down menu. To save the current settings and remain in the controller, click on Save. This saves the state of the switches: Video On/Off, Index On/Off, Audio 1 On/Off, Audio 2 On/Off and the last executed command. To view the video as it will be seen in the course, click on Preview. When you are finished using the controller, click on |HOK|H to save and exit. Choose |HCancel|H to exit without changes. While using the |BVideodisc Controller|B, you may wish to adjust its size. This will allow you to see more of the video display area. To make the controller smaller, click the right mouse button anywhere inside the controller. When you do this, only the commands at the top left side of the controller will be visible. When it is small, click the right button in the controller again to return to normal size. To make the controller disappear, click the right mouse button anywhere outside the controller. Click it again to make the controller reappear. |03 Database Editor The |BDatabase Editor|B is used for creating and manipulating databases for use with projects. The |BDatabase Editor|B allows you to create a database in dBase III format; add, update, and delete data records; and delete database files. Use the |BDatabase Editor|B to define the record structure using data fields. This requires careful planning as |IAmigaVision|I does not let you alter the record structure of a database once you have created it. For instance, you may want to create a database containing the name, address, and phone number of the end user. Then each of the items -- the last name, middle initial, first name, house number, street name, city, country, zip code, and phone number -- becomes your data field. If you anticipate adding a new field for age or sex later you must plan ahead or create a new database later. The database is stored in dBaseIII compatible file format with a .dBF file extension. This allows you to use other commercially available database software such as Superbase, which supports dBaseIII compatible files, to read |IAmigaVision|I data files for extensive analysis or modification. In |IAmigaVision|I you can also read |IdBaseIII|I compatible files created by other database software. Be sure to denote one or more of the data fields as keys for selecting a specific record. |IAmigaVision|I allows you to change the keys even if you have specified them once. The keys are used to create what is known as an index file. When you change the keys the old index file will be erased and replaced by the new one. When you read dBaseIII files created by other software products such as Superbase, the keys specified in those products will not be transferable to AmigaVision. You must use AmigaVision's Database Editor and specify keys for creating the index (.ndx) files. |BField Types and Sizes|B The |IAmigaVision|I |BDatabase Edito|Br supports the following field types, which are shown along with their maximum allowable sizes: |HString|H 255 characters |HNumeric|H 19 digits including the decimal point |HBoolean|H default width of one character |HDate |H default width of 10 characters |HString|H fields are used to store alphanumeric information like names, addresses, etc. |HNumeric|H fields may contain integer or floating point numbers. If you select numeric, you may also specify the number of decimal places. The size of |Hnumeric|H fields includes the decimal and the number of places to the right of it. |HBoolean|H fields can only be T or Y (for TRUE or YES) or F or N (for FALSE or NO) and are assigned a default width of one character. These fields are like flags that you can set which allow you to search for records in which the condition is TRUE or FALSE. |HDate|H fields have the format MM/DD/YYYY, which is a string 10 characters long. eg. 12/10/1990. The database files that you create using the |BDatabase Editor|B may contain up to 128 fields. There is also alimit of 4000 characters per record. In the |HDatabase Filename|H field, you specify the name of your file. If the file that you specify does not exist, you will be able to specify record struture and choose the |HCreate|H option, which creates a new database file. Note that once created, the record structure cannot be edited within |IAmigaVision|I. However, you can read the database file into other commericially available database software for editing the record structure. |04 Editing Data In the |BDatabase Editor|B you may edit (i.e. add, modify, or delete) records in the database. To do so, type the name of the file in the |HDatabase Filename|H field, and click on the Edit Data gadget. The |BEdit Database|B Window opens. Every time you enter the |BEdit Window|B from the |BDatabase Editor|B the first record of the database is displayed. You can use the |HPrev|H and the |HNext|H gadgets to browse through and edit the data fields of each record and then click on |HUpdate|H. If you want to browse sequentially then choose |HBy Record #|H using the multistate gadget at the top right corner of the |BEdit Window|B. For viewing keyboard short cuts click your right mouse button at the top left corner of the data editor. You can also browse your database records by typing in one or more key values and then selecting the By Key option. |HDelete|H is for deleting the currently selected record, i.e. whose fields are being displayed in the |BEdit Window|B. If you have too many fields in your database to be displayed in the |BEdit Window|B, |IAmigaVision|I creates additional pages. If there are more than one page of fields in a single record, the current page number is indicated in the lower right. If there is more than one page you may move between pages by using the |HPrev Page|H and |HNext Page|H gadgets at the bottom of the window. When you are finished editing, click on the |HExit|H gadget to exit the |BEdit Window|B and return back to the |BDatabase Window|B. You can now create a new database or edit the keys and/or the data of an old database. Or you click on the |HExit|H gadget to exit the |BDatabase Editor|B. |05 Edit Keys |BKeys|B are used to index a file based on the most important information. Your database can have more than one key, but the order of the keys affects how the information is displayed. Click on the field you wish to make a key from the FIELDS list and click |HInsert|H. To remove a key, click on it in the KEYS list and click |HDelete|H. To change the order of a key, select it, click |HMove|H and click on the other key you wish to swap places with. To remove all keys click |HClear|H. |06 Object Editor The |BObject Editor|B is used to add graphic objects, hit boxes and text information to your presentation. You may add such objects as |HRectangle|Hs, |HPolygon|Hs, |HLine|Hs, |HCircle|Hs, |HEllipse|Hs, |HText/Variable|Hs and |HBrush|Hes. When entering the object editor from a |BForm|B icon, you may also place |HInput Field|Hs. When entering from the |BText File|B icon, you may place a |HText Window|H. Use the Objects menu to define the following objects: Rectangle: Click the left mouse button to define the location of one corner of the rectangle and drag the mouse to define the other. Double click inside the rectangle to access the requester. Polygon: Click the left mouse button to define the location of each of the corners of the polygon and click the right button to mark the last corner. The polygon will be automatically closed. Double click inside the polygon to access the requester. Line: Click the left mouse button to define the location of one end of the line and drag the mouse to define the other. Double click on the line to access the requester. Circle: Click the left mouse button to define the location of the center of the circle and drag the mouse to define the radius. Double click inside the circle to access the requester. Ellipse: Click the left mouse button to define the location of the geometric center of the ellipse and drag the mouse to define the radii of the semi-major and the semi-minor axes. Double click inside the ellipse to access the requester. Text/Variable Field: Click the left mouse button to define the location of one corner of the text field and drag the mouse to define the other. Double click the text field to access the requester. Brush: Click the left mouse button to define the location of one corner of the rectangular window for displaying the brush and drag the mouse to define the other. Double click inside the rectangular brush window to access the requester. Input Field: Click the left mouse button to define the location of one corner of the rectangular input field and drag the mouse to define the other. Double click inside the input field to access the requester. Text Window: Click the left mouse button to define the location of one corner of the rectangluar area for displaying text and drag the mouse to define the other. Double click inside the rectangle to access the requester. |07 Rectangle To specify the colors of the object, click |HColors|H. You may specify a different color for |HNormal Border|H, |HNormal Fill|H, |HSelect Border|H and |HSelect Fill|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Border|H or |HSelect Fill|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this object it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the object with a variable, click |HVar|H and specify a boolean variable. When the object is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this object a "hit box", enter a string in the |HResponse|H field. Whenever this object is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this object is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |08 Polygon To specify the colors of the object, click |HColors|H. You may specify a different color for |HNormal Border|H, |HNormal Fill|H, |HSelect Border|H and |HSelect Fill|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Border|H or |HSelect Fill|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this object it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the object with a variable, click |HVar|H and specify a boolean variable. When the object is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this object a "hit box", enter a string in the |HResponse|H field. Whenever this object is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this object is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |09 Line To specify the colors of the object, click |HColors|H. You may specify a different color for |HNormal Border|H, |HNormal Fill|H, |HSelect Border|H and |HSelect Fill|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Border|H or |HSelect Fill|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this object it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the object with a variable, click |HVar|H and specify a boolean variable. When the object is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this object a "hit box", enter a string in the |HResponse|H field. Whenever this object is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this object is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |10 Circle To specify the colors of the object, click |HColors|H. You may specify a different color for |HNormal Border|H, |HNormal Fill|H, |HSelect Border|H and |HSelect Fill|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Border|H or |HSelect Fill|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this object it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the object with a variable, click |HVar|H and specify a boolean variable. When the object is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this object a "hit box", enter a string in the |HResponse|H field. Whenever this object is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this object is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |11 Ellipse To specify the colors of the object, click |HColors|H. You may specify a different color for |HNormal Border|H, |HNormal Fill|H, |HSelect Border|H and |HSelect Fill|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Border|H or |HSelect Fill|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this object it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the object with a variable, click |HVar|H and specify a boolean variable. When the object is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this object a "hit box", enter a string in the |HResponse|H field. Whenever this object is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this object is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |12 Text/Variable Type the text you want to be displayed in the |HText|H field. If you also want to display a variable, click |HVar|H and choose the variable from the list. The variable will be placed at the end of the |HText|H string. You may specify the formatting of the string by changing the gadget from |HCenter|H to either |HLeft|H or |HRight|H. These formats are relative to the size of the |BText/Variable|B box. You may also set the system font used. |IAmigaVision|I supports all standard Amiga fonts. Click on |HFont|H to display the font requester, and choose the appropriate font and size. To specify the colors of the text, click |HColors|H. You may specify a different color for |HNormal Text|H, |HNormal Background|H, |HSelect Text|H and |HSelect Background|H. Choose a color from the palette, or change the gadget from |HVisible|H to |HTransparent|H. If you specify colors for the |HSelect Text|H or |HSelect Background|H, the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this text it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. If you wish to make this text a "hit box", enter a string in the |HResponse|H field. Whenever this text is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this text is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |13 Brush Specify the name of the brush in the |HNormal|H filename field. If you want a different brush to appear when the object is selected, specify it in the |HSelected|H filename field. If you want to only display part of a larger brush, make the box the brush is displayed in smaller. Use the |HPlace|H button to move the brush around relative to the display box. Turning on |HCookie Cut|H will make color 0 in the brush transparent. Turning on |HHit Mask|H will require the user to actually click on the object (not on the transparent color) to select the object. To specify the colors of the brush, click |HColors|H. You may specify a different color for |HNormal Brush|H and |HSelect Brush|H. |HMulti-colored|H uses the full palette of the brush for the object, |HTransparent|H hides the brush and |HStencil|H makes the brush one solid color chosen from the palette requester. If you specify colors for the |HSelect Brush|H the |HSelected|H button will be turned on when you exit the |HColors|H requester. If you turn |HToggle|H on, whenever the user clicks this brush it will switch from |HNormal|H to |HSelected|H, and it will switch back when it is clicked again. To associate the brush with a variable, click |HVar|H and specify a boolean variable. When the brush is clicked, a TRUE value will become FALSE and vice-versa. If you wish to make this brush a "hit box", enter a string in the |HResponse|H field. Whenever this brush is selected by the user, the value of the |Iresponse()|I function will be equal to this string. If you would like a sound to be heard when this brush is clicked, turn |HSound On|H. If you do not specify a sound file, the default sound (as specified in |IDefaults|I) will be heard. Otherwise enter the name of the sound in the filename field. You may also control which speaker the sound is heard through, |HStereo|H, |HLeft|H or |HRight|H. |14 Input Field Specify the variable that is to be input by clicking |HVar|H and choosing the variable from the list. You may specify the type of information being entered by changing the field type: |HString|H, |HNumeric|H, |HBoolean|H and |HDate|H. |IAmigaVision|I will take this type on iput and evaluate it to fit into the variable you specified. For all types but |HBoolean|H you may specify the |HSize|H of the input, up to 19 for digits and 255 for strings. For |HNumeric|H values you may also specify the number of decimal places from 0 to 8. For |HString|H types you may force the text to be all |HUPPER|H, all |Hlower|H or |HMiXed|H case. The text will be reformatted when the user enters the string. You may also specify the formatting for the input field: |HCenter|Hed, |HLeft|H aligned or |HRight|H aligned text. To specify the colors of the input field's border, click |HColors|H. You may specify a color for or make the border |HTransparent|H. To further validate entries you may specify an expression to compare the user's input with. If the input matches the |HError Condition|H, the Error |HMessage|H appears at the bottom of the screen and the user must input something new. |15 Text Window In the requester you may set the screen font used display your text from an ASCII file. |IAmigaVision|I supports all standard Amiga fonts. Click on |HFont|H to display the font requester, and choose the appropriate font and size. To specify the colors of the text, click |HColors|H. You may specify a different color for |HWindow Border|H, |HWindow Background|H, |HNormal Text|H and |HHighlighted|H text. You may embed formatting controls in your text file for different effects: ||H Highlighted text: |Hhighlighted|H ||I Italic text: |Iitalic|I ||B Bold text: |Bbold|B ||U Underlined text: |Uunderlined|U You may also use combinations: ||H||I||B||Utext: |H|I|B|Utext|H|I|B|U |16 Screen Palette Modify the |HRed|H, |HGreen|H and |HBlue|H values of a color by selecting that color and dragging the sliders left and right. To abort the color changes you make, click |HCancel|H. To switch back to the original colors and continue editing the palette, click |HReset|H. |17 Screen Definition The |BScreen Definition|B refers to the resolution and other screen settings that the objects will appear on. The Object Editor automatically assumes the settings of the closest screen defined in the presentation and will allow you to load the background picture if one is specified. If you wish to load a new picture as the background, specify it in the |HFilename|H field. You may specify the |HLeft|H and |HTop|H offsets for the picture by changing the related values. You may also set the resolution, number of colors, overscan and interlace settings. Resolution refers to the number of horizontal pixels that appear on the screen, 320 for |HLow Resolution|H, |HExtra Halfbrite|H and |HHold & Modify|H; 640 for |HHigh Resolution|H. The other settings are |HCurrent|H, which will not change the settings for this picture, and |HFile Defined|H which is useful when using variables for filenames. The number of colors is dependent on the resolution. Low Resolution screens may have 2, 4, 8, 16 or 32 colors. High Resolution screens may have 2, 4, 8 or 16 colors. Extra Halfbrite screens always have 64 colors and Hold & Modify screens always have 4096 colors. The |HInterlace|H setting refers to the number of vertical pixels that appear on the screen. On American (NTSC) monitors, non-interlaced screens are 200 pixels high, and interlaced screens are 400 pixels high. On European (PAL) monitors, non-interlaced screens are 256 pixels high, and interlaced screens are 512 pixels high. The |HOverscan|H setting refers to the use of border area on the monitor. Normally a picture is centered on the screen with a colored border on all four sides. Overscan screens extend into this border, making them taller and wider. Low Resolution Standard Overscan screens are 352 pixels wide and Maximum Overscan screens are 368 pixels wide. High Resolution Standard Overscan screens are 704 pixels wide and Maximum Overscan screens are 736 pixels wide. NTSC Overscan non-interlaced screens are 240 pixels tall, interlaced screens 480 pixels tall. PAL Overscan non-interlaced screens are 296 pixels tall, interlaced screens 592 pixels tall.