MTB30a Features/Additions/Bug Fixes

>My question is what other handlers are new in mtb30a? Can anyone give >us a list of them?

This is a section from the file relnotes.wri that comes with mtb30a (sorry if it is a bit long):

Changes and New Features in Multimedia ToolBook 3.0a The Multimedia ToolBook 3.0a update fixes a number of small problems and compatibility issues, primarily in the areas of multimedia devices, 256-color palette behavior, and full-text search. The features described below have been added in this release.

3.1. Updates to Asymetrix Digital Video Producer and Microsoft Video for Windows

Asymetrix Digital Video Producer version 3.0c is included on the CD-ROM. To update your existing version, choose "Install Digital Video Producer" from the main installation menu. This will also install the latest Video for Windows software (version 1.1d). To distribute Video for Windows 1.1d with your application, copy the files from the \DRIVERS\VFW11D\DISK1 directory to a disk.

3.2. Chromakey support for bitmap resources

You can now specify "see-through" sections for bitmap resources displayed in buttons and fields by setting a color that Multimedia ToolBook will treat as transparent. This option is specified once for the resource and automatically applies everywhere the resource is used in fields or buttons (chromakey does not apply to resources displayed in stage objects).

To enable the chromakey, set the useChromakey property of the bitmap resource to true and set the keyColor property to the color to be masked as transparent. You can set keyColor to a color constant, such as black or magenta, or to an HLS color value. Use the Command window or a script to set these properties as shown in the following example (there is no user interface support for this functionality):

 
        useChromakey of bitmap "fish" = true
        keyColor of bitmap "fish" = magenta
 
Reminder: For paint objects, the fillColor property specifies the color that is masked as transparent. For bitmap resources, the keyColor property performs this function. For both paint objects and resources, the useChromakey property must be true for the transparency to take effect.

3.3. solidColorsEnabled property of picture objects

Some drawing packages export metafile graphics that specify that their colors should be drawn dithered to the 16 standard Windows colors. You can set the new solidColorsEnabled property of a picture object to true to cause Multimedia ToolBook to attempt to "best match" the colors to the current palette instead of dithering. This functionality requires that solidColorsEnabled of the book is also true.

Use the Command window or a script to set the solidColorsEnabled property as shown in the following example (there is no user interface support for this functionality):

 
        solidColorsEnabled of picture "student" = true
 
You can add a handler for the make message that sets this value automatically whenever a new picture object is created by placing a handler (such as the example below) in the book script or system book:

 
        to handle make
                forward
                if (object of target is "picture")
                        solidColorsEnabled of target = true
                end
        end
 
Because these graphics do not contain palette information, the colors are "best matched" to the current palette. For complete information on how palettes are determined, see Appendix B, "Working with 256-color display devices" in the ToolBook User Manual.

3.4. firstIdle message

Sent when Multimedia ToolBook first reaches an idle state immediately after entering a page. Use this message to trigger actions you want to occur after the enterPage processing is complete. This message is sent only for notification. ToolBook's default response is to do nothing.

You can use the firstIdle message to set focus to an object when entering the page. (The default focus is set after the enterPage message is processed.)

3.5. textRightOverflow property of fields

A field or record field property that specifies the number of characters completely or partially clipped for each visible line of text. This property cannot be set.

Value: A comma-delimited list of numbers representing the number of partially or completely clipped characters for each line displayed in the field. The first number in the list corresponds to the first visible line of text. The itemCount of the represents the number of text lines displayed.

Use this property to determine whether all of the text fits in the display area of a singleSelect, multiSelect, or noWrap field type. For a wordWrap field type, the numbers in the list are always zero.

3.6. Enhanced textOverflow property of fields

In prior versions of Multimedia ToolBook, the textOverflow property of fields and record fields reported the number of characters clipped at the bottom of the field. Characters clipped at the right of single-line fields were not reported. The property has been extended to apply to characters clipped in single-line fields.

3.7. International character support in full-text search

The full-text search engine now supports international character sets. The following files are supplied to support alternative character sets:

CHARFRN.STS     French extended character set
CHARFR2.STS     Alternate French extended character set
CHARGER.STS     German extended character set
CHARSCA.STS     Scandinavian extended character set
CHARSCN.STS     Alternate Scandinavian extended character set
CHARSET.STS     The default STANDARD English language
CHARUNO.STS     United Nation multi-lingual extended character set
CHARUN2.STS     Alternate United Nations multi-lingual extended character set.
To use one of these character sets for a full-text search index, add an entry of the following form to your MTB30.INI file:

 
 
        [STSPATH]
        CHARSET=C:\MTB30\CHARFRN.STS
 
 

3.8. menuPosition( ) menu control function

Syntax

menuPosition( {name | alias} [in {menu reference} [in {menu reference}] 
...] [at {level}] [,{viewer reference}])
Parameters
{name | alias}
The name of the menu as it appears on the menu bar, or the alias assigned to the menu. Enclose the name in quotation marks (" ") if it contains spaces or punctuation.

{menu reference}
A valid reference to an existing menu or submenu in the target window. If more than one menu shares the same reference, Multimedia ToolBook acts on the first menu from the left on the menu bar.

{level}
Author, reader, or both; if a level is not specified, the default is the current working level when the function is executed.

{viewer reference}
A valid reference to the viewer that owns the menu bar resource with the menu. This parameter is optional.

Description
Returns the position of the specified menu. If the specified menu in the target window does not exist, this function returns null.

You can refer to a menu in a submenu by using the in {menu reference} parameter. You can use this parameter multiple times to refer to a cascading menu with multiple submenus.

