TweetFollow Us on Twitter

Dialoger
Volume Number:5
Issue Number:11
Column Tag:Kelly's Corner

Dialoger™ Helps HyperCard

By Dave Kelly, MacTutor Editorial Board

A dialog with HyperCard

Are you getting tired of only being able to create dialogs with only 3 possible replies. HyperTalk supplies the “Answer” statement which displays a dialog box containing a prompt and one, two, or three buttons. The “Ask” statement displays a dialog box containing a question and an edit box for the user to type a response. For very simple responses these statements may be good enough, but what do you do if you want a more complex dialog?

You could write your own XCMD or XFCN to display a custom dialog that you could create with ResEdit, but why re-invent the wheel? Introducing Dialoger™ from theResult Software Inc. At the heart of Dialoger™ is a set of XCMDs and XFCNs which provide versatility and flexibility. Dialoger™ is a productivity tool. The Dialoger™ package consists of four stacks, 3 of which provide help and examples.

The Dialog Maker stack is the tool provided to create dialogs which can then be exported to any stack along with a button with a script to call the dialog. This stack provides a tool palette which lets you create the custom dialog on a HyperCard card. The tools let you create the items used by the dialog. The limitation here is that even though you can create as many items as you have room for, you may only manipulate (or modify) items 3-16 from your HyperCard script. A bit of planning and this won’t be too much of an inconvenience.

The Push Button Tool lets you create a new push button. The limitation here is that the first item of any dialog should always be an ‘OK’ push button and the second item should be a ‘Cancel’ push button. If you don’t want an ‘OK’ or ‘Cancel’, you can define the size to zero and make the item virtually invisible. Since you can only manipulate items 3-16, it is recommended that the first two items be defined as ‘OK’ and ‘Cancel’.

The Radio Button and Checkbox Tools allow you to create radio and Checkbox controls for the dialog. Radio buttons may be grouped together such that only one button may be selected at a time by ordering the buttons next to each other in the item list. You can re-order the item list by clicking the create button.

The editable text and static text tools are for providing text in the dialog. User text placeholders (such as ^0, ^1, ^2, and ^3) may be used to replace text when the dialog is called (in your script) or text items may be editable or static. The usertext tool is an alternative to the static text. It is not restricted to begin in the default font; any font and size may be specified.

The icon and picture tools allow you to use icons or pictures in your dialog. When you click on these tools, a list of ICONs or PICTs from the current stack are shown. An open button allows you to open another stack to use ICON or PICTs from there. ICONs or PICTs from other applications or files need to be moved to a stack using ResEdit or ResCopy (which comes with Dialoger™).

The box tool is used to create boxes which you can have direct control over how the box will be displayed (such as pen pattern, fill pattern, etc.) from your script. However, you will not have control until the dialog is created and the box item must still be between item 3 and 16 to be able to set the patterns, etc.

The Popup Tool creates a new Popup menu item for your dialog box. The menu items are included in the button script when you export the dialog to your stack.

The List tool is used to create list items.

Buttons are also available to create ICON, PICT and SICN (small icons) from any part of the HyperCard window.

‘Import’ button will import existing dialogs into HyperCard for editing. ‘Create’ will create DLOG and DITL resources from the HyperCard card. Before creating the dialog you may re-order the items to the order you want them to appear. You may also specify the type of dialog that you want to create. The ‘Show’ button will give you a quick preview of what the dialog will look like. This gives you a chance to see what needs to be modified in the dialog before actually exporting to your stack. The ‘Export’ button allows you to install your dialog and pre-defined button script into your stack. You may also export the Dialoger XCMDs and associated XFCNs into your stack.

Dialoger™ Scripts

The Dialog Maker stack creates the dialog and a script which you can build upon to link your stack and dialog(s) together. The Dialoger XCMD is call with a HyperTalk ‘Put’ or ‘Get’ statement:

  put Dialoger(“Example”& return & “on exampleHit”¬
  ,”” ¬ --Placeholder replacement text
  , “”¬ --Radio Button “Deep Dish”
  , “”¬ --Radio Button “Thin’n Crispy”
  , “”¬ --Checkbox “Home Delivery”
  , “”¬ --Icon “20086”
  , “”¬ --Button “Motto ”
  , “userBox Black,None,Copy”& CR &” Style “¬ --Box (Black pen, None 
fill)  “ Style “
  , “userText New York,18,White”& CR &”Peter’s Pizza Palace<B<U”¬ --Text 
“Peter’s Pizza Palace”
  , “userList Geneva,12”  & CR & List1¬ --List “Anchovies”
  , “”¬ --Editable Text “”
  , “”¬ --Static Text “Name:”
  , “userPop”  & CR & PopUp1¬ --PopUp “Small”
  , “”¬ --Static Text “Size:”
  , “”¬ --Static Text “Toppings”
  , “userBox Gray,None,Copy”¬ --Box (Gray pen, None fill)
  ) into dResult
  
  -- Beyond Limit: , “”¬ --Card Picture

