TweetFollow Us on Twitter

May 97 develop QA

Volume Number: 13 (1997)
Issue Number: 5
Column Tag: develop

Macintosh Q & A

by Apple Developer Support Center

Q: How can I determine whether my 680x0 program is running on a PowerPC machine?

A: The best way to do this is to use the Gestalt selectors as described in the Universal Interface file Gestalt.h:


enum {
 gestaltSysArchitecture = 'sysa',  // Native system architecture
 gestalt68k = 1, // Motorola MC680x0 architecture
 gestaltPowerPC = 2// IBM PowerPC architecture
};

A snippet of code that uses this would look something like the following in your 680x0 program:

 long myattr;
 OSErr  err;

err = Gestalt( gestaltSysArchitecture, &myattr);
if (err == noErr) {
 if (myattr == gestaltPowerPC)
 // Do some PowerPC thing.
 ...
} else {
 // Handle the error condition.
 ...
}

Q: I've created a dialog box that has two editable text fields in it and I've used an 'ictb' resource to change the font and the size of the fields to 10-point Geneva. When I move the insertion point into the second field and delete a character, the character just before the one I deleted drops down a couple of pixels and overwrites itself. What can be done about this?

A: You've run into a problem with the Dialog Manager's support of 'ictb' resources. The Dialog Manager forgets to reset some of the fields of the TextEdit record when it swaps the font and font size information stored in the 'ictb'. You need to reset the fontAscent and lineHeight fields of the TextEdit record to match the size of the font specified in the 'ictb'. By default those fields are set to the lineHeight and fontAscent of 12-point Chicago.

The following code shows how to set up the TextEdit record properly.

static void SetUpEditField(DialogRef dlog, short fontNum, short fontSize)
{
 FontInfo info;
 DialogPeek dpeek = (DialogPeek)dlog;

 if (dpeek != nil) {
 TEHandle te = dpeek->textH;// Get the TEHandle.
 if (te != nil) {
 short  oldFont = dlog->txFont;    // Save old font info.
 short  oldSize = dlog->txSize;
 TextFont(fontNum);// Set correct font info.
 TextSize(fontSize);
 GetFontInfo(&info);
 // Fix the TE record.
 te[0]->txFont = fontNum; // Set font.
 te[0]->txSize = fontSize;
 // Calculate the correct line height.
 te[0]->lineHeight = info.ascent + info.descent + info.leading;
 te[0]->fontAscent = info.ascent;
 TextFont(oldFont);// Reset the font info.
 TextSize(oldSize);
 }
 }
}

Then call SetUpEditField in your dialog routine, like this:

static short DoDialog(short resID)
 {
 DialogRefdlog;
 GrafPtroldPort;
 short  itemHit = 0;

 GetPort(&oldPort);
 dlog = GetNewDialog(resID, nil, (WindowRef)-1);
 if (dlog) {
 SetPort(dlog);
 SelectDialogItemText(dlog, 2, 0x8000, 0x8000);
   // Set the cursor.
 SetUpEditField(dlog, geneva, 10); 
 // Set the edit field.
 (void)SetDialogDefaultItem(dlog, 1);// Highlight OK button.
 ShowWindow(dlog); // Show the dialog.
 while (itemHit != ok)
 ModalDialog(nil, &itemHit);
 SetPort(oldPort);
 DisposeDialog(dlog);
 }
 return itemHit;
}

Of course, an alternative to all this is to avoid the Dialog Manager altogether and thereby avoid these obscure Dialog Manager problems.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Camping With Grandpa (Education)
Camping With Grandpa 1.0 Device: iOS Universal Category: Education Price: $2.99, Version: 1.0 (iTunes) Description: | Read more »
Black Hole Joyrider (Games)
Black Hole Joyrider 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Guide your spacecraft through the gravity well of a powerful black hole using only your retro-thrusters and dwindling fuel... | Read more »
My Koi (Games)
My Koi 1.0 Device: iOS iPhone Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: My Koi is a beautiful and relaxing fish pond app. Customise and name each fish. Feed them daily. Watch them grow. Collect new fish.... | Read more »
Never Gone (Games)
Never Gone 1.0.2 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.2 (iTunes) Description: ###IMPPORTANT### Never Gone's HD art resources require devices with more than 1GB RAM, so please note that iPhone 4/4s, iPad 2/... | Read more »
INKS. (Games)
INKS. 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: From the makers of BAFTA-winning Lumino City comes INKS. INKS updates pinball for a new generation. It combines the joy of pinball with... | Read more »
How to maximise your profits in Bakery B...
Running a bakery can be an expensive venture. You’ll need to continuously upgrade your oven, your kitchen supplies, and even your ingredients to keep customers happy. Most of these renovations in Bakery Blitz cost a pretty penny, but we have a few... | Read more »
How to manage your time in Bakery Blitz
It can be tricky, especially when you risk burning your kitchen to the ground if you forget a cake in the oven, so make sure to use these time management tricks to keep your bakery running smoothly. Don’t collect the money right away [Read more] | Read more »
Model 15 (Music)
Model 15 1.0 Device: iOS iPhone Category: Music Price: $29.99, Version: 1.0 (iTunes) Description: The Moog Model 15 App is the first Moog modular synthesizer and synthesis educational tool created exclusively for iPad, iPhone and... | Read more »
How to deal with wind in Angry Birds Act...
Angry Birds Action! is a physics-based puzzler in which you're tasked with dragging and launching birds around an obstacle-littered field to achieve a set objective. It's simple enough at first, but when wind gets introduced things can get pretty... | Read more »
How to get three stars in every level of...
Angry Birds Action! is, essentially, a pinball-style take on the pull-and-fling action of the original games. When you first boot it up, you'll likely be wondering exactly what it is you have to do to get a good score. Well, never fear as 148Apps... | Read more »

