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

Tunnelblick 3.7.3 - GUI for OpenVPN.
Tunnelblick is a free, open source graphic user interface for OpenVPN on OS X. It provides easy control of OpenVPN client and/or server connections. It comes as a ready-to-use application with all... Read more
Opera 48.0.2685.50 - High-performance We...
Opera is a fast and secure browser trusted by millions of users. With the intuitive interface, Speed Dial and visual bookmarks for organizing favorite sites, news feature with fresh, relevant content... Read more
Tor Browser Bundle 7.0.7 - Anonymize Web...
The Tor Browser Bundle is an easy-to-use portable package of Tor, Vidalia, Torbutton, and a Firefox fork preconfigured to work together out of the box. It contains a modified copy of Firefox that... Read more
FotoMagico 5.5 - Powerful slideshow crea...
FotoMagico lets you create professional slideshows from your photos and music with just a few, simple mouse clicks. It sports a very clean and intuitive yet powerful user interface. High image... Read more
Adobe Audition CC 2018 11.0.0 - Professi...
Audition CC 2018 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Audition customer). Adobe Audition CC 2018 empowers you to create and... Read more
Alfred 3.5.1 - Quick launcher for apps a...
Alfred is an award-winning productivity application for OS X. Alfred saves you time when you search for files online or on your Mac. Be more productive with hotkeys, keywords, and file actions at... Read more
AirRadar 4.0 - $9.95
With AirRadar, scanning for wireless networks is now easier and more personalized! It allows you to scan for open networks and tag them as favourites or filter them out. View detailed network... Read more
DEVONthink Pro 2.9.16 - Knowledge base,...
Save 10% with our exclusive coupon code: MACUPDATE10 DEVONthink Pro is your essential assistant for today's world, where almost everything is digital. From shopping receipts to important research... Read more
ForkLift 3.0.8 Beta - Powerful file mana...
ForkLift is a powerful file manager and ferociously fast FTP client clothed in a clean and versatile UI that offers the combination of absolute simplicity and raw power expected from a well-executed... Read more
Data Rescue 5.0.1 - Powerful hard drive...
Data Rescue’s new and improved features let you scan, search, and recover your files faster than ever before. We have modernized the file-preview capabilities, added new files types to the recovery... Read more

Game of Thrones: Conquest guide - how to...
Fans of base building games might be excited to know that yet another entry in the genre has materialized - Game of Thrones: Conquest. Yes, you can now join the many kingdoms of the famed book series, or create your own, as you try to conquer... | Read more »
Halcyon 6: Starbase Commander (Games)
Halcyon 6: Starbase Commander 1.4.2.0 Device: iOS Universal Category: Games Price: $6.99, Version: 1.4.2.0 (iTunes) Description: An epic space strategy RPG with base building, deep tactical combat, crew management, alien diplomacy,... | Read more »
Legacy of Discord celebrates its 1 year...
It’s been a thrilling first year for fans of Legacy of Discord, the stunning PvP dungeon-crawling ARPG from YOOZOO Games, and now it’s time to celebrate the game’s first anniversary. The developers are amping up the festivities with some exciting... | Read more »
3 reasons to play Thunder Armada - the n...
The bygone days of the Battleship board game might have past, but naval combat simulators still find an audience on mobile. Thunder Armada is Chinese developer Chyogames latest entry into the genre, drawing inspiration from the explosive exchanges... | Read more »
Experience a full 3D fantasy MMORPG, as...
Those hoping to sink their teeth into a meaty hack and slash RPG that encourages you to fight with others might want to check out EZFun’s new Eternity Guardians. Available to download for iOS and Android, Eternity Guardians is an MMORPG that lets... | Read more »
Warhammer Quest 2 (Games)
Warhammer Quest 2 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: Dungeon adventures in the Warhammer World are back! | Read more »
4 of the best Halloween updates for mobi...
Halloween is certainly one of our favorite times for mobile game updates. Many popular titles celebrate this spooky season with fun festivities that can stretch from one week to even the whole month. As we draw closer and closer to Halloween, we'... | Read more »
Fire Rides guide - how to swing to succe...
It's another day, which means another Voodoo game has come to glue our hands to our mobile phones. Yes, it's been an especially prolific month for this particular mobile publisher, but we're certainly not complaining. Fire Rides is yet another... | Read more »
Time Recoil (Games)
Time Recoil 1.0.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.1 (iTunes) Description: Time Recoil is a top-down shooter where you kill to slow time, dominate slow motion gunfights, and trigger devastating special... | Read more »
Campfire Cooking (Games)
Campfire Cooking 1.0 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0 (iTunes) Description: | Read more »