Each parameter of the function corresponds to each item in the dialog. Parameters 3-16 may be modified when the dialog is called, any others are beyond the limits of the function. The status of each item in the dialog is returned by the function and (in this case) placed into the variable dResult. Each line of dResult corresponds to the status of each item in the dialog at the time it was closed. dResult might look like this:

OK

true
false
true




3,4,5,6,7
Dave

Small

The ‘OK’ above indicated that item one of the dialog was selected. Item 2 was not selected. Item 3 was true, 4 was false, 5 was true. The list item (item 10) had items 3,4,5,6, and 7 selected. Item 11 was the editable text field; Dave was returned. The Popup menu item ‘Small’ was selected in item 13.

Since the scripts are pre-defined by the Dialog Maker stack, implementing the dialogs is a breeze. The dialogs may be customized even more and controlled by a script handler even when the dialog is still active. The “on exampleHit” statement in the dialoger function will generate a HyperCard message “exampleHit” which may be handled as desired even when the dialog is still active.

Additional commands are available to give even more flexibility to the dialogs. For example, you can use the ‘ResIDList’ or ‘ResNameList’ to get all the names or IDs of a specified resource type. This would be useful to get the names of all fonts to put in a menu or a list. The weakest aspect of Dialoger™ is the manual. theResult Software has recognized that this is a weak point and will eventually update the manual. An experienced program will still have no trouble figuring out how things work, but still may have to dig a little to find out what each function/command does. There is a help stack which gives an overall tutorial of Dialoger™ and a Commands stack which gives syntax and a description of some of the XFCNs which may be used in conjunction with the dChanger, and dialoger XFCNs. Not all functions are listed anywhere in the Dialoger package, though may be useful to you. The following XCMDs and XFCNs are found in the Dialoger package:

XCMDs:

