Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!uunet!blkcat!kuhub.cc.ukans.edu@p0.f40.n109.z1.fidonet.org!pfterry@kuhub.cc.ukans.edu From: pfterry@kuhub.cc.ukans.edu@p0.f40.n109.z1.fidonet.org (pfterry@kuhub.cc.ukans.edu) Newsgroups: comp.sys.mac.hypercard Subject: (Part 3) SuperCard 1.5 (long) Message-ID: <749.25FBD5BB@blkcat.fidonet.org> Date: 12 Mar 90 20:18:39 GMT Sender: ufgate@blkcat.fidonet.org (newsout1.26) Organization: FidoNet node 1:109/40.0 - Crewe 400 Nat'l Hub, Joe Keenan Lines: 126 *** Split Message, part #3, MsgSplit Version 2 (11-Mar-90) *** pulling down a menu from the menu bar, both of which force the cursor to an arrow). 8) Disabling Script Interrupts. A new global property called "allowIntsS is available, which when set to false, disables the ability to cancel the execution of scripts via the Command-Period key combination. 9) Quit System Message Added. For better compatibility with HyperCard, the "quit" system message has been implemented and is sent to the current card when it is determined by SuperCard that any particular action will result in all windows being closed (for example, when closing the last open window, or executing the "close all windows" statement). 10) New "LineOffset" Function. A new function called "lineOffset" operates the same as "offset" except it returns the line in which the search string was found, instead of the character position. 11) Invisible Windows. A new keyword addition to the "open window" and "new window" commands ("open invisible window") provides for the opening or creation of new windows without initially showing them. 12) Invisible New Projects. A new keyword addition to the "new project" command ("new invisible project") provides for the creation of new projects during runtime without initially showing the first window. 13) Shuffling Objects. New commands called "shuffleForward" and "shuffleBack" provide the capability to shuffle selected objects forward and backward in the stacking order, one level at a time. 14) Addition to "Close All Windows". This command now defaults to going back to SuperEdit to the Project Overview Window, and optionally, to bring up the current card window, or to return immediately to the Finder. 15) Memory Management Augmentations. The "heapSpace" function no longer purges any internal RAM caches, and only returns the size of the largest contiguous block of memory (not the total amount). A new function called "hasMemory", which takes a byte amount as a parameter, returns true or false indicating whether or not that amount of free space is available in the application heap. It purges memory until it can't purge any more (in which case, it will return false), or until it can return true. 16) Configurable Serial Ports. A new global property called "the serialControl" provides for the full configuration of the modem and printer port settings for use with the "dial" command. The baud rate, parity, data bits, and stop bit are changeable, along with a stipulation of whether or not a carriage return character will be sent out at the end of the string, and which port will be used (printer or modem). 17) Changing Delimiters. Two new global properties called "itemDel" and "wordDel" allow for the modification of the characters used to delimit items and words, respectively. 18) Change to MenuKey Message. The "menuKey" system message now accepts only printable characters as a parameter. 19) Numeric String Comparisons Converted. In the form of an example, the statement "0234 = 234" now evaluates totrue. 20) System Message for Keystrokes. A new system message called "keyStroke" is sent to the current card whenever a key on the keyboard is depressed and no other other legitimate destination for that keystroke has been established (such as typing into a field or the message box). Basically, whenever SuperCard 1.0 would have beeped with a key press, SuperCard 1.5 now sends the "keyStroke" message. The message carries with it one parameter, which is the key that was pressed. If the message is not trapped by a handler, it continues up to the application, resulting in the normal beep. 21) New Object for the Shared File Project Script. The project script for the SharedFile project can now be referred to as "the sharedScript". Using this new object, you can send message directly to the project script of the SharedFile, bypassing the entire message hierarchy. 22) SharedFile StartUp Message. A new system message called "shareInit" is sent directly to the project script of the SharedFile project at start-up time. It is sent out immediately prior to the existing "startUp" message, and is only seen by the SharedFile. 23) Saving Everything from Script. When the "save" command is used with the additional keyword "all" (save all), everything that is currently open is saved to disk. 24) New Script Error System Message. Now, whenever a script error occurs, a new system message called "scriptError" is sent directly to the object containing the offending script. This message carries with it a single parameter, which is the error code associated with the particular type of script error that occurred. Trapping for this message allows the developer to handle script errors in any manner, knowing exactly what kind of error has occurred. 25) Zeroing In On Script Errors. Two new functions have been added for use in determining from a script precisely where a script error occurred. Using the above mentioned "scriptError" message, the "errorObject" function returns the descriptor of the object containing the offending script (very handy in cases where the object may have already been disposed of -- for example, a menu item in a pop-up menu). The "errorOffset" function returns information regarding exactly where in the offending script the error occurred; the line number, the character offset to that line, and the actual character offset to the exact error point. 26) Clearing the Entire Clipboard. When the "cut" command is used with the additional keyword "empty" (cut empty), zero-length data is put on both the public and private scraps maintained by SuperCard, and the entire clipboard is cleared. 27) Deleting Objects. Augmentations to the "delete" command allow for the deletion of specific objects via script control. Delete now functions similar to the "cut" command, except the object or selected text is not placed on the clipboard. It is simply removed. 28) Variation on the "CloseField" System Message. A new system message for fields called "leaveField" is sent to a field whenever the insertion point is removed from that field without any modifications being made to the field contents. This message essentially works the same as "closeField" except that "leaveField" is sent to the field only when no changes were made to the text. When changes have been made to the field contents and the user clicks outside the field, the usual "closeField" message is sent. n -- pfterry@kuhub.cc.ukans.edu at The Black Cat's Shack (Fidonet 1:109/401) Internet: pfterry@kuhub.cc.ukans.edu@p0.f40.n109.z1.fidonet.org UUCP: ...!uunet!blkcat!40.0!pfterry@kuhub.cc.ukans.edu