3.9. menuItemPosition( ) menu control function

Syntax
menuItemPosition({name | alias} [in {menu reference} [in {menu
reference}] ... ] [at {level}] [,{viewer reference}])
Parameters
 {name | alias}
The name of the menu item as it appears on the menu, or the alias assigned to the menu item. Enclose the name in quotation marks (" ") if it contains spaces or punctuation.

{menu reference}
A valid reference to an existing menu or submenu in the target window. If more than one menu shares the same reference, Multimedia ToolBook acts on the first menu from the left on the menu bar.

{level}
Author, reader, or both; if a level is not specified, the default is the current working level when the function is executed.

{viewer reference}
A valid reference to the viewer that owns the menu bar resource with the menu item. This parameter is optional.

Description
Returns the location of the menu item on a menu. If the specified menu item is not on a menu in the target window, this function returns null.

You can refer to a menu item in a submenu by using the in {menu reference} parameter. You can use this parameter multiple times to refer to a cascading menu with multiple submenus.

3.10. isChanged book property

Description
A book property that specifies whether a book has been changed since it was last saved. You cannot set this property.

Value
True or false.

3.11. hyperlink message

Sent to the page when Hyperlink is chosen from the right-click menu or properties dialog box. You can also send this message using the send hyperlink statement. Multimedia ToolBook's default response is to display the Hyperlink dialog box. You can write a handler for the hyperlink message to create a custom dialog box, or you can send the message to invoke the Hyperlink dialog box from a script.

Syntax
hyperlink {target}
Parameter

{target}
Specifies the object for which the Hyperlink dialog box is displayed. This parameter is required.

3.12. Background-relative page name referencing

Pages referenced by name can now be specified within a particular background. For example, page "summary" of background "diagnostics" is a valid page reference. This allows you to create multiple backgrounds that use identical page names in a book.

3.13. Command window and alwaysReader viewers

The behavior of the Command window has been altered to prevent the accidental modification of Author-level tools that use viewers. If the target window (displayed in the Command window caption bar) has the alwaysReader property set to true, the Command window will not execute the script and will display an error message. To execute the command, either click another viewer to change the target window, or use the right-click menu to temporarily turn off the alwaysReader flag.

3.14. Widgets font now embeddable

The TrueType "widgets" font supplied with Multimedia ToolBook (MTBWIDE.TTF) is now read/write embeddable. (See Installation Note under "Known Issues.")

3.15. Prompt parameter added to Setup Utility Action instruction

The Setup Utility has been enhanced to support a prompt string to be displayed when the program indicated by the Action instruction is not available. This allows for cases where the specified program is on a floppy disk other than the last install disk. To add a prompt string, edit the .INF file created by the Setup Manager and add a second parameter (separated by a comma) to the Action instruction as shown below:

 
        Action0 = $Source$\SetupZot.EXE, "Please insert the disk Zot #1"
 
If present, the prompt string will be displayed if the specified program cannot be located. The user can correct the situation then choose OK, or choose Cancel.

3.16. Substitution string added for Source Drive Letter

A $SourceDrive$ substitution string that indicates the drive letter (but not the directory) from which SETUP.EXE was executed. This string may be used wherever the other substitution strings such as $Install$ are used. The sample .INF entry below executes an install program located in a different directory on the original installation disk:

 
        Action0 = $SourceDrive$:\extra\SetupZot.EXE
 

3.17. FinalAction instruction added for actions to follow Message instructions

The Setup Utility has been enhanced to support a FinalAction instruction that is executed after all other Action and Message instructions are executed. (In general, Action instructions are executed prior to Message instructions.) The syntax for the FinalAction instruction is identical to that for the Action instruction. For example:

 
        Message0 = "Do not ignore the Release Notes which follow."
        FInalAction0 = $Windows$\write.exe $SourceDrive$:\notes\ReadZot.WRI
 

3.18. sysVersion now 3.0a

The sysVersion property now returns "3.0a" instead of "3.0". If you have written scripts that specifically check for "3.0", you should change them to look for "3.0a", or to find "3.0" as a substring in sysVersion.

3.19. overlayAlias property of stage objects

Stage objects support a new property called overlayAlias. When you use a video overlay device in a stage object, it may be necessary to use an MCI command to set some parameters if the default values do not match your configuration. The sample script below uses the overlayAlias to select video source 1 instead of the default of 0 for a Super Video Windows overlay board:

 
        --Opens overlay for live video:
        overlayOpen of stage "test" = true
        --Selects video source #1:
        vidAlias = overlayAlias of stage "test"
        get callMCI("set" && vidAlias && "source source1")
 

3.20. Media Path delimiter corrected to comma

In Multimedia ToolBook 3.0, the HDMediaPath and CDMediaPath book properties were returned as semi-colon separated lists when referenced in OpenScript. This has been corrected to a return comma-separated list (as documented in the 3.0 manuals and online Help). Setting these properties to a semi-colon-delimited list is still supported for compatibility. However, you should update your scripts to use commas.)

3.21. Corrected graphic button behavior when switching display font sizes

In Multimedia ToolBook 3.0, graphic buttons with the stretchGraphic property set to false would, under some circumstances, partially stretch bitmap resources. This behavior occurred when applications were run on a video driver with a logical font size different from that used by the system on which the book was created. In 3.0a, to provide more desirable behavior, the graphics do not stretch unless the button's stretchGraphic property is true. However, we recommend that you check your application to ensure it is not adversely affected by this new behavior.


Revised 18/8/95
brianp@u.washington.edu (Brian Parkhurst)
University of Washington
Box 357260
Seattle, WA 98195-7260
206/543-9175