Price Scanner via MacPrices.net

Apple restocks full line of refurbished 13″ M...
Apple has restocked a full line of Apple Certified Refurbished 2017 13″ MacBook Pros for $200-$300 off MSRP. A standard Apple one-year warranty is included with each MacBook, and shipping is free.... Read more
13″ 3.1GHz/256GB MacBook Pro on sale for $167...
Amazon has the 2017 13″ 3.1GHz/256GB Space Gray MacBook Pro on sale today for $121 off MSRP including free shipping: – 13″ 3.1GHz/256GB Space Gray MacBook Pro (MPXV2LL/A): $1678 $121 off MSRP Keep an... Read more
13″ MacBook Pros on sale for up to $120 off M...
B&H Photo has 2017 13″ MacBook Pros in stock today and on sale for up to $120 off MSRP, each including free shipping plus NY & NJ sales tax only: – 13-inch 2.3GHz/128GB Space Gray MacBook... Read more
15″ MacBook Pros on sale for up to $200 off M...
B&H Photo has 15″ MacBook Pros on sale for up to $200 off MSRP. Shipping is free, and B&H charges sales tax in NY & NJ only: – 15″ 2.8GHz MacBook Pro Space Gray (MPTR2LL/A): $2249, $150... Read more
Roundup of Apple Certified Refurbished iMacs,...
Apple has a full line of Certified Refurbished 2017 21″ and 27″ iMacs available starting at $1019 and ranging up to $350 off original MSRP. Apple’s one-year warranty is standard, and shipping is free... Read more
Sale! 27″ 3.8GHz 5K iMac for $2098, save $201...
Amazon has the 27″ 3.8GHz 5K iMac (MNED2LL/A) on sale today for $2098 including free shipping. Their price is $201 off MSRP, and it’s the lowest price available for this model (Apple’s $1949... Read more
Sale! 10″ Apple WiFi iPad Pros for up to $100...
B&H Photo has 10.5″ WiFi iPad Pros in stock today and on sale for $50-$100 off MSRP. Each iPad includes free shipping, and B&H charges sales tax in NY & NJ only: – 10.5″ 64GB iPad Pro: $... Read more
Apple iMacs on sale for up to $130 off MSRP w...
B&H Photo has 21-inch and 27-inch iMacs in stock and on sale for up to $130 off MSRP including free shipping. B&H charges sales tax in NY & NJ only: – 27″ 3.8GHz iMac (MNED2LL/A): $2179 $... Read more
2017 3.5GHz 6-Core Mac Pro on sale for $2799,...
B&H Photo has the 2017 3.5GHz 6-Core Mac Pro (MD878LL/A) on sale today for $2799 including free shipping plus NY & NJ sales tax only . Their price is $200 off MSRP. Read more
12″ 1.2GHz Space Gray MacBook on sale for $11...
Amazon has the 2017 12″ 1.2GHz Space Gray Retina MacBook on sale for $100 off MSRP. Shipping is free: 12″ 1.2GHz Space Gray MacBook: $1199.99 $100 off MSRP Read more

Jobs Board

*Apple* Retail - Multiple Positions - Farmin...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Frameworks Engineer, *Apple* Watch - Apple...
Job Summary Join the team that is shaping the future of software development for Apple Watch! As a software engineer on the Apple Watch Frameworks team you will Read more
*Apple* News Product Marketing Mgr., Publish...
Job Summary The Apple News Product Marketing Manager will work closely with a cross-functional group to assist in defining and marketing new features and services. Read more
Fraud Analyst, *Apple* Advertising Platform...
Job Summary Apple Ad Platforms has an opportunity to redefine advertising on mobile devices. Apple reaches hundreds of millions of iPhone, iPod touch, and iPad Read more
*Apple* Information Security - Security Data...
Job Summary This role is responsible for helping to strengthen Apple 's information security posture through the identification and curation of security event data. Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.