Price Scanner via MacPrices.net

12-inch 128GB iPad Pros on sale for up to $10...
B&H Photo has 12″ 128GB WiFi iPad Pros on sale for up to $100 off MSRP, each including free shipping. B&H charges sales tax in NY only: - 12″ Space Gray 128GB WiFi iPad Pro: $899 $50 off MSRP... Read more
Global Tablet Sales Slump Continues, iPad’s F...
Another miserable showing for the global slate tablet category in calendar Q1/16, with global tablet shipments falling another 1ten percent to 46.5 million units during the according to Strategy... Read more
Revel Systems to Showcase iPad POS Platform w...
Revel Systems, specialists in iPad Point of Sale management solution for brick-and-mortar retail, food businesses and more, today announced that it will showcase its innovative iPad Point of Sale... Read more
13-inch 2.5GHz MacBook Pro on sale for $999,...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $999 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more
Apple refurbished 2015 iMacs available for up...
Apple now has a full line of Certified Refurbished 2015 21″ & 27″ iMacs available for up to $350 off MSRP. Apple’s one-year warranty is standard, and shipping is free. The following models are... Read more
Indian Smartphone Market Grows Annually by 12...
India’s smartphone market grew by 12 percent year-over-year, with 24.4 million units shipping in Q1 2016. The top five vendors stayed the same, with Samsung in the lead, followed by Micromax, Intex... Read more
Get Notifications When Your Friend’s Phone Ba...
Calgary, Canada based Stonelight Pictures has announced the release of Battery Share 1.0.1, its new utility for iOS 9 supported devices. The company notes that people are spending more time on their... Read more
11-inch 1.6GHz/128GB MacBook Air on sale for...
Amazon has the current-generation 11″ 1.6GHz/128GB MacBook Air (sku MJVM2LL/A) on sale for $749.99 for a limited time. Their price is $150 off MSRP, and it’s the lowest price available for this model... Read more
Price drops on clearance 2015 13-inch MacBook...
B&H Photo has dropped prices on clearance 2015 13″ MacBook Airs by up to $250. Shipping is free, and B&H charges NY sales tax only: - 13″ 1.6GHz/4GB/128GB MacBook Air (MJVE2LL/A): $799, $200... Read more
Mac minis on sale for up to $100 off MSRP
B&H Photo has Mac minis on sale for up to $100 off MSRP including free shipping plus NY sales tax only: - 1.4GHz Mac mini: $449 $50 off MSRP - 2.6GHz Mac mini: $649 $50 off MSRP - 2.8GHz Mac mini... Read more

Jobs Board

*Apple* Support Technician II - Worldventure...
…global, fast growing member based travel company, is currently sourcing for an Apple Support Technician II to be based in our Plano headquarters. WorldVentures is Read more
*Apple* Retail - Multiple Positions (US) - A...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
Restaurant Manager (Neighborhood Captain) - A...
…in every aspect of daily operation. WHY YOU'LL LIKE IT: You'll be the Big Apple . You'll solve problems. You'll get to show your ability to handle the stress and Read more
Automotive Sales Consultant - Apple Ford Linc...
…you. The best candidates are smart, technologically savvy and are customer focused. Apple Ford Lincoln Apple Valley is different, because: $30,000 annual salary Read more
Restaurant Manager (Neighborhood Captain) - A...
…in every aspect of daily operation. WHY YOU'LL LIKE IT: You'll be the Big Apple . You'll solve problems. You'll get to show your ability to handle the stress and Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.