dlw@hpsmtc1.HP.COM (David Williams) (05/07/88)
Well Boys and Girls here are just some of the new things to expect from Hypercard 1.2 Stack Enhancements: * Area Codes now includes area codes for Canada. * Button Ideas has new buttons for importing and exporting text. * Home has a new setting on the User Preferences card. * Datebook has been redesigned for an international audience. * Phone now supports international dialing conventions. Text Arrows HyperCardUs Text Arrows option (new in versions 1.1 and later) lets you use the arrow keys when you edit text fields or the Message box. When you click any user level button except Browsing on the User Preferences card, a check box labeled Text Arrows appears. With Text Arrows checked, the Left Arrow and Right Arrow keys move the insertion point to the left and right over text in a field or in the message box; the Up Arrow and Down Arrow keys move up and down through lines in a field. To move to the previous or next card, or to go back and forward through cards youUve seen, hold down the Option key as you press the appropriate arrow key. (With Text Arrows unchecked, you don't need to hold down the Option key.) For details on the User Preference card, see pages 22 and 50 of the HyperCard UserUs Guide. For more information on the actions of arrow keys with Text Arrows unchecked, see pages 116 P120. The Button Ideas stack has three new buttons for importing and exporting text. Use the Import button to bring text into the current stack from any ASCII text file. HyperCard asks if you want to import a file as Data or Text. A series of further questions appear, depending on which answer you give. IMPORTING DATA... Click Data to import from a spreadsheet or database document, or any text document separated into fields and records. HyperCard asks whether you want to use Tab and Return as delimiters: The Tab character ASCII 9 is the standard delimiter for fields; the Return character ASCII 13 is the standard delimiter for records. In nearly all cases, the appropriate answer is Yes. (If you answer Other,HyperCard asks what ASCII characters you want to use.) Next, HyperCard asks if you want Header information included. If you say yes, HyperCard will list at the start of the imported text the number of cards created, the name of the file the text came from, the number of lines in the file, and the total number of characters imported. Finally, HyperCard asks for the name of the file you want to import: you won't see the typical directory dialog box listing all your files and folders, so you'll need to write down the file's name and pathname in advance. For each record, HyperCard creates a new card with a scrolling background field into which it copies the imported text. (It makes a new background on the first card that it creates so that the rest of your stack remains unaffected.) HyperCard creates a new background field for each fieldUs worth of text you import. These fields are piled atop one another as they're created; so if you import several fields for a particular record, you'll need to peel the fields apart to see them. (See page 57 in the HyperCard User's Guide for information on moving fields.) IMPORTING TEXT... Click Text to import a word-processing document or any text document that isn't separated into records. HyperCard asks if you want Header information included. If you say yes, HyperCard will list at the top of the imported text the number of cards created, the name of the file the text came from, the number of lines in the file, and the total number of characters imported. After it asks if you want Header information, HyperCard asks for the name of the file you want to import: you won't see the typical directory dialog box listing all your files and folders, so you'll need to write down the file's name and pathname in advance. HyperCard creates a new card with a scrolling background field, into which it copies the text. (It makes a new background on the first card that it creates so that the rest of your stack remains unaffected.) Exporting Text Use the Export Text button to send text from the specified background field(s) of the current background to a document that you name. HyperCard asks you which fields in the current background you want to export text from. Then it asks for the name of the document you want to send the text to. If the document you name doesn't exist, HyperCard creates it; if the document already exists, HyperCard asks you to confirm that you want the text in that document replaced. (You can't append exported text to the end of the existing text.) Export Text doesn't send record and field delimiters; to create a document that a database or spreadsheet application can use, use the Export Data button. Exporting Data Use the Export Data button to send text from the specified background field(s) of the current background to a document that you name. The text is sent with record and field delimiters so that it can be more readily accepted by spreadsheets, databases, and other applications that separate text into fields and records. HyperCard asks you which fields in the current background you want to export text from. Then it asks for the name of the document you want to send the text to. If the document you name doesn't exist, HyperCard creates it; if the document already exists, HyperCard asks you to confirm that you want the text in that document replaced. (You can't append exported text to the end of the existing text.) Finally, HyperCard asks whether you want to use Tab and Return as delimiters: The Tab character- ASCII 9 is the standard delimiter for fields; the Return character.ASCII 13 is the standard delimiter for records. In nearly all cases, the appropriate answer is Yes. (If you answer Other, HyperCard asks what ASCII characters you want to use.) Write Protected Stacks HyperCard stacks can be write-protected. You can look at a write-protected stack and make copies of all or part of it, but you can't change it. You can recognize a write-protected stack because you can't type into any fields (even if they're not locked) and you can't use certain menu items. (They're grayed out.) You can use the Message box to make temporary changes to a card (for example, put pay * taxes into field 3), but as soon as you leave the card the changes will disappear. Stacks are write-protected in a number of ways: *The stack is on a CD-ROM. *The stack is on a file server in a folder whose access privileges are set to Read Only. *The Locked box is checked in the stack's Get Info box in the Finder. *The stack is on a locked 3.5-inch disk. *Can't Modify Stack is checked in the stack's Protect Stack dialog box. *The cantModify property is set to TRUE. When the stack is on write-protected media (a locked disk, CD-ROM, a locked folder on a file server), HyperCard automatically puts a check into the Can't Modify Stack option; you can't uncheck it. To make changes to such a stack, you'll first have to unprotect it. In many cases, copying a stack to an unlocked disk makes the stack modifiable. (But if a user or scripter has checked Can't Modify Stack in the stackUs Protect Stack dialog box or if the Locked box is checked in the stack's Get Info box in the Finder, you'll have to uncheck the proper boxes before you can make stack changes.) Auto Tab When Auto Tab is checked in the Field Info dialog box of a non-scrolling field , pressing Return with the insertion point in the last line of that field moves the insertion point to the next field on that card. (Normal tabbing order is followed: if the field you're leaving is a card field, the insertion point moves to the next higher-numbered card field or to the lowest-numbered background field if no higher-numbered card field exists; if the field you're leaving is a background field, the insertion point moves to the next higher-numbered background field or to the lowest-numbered card field if no higher-numbered background field exists.) This feature can be useful, for example, when you're creating a form: when the person filling out the form completes a field and the insertion point is in the last line, all she need do to move to the next field is press Return. (See page 60 in the user's guide for a discussion of tabbing and field order.) Line Spacing Shortcut Changes In earlier versions of HyperCard you could press Command-Option-> and Command-Option-< to increase or decrease the space between lines of text. In version 1.2, you must add the Shift key to the formula: with the appropriate field selected, press Command-Option-Shift plus either > or < to increase or decrease spacing. Stacks on file servers Only a single user has access to a stack on a file server when the stack is unlocked. Any number of users have access to a stack when the stack is locked (but no one can make changes to it). If any one of the following conditions are true, a stack is considered locked: *The stack is on a CD-ROM. *The stack is on a file server in a folder whose access privileges are set to Read Only. *The Locked box is checked in the stackUs Get Info box in the Finder. *The stack is on a locked 3.5-inch disk. _______________________________________________________ Checking Can't Modify Stack in the stackUs Protect Stack dialog box isn't enough to give multiple users access to the stack. _______________________________________________________ Additions to HyperTalk These additions to the HyperCard scripting language are new for version 1.2 and will not work with older versions. For complete details on HyperTalk, see or any of the other books on HyperTalk available at your favorite bookseller. Peeking at objects and scripts-command + option and click cantModify-The cantModify property lets you control whether a stack can be changed in any way. This property checks or unchecks both the CanUt modify stack option and the Can't delete stack option in the Protect Stack dialog box. showPict The showPict property makes the background or the card picture visible (set TRUE) or invisible (set FALSE). When the showPict of an object is set FALSE and you attempt to use a Paint tool on that object, a dialog box appears asking if you want to make the picture visible: clicking OK sets showPict of this object to TRUE and the picture appears; clicking Cancel cancels the action. cantDelete-The cantDelete property controls whether a user can can delete the specified card, backround, or stack. This property checks or unchecks the appropriate option on the info box of the object in question. userModify-The userModify property controls whether a user can type into fields or use Paint tools on a stack that has been write-protected. A card is write-protected under the following circumstances: *The stack is on a CD-ROM. *The stack is on a file server in a folder whose access privileges are set to Read Only. *The Locked box is checked in the stack's Get Info box in the Finder. *The stack is on a locked 3.5-inch disk. *Can't Modify Stack is checked in the stack's Protect Stack dialog box. This property is set to FALSE when the user goes to another stack or quits HyperCard. userModify has no effect on an unlocked stack. New Abbreviations: Here are four new abbreviations you can use in scripts: pict for Picture fld for Field cd for Card bg for Background Show Picture|Hide Picture show picture of <card expr> | <bkgnd expr> hide picture of <card expr> | <bkgnd expr> show <card | background> picture hide <card | background> picture Show Picture shows the specified picture on the specified card or background; Hide Picture hides the specified picture on the specified card or background. When an object's picture is hidden and you attempt to use a Paint tool on that object, a dialog box appears asking if you want to make the picture visible: clicking OK shows the picture; clicking Cancel cancels the action. Find Whole (or Shift-Command-F) Syntax: find whole "<what to find>" The Find Whole option (or Shift-Command-F) lets you search for a specific word or phrase (including spaces) anywhere in a stack. For HyperCard to find a match, all the characters must be in the same field on a card, and they must be in the same consecutive order as they appear in Find Whole's argument. The argument is enclosed within quotation marks: Find Whole "Apple Computer" The above example finds cards that have the phrase "Apple Computer" on them; it won't find "Apple Computers" or "This apple is a computer". (The Find command without Whole would find matches for all three cases.) Find Whole won't stop on cards that have only partial matches: for example, Find Whole "Ed" won't match 'Edward'. Find Whole pays no attention to case or to diacritical marks when it looks for matches:apple Cmpter, apple computer, and Apple Computer are all seen as the same. When you use the Find command without Whole, HyperCard looks for cards that contain everything between the quotation marks, even if the words appear in a different order or in different fields. As with Find, you can use Find Whole to search in a specific background field. For details on this and other Find options and restrictions, see pages 120-122 in the user'sguide. Find String - Syntax: find string "<what to find>" The Find String option lets you search for a contiguous group of characters anywhere in a stack. Word boundaries are ignored. For HyperCard to find a match, all the characters must be in the same consecutive order as they appear in Find String's argument. The argument is enclosed within quotation marks: find string "ple computer" The above example finds the string "ple computer" in "Apple computers" but not in "company that makes computers, not apples". (The Find command without String would find a match in the second case, but not the first.) Lock Screen | Unlock Screen Syntax: lock screen unlock screen [with <visual effect>] Lock Screen has the same effect as setting the property lockScreen to TRUE: it prevents HyperCard from updating the screen. To unlock the screen, use UNLOCK SCREEN. Optionally, you can show and hide card and background pictures and objects using a single visual effect: 1. Lock the screen. 2. Enter hide and show commands that you want to take effect when the screen is unlocked. 3. Unlock the screen using the form unlock screen with <visual effect> where <visual effect> is any single visual effect. Be sure to pair each Lock with a corresponding Unlock. If, for example, you lock a screen three times and unlock it only twice, the screen will still be locked and any visual effect you've set won't work. For visual effects to work, when you're using more than one monitor the card window must appear on the same monitor as does the menubar (although the menubar can be invisible); if you're using a Macintosh II, set Characteristics to Black & White/Grays and Grays to 2 in the Monitors section of the Control Panel. cantDelete This property checks or unchecks the appropriate option on the info box of the object in question. The Select command and the Found & Selected functions are too new to be documented here. ************************************************************ Previews of coming attractions From Your Friendly Neighborhood Spiderman ----