CloseResFork: (example: closeResFork(fNum)

CoSortInt: (Don’t know what this does)

dChanger: this function is used to change items in a dialog.

DisplayPict: assumed that this displays PICTs

GetPicture: assumed that his gets PICTs

ResCopyQuick: (example: resCopyQuick fromFile,toFile,”PICT”,(short name of obj) )

SetCursor2: sets cursors

XFCN’s:

AfterChar: (example: put AfterChar(quote, strName) into var ) this will put all characters after the specified character into the variable.

BeforeChar: (example: put BeforeChar(quote, strName) into var )this will put all characters before the specified character into the variable.

ChangeStr: (Don’t know what this does)

dActivate: (example: get dActivate() ) used to activate modeless dialogs

dBreaker: (Don’t know what this does).

dBubble: (example: get dialoger(dBubble() & return & “dismiss”) according to the manual, this is used in the closeStack script for modeless dialogs to help determine which dialogs are still open so they can be dismissed.

dContents: (example: put dContents(dialog) into dIntermResult) gets the contents of the dialog at any one moment.

Dialoger: (see example above) displays dialogs and returns the contents of the dialog when dialog is dismissed.

dMaker: (example: get dMaker(dInfo, iTypes, iRects, iTexts, getsHits)

Dragger: Don’t know what this does.

FileName: (example: get fileName(“STAK”, “Select stack to install dialog in:”) ) uses standard get file dialog to get a file name.

FontHeight : (Example: put fontHeight(( textfont of obj), (textSize of obj)) into fH ) gets font height

FontName: gets font name

iMaker: create icons out of any part of the card (example: iMaker(“”,it) ) uses it as the icon’s name.

NewFileName: (example: get newfilename (“Report Name:”) get a new file name using standard get file dialog and use the parameter as the default.

OpenResFork: put openResFork(fName) into fNum

PictRect :(example: get pictRect(rID)

put item 4 of it - item 2 of it into dH

put item 3 of it - item 1 of it into dV ) get the coordinates of a PICT rectangle

pMaker: creates a PICT out of any part of the card (example: pMaker(“”,it) ) uses it as the PICT’s name.

ResIDList: (example: get resIDList(fName,rType) gets IDs from file name fName which have resource type rType.

ResNameList: similar to ResIDList, but gets resource names instead of IDs.

ResSortedList: sorts resource list.

rInfo: Don’t know how this works

sMaker: creates small icons out of any part of the card (example: sMaker(“”,it) ) uses it as the small icon’s name.

StringWidth: (example: put stringWidth(short name of obj,”chicago”,12) into oldPixLen ) gets a portion of a string.

StripItem: Don’t know how this works

TestBed: Don’t know how this works

UnScrunch: Don’t know how this works

Dialoger™ is in fact an ingenious productivity tool which should help you in all your stack development efforts. I recommend it for anyone who uses HyperTalk. Hopefully this overview has given you a good feel for what Dialoger can do for you. Questions regarding Dialoger may be referred to the address below:

Dialoger™ for HyperCard® is available from:

theResult Software, Inc.

616-D Guilford College Road

Greensboro, NC 27409

Fax (919) 855-6931

(919) 294-5034

Price: $94.29 single license version

or add $55 to upgrade to unlimited runtime version:

$150.00 unlimited runtime, (developer version)

includes HyperCard version 1.2.2 and is

NOT COPY PROTECTED!!

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

beaTunes 4.6.14 - Organize your music co...
beaTunes is a full-featured music player and organizational tool for music collections. How well organized is your music library? Are your artists always spelled the same way? Any R.E.M. vs REM?... Read more
iDefrag 5.1.8 - Disk defragmentation and...
iDefrag helps defragment and optimize your disk for improved performance. Features include: Supports HFS and HFS+ (Mac OS Extended). Supports case sensitive and journaled filesystems. Supports... Read more
Day One 2.1.8 - Maintain a daily journal...
Day One is the easiest and best-looking way to use a journal / diary / text-logging application for the Mac. Day One is well designed and extremely focused to encourage you to write more through... Read more
Spotify 1.0.53.758. - Stream music, crea...
Spotify is a streaming music service that gives you on-demand access to millions of songs. Whether you like driving rock, silky R&B, or grandiose classical music, Spotify's massive catalogue puts... Read more
VirtualBox 5.1.20 - x86 virtualization s...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more
Arq 5.7.9 - Online backup to Google Driv...
Arq is super-easy online backup for Mac and Windows computers. Back up to your own cloud account (Amazon Cloud Drive, Google Drive, Dropbox, OneDrive, Google Cloud Storage, any S3-compatible server... Read more
Vienna 3.1.10 :d05d7a5d: - RSS and Atom...
Vienna is a freeware and Open-Source RSS/Atom newsreader with article storage and management via a SQLite database, written in Objective-C and Cocoa, for the OS X operating system. It provides... Read more
WhiteCap 6.7 - Visual plug-in for iTunes...
WhiteCap is a sleek and sophisticated music visualizer and screensaver that features futuristic, wireframe mesh visuals with dynamic backgrounds and colors. WhiteCap contains thousands of visual... Read more
Dropbox 24.4.16 - Cloud backup and synch...
Dropbox is an application that creates a special Finder folder that automatically syncs online and between your computers. It allows you to both backup files and keep them up-to-date between systems... Read more
Amazon Chime 4.2.5645 - Amazon-based com...
Amazon Chime is a communications service that transforms online meetings with a secure, easy-to-use application that you can trust. Amazon Chime works seamlessly across your devices so that you can... Read more

Latest Forum Discussions

See All

ChordFlow (Music)
ChordFlow 1.0.0 Device: iOS Universal Category: Music Price: $6.99, Version: 1.0.0 (iTunes) Description: ChordFlow is a chord sequencer with a unique 4-track polyphonic arpeggiator, extensive chord library, MIDI out and Ableton Link... | Read more »
The Walking Dead: A New Frontier is out...
The newest season of Telltale Games'The Walking Dead is well underway. After the release of the third episode, "Above the Law" about a month ago, episode four, "Thicker Than Water" is hot and ready for more zombies and gut-wrenching emotional... | Read more »
Best games we played this week
Another week, another new wave of mobile games do dive into. We've dug through the list of apps that came out this week to tell you which apps are worth your sweet time. And while there weren't too many games this week, there were some big ones.... | Read more »
Vignettes (Games)
Vignettes 1.0.1 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.1 (iTunes) Description: Vignettes is a casual but unique exploration game without text or characters, where objects shapeshift as you spin them around... | Read more »
Get Me Outta Here is an 80s retro shoote...
Are you ready to fight some aliens? Because Crescent Moon Games has released the retro shooter Get Me Outta Here on iOS devices today. [Read more] | Read more »
Get a bunch of Apple productivity apps f...
If you're an Apple Mac owner, you're probably aware of the host of Apple productivity apps the company includes in all new Mac purchases. Apps like iMovie, Keynote, and of course, GarageBand. While you used to be able to also buy these apps... | Read more »
Terra Mystica (Games)
Terra Mystica 1.03 Device: iOS Universal Category: Games Price: $9.99, Version: 1.03 (iTunes) Description: Short Summary:≈≈≈≈≈≈≈≈≈≈≈≈≈ | Read more »
Ms. Spell (Games)
Ms. Spell 1.0 Device: iOS Universal Category: Games Price: $.99, Version: 1.0 (iTunes) Description: Cast spells and battle monsters in this turn based game, that has you delving into ever the changing Dreadwood to retrieve the lost... | Read more »
Invert - A Minimal Puzzle Game (Games)
Invert - A Minimal Puzzle Game 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Invert is a minimalist puzzle game for fans of brain teasers, logic puzzles, and Rubik's Cube fiddlers. | Read more »
Evergrow: Paper Forest (Games)
Evergrow: Paper Forest 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Solve puzzles in the handcrafted forests of Evergrow through the eyes of an imaginative child and his parents. Discover... | Read more »

Price Scanner via MacPrices.net

15-inch Touch Bar MacBook Pros, Apple refurbi...
Apple is offering Certified Refurbished 2016 15″ Touch Bar MacBook Pros for $360 to $420 off original MSRP. An Apple one-year warranty is included with each model, and shipping is free: - 15″ 2.6GHz... Read more
13-inch MacBook Airs on sale for up to $150 o...
Overstock.com has 13″ MacBook Airs on sale for up to $150 off MSRP including free shipping: - 13″ 1.6GHz/128GB MacBook Air (sku MMGF2LL/A): $869.99 $130 off MSRP - 13″ 1.6GHz/256GB MacBook Air (sku... Read more
15-inch Touch Bar MacBook Pros on sale for $1...
B&H Photo has the new 2016 15″ Apple Touch Bar MacBook Pros in stock today and on sale for up to $200 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 15″ 2.7GHz Touch Bar... Read more
15-inch 2.7GHz Touch Bar MacBook Pros on sale...
Amazon has 2016 15″ 2.7GHz Apple Touch Bar MacBook Pros in stock today and on sale for $150-$200 off MSRP. Shipping is free: - 15″ 2.7GHz Touch Bar MacBook Pro Space Gray (sku MLH42LL/A): $2599 $200... Read more
Apple now offering Certified Refurbished 13-i...
Apple is now offering Certified Refurbished 2016 13″ Touch Bar MacBook Pros for $270-$300 off original MSRP. An Apple one-year warranty is included with each model, and shipping is free: - 13″ 2.9GHz... Read more
MyGiHealth Digestive Symptom Tracker Version...
My Total Health, Inc. has announced the release of MyGiHealth 2.1, an important update to their digestive symptom tracker developed exclusively for iPhone, iPad and iPod touch devices. MyGiHealth is... Read more
Galaxy S8 Materials Costs Highest by Far Comp...
The new Samsung Galaxy S8 equipped with 64 gigabytes (GB) of NAND flash memory carries a bill of materials (BOM) cost that comes out to US$301.60, much higher than for previous versions of the... Read more
iCarMode 4.0 Car Dashboard App For iOS Integr...
Indie developer Diego Resnik has announced the release of iCarMode 4.0, an update to his productivity app developed for iOS devices. iCarMode has positioned itself as a true car dashboard app,... Read more
How to save $150+ on Apple’s 13-inch 2.0GHz n...
Apple Authorized Reseller B&H Photo has non-Touch Bar 13″ 2.0GHz MacBook Pros on sale for $150 off MSRP for a limited time. Shipping is free, and B&H charges NY sales tax only: - 13″ 2.0GHz... Read more
15-inch 2.2GHz Retina MacBook Pro, Apple refu...
Apple has Certified Refurbished 2015 15″ 2.2GHz Retina MacBook Pros available for $1699. That’s $300 off MSRP, and it’s the lowest price available for a 15″ MacBook Pro. An Apple one-year warranty is... Read more

Jobs Board

Music Marketing Lead, iTunes & *Apple*...
# Music Marketing Lead, iTunes & Apple Music Job Number: 56868140 Culver City, California, United States Posted: Apr. 17, 2017 Weekly Hours: 40.00 **Job Summary** Read more
*Apple* Media Products - Commerce Engineerin...
Apple Media Products - Commerce Engineering Manager Job Number: 57037480 Santa Clara Valley, California, United States Posted: Apr. 18, 2017 Weekly Hours: 40.00 Job Read more
*Apple* Mac Computer Technician - GeekHampto...
…complex computer issues over the phone and in person? GeekHampton, Long Island's Apple Premium Service Provider, is looking for you! Come work with our crew Read more
*Apple* Mobile Master - Best Buy (United Sta...
**493714BR** **Job Title:** Apple Mobile Master **Location Number:** 001024-Weatherford-Store **Job Description:** **What does a Best Buy Apple Mobile Master Read more
Best Buy *Apple* Computing Master - Best Bu...
**496963BR** **Job Title:** Best Buy Apple Computing Master **Location Number:** 001061-Marina-Store **Job Description:** **What does a Best Buy Apple Computing Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.