jQuery.extend(Drupal.settings, {"basePath":"\/","CTools":{"pageId":"page-a525df8c37fe35d0a291c5960fd728d4"},"googleanalytics":{"trackOutgoing":1,"trackMailto":1,"trackDownload":1,"trackDownloadExtensions":"7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip"},"lightbox2":{"rtl":0,"file_path":"\/(\\w\\w\/)sites\/default\/files","default_image":"\/sites\/all\/modules\/lightbox2\/images\/brokenimage.jpg","border_size":"2","font_color":"000","box_color":"fff","top_position":"","overlay_opacity":"0.6","overlay_color":"000","disable_close_click":1,"resize_sequence":"0","resize_speed":100,"fade_in_speed":100,"slide_down_speed":100,"use_alt_layout":0,"disable_resize":0,"disable_zoom":0,"force_show_nav":0,"loop_items":1,"node_link_text":"","node_link_target":0,"image_count":"Image !current of !total","video_count":"Video !current of !total","page_count":"Page !current of !total","lite_press_x_close":"press \x3ca href=\"#\" onclick=\"hideLightbox(); return FALSE;\"\x3e\x3ckbd\x3ex\x3c\/kbd\x3e\x3c\/a\x3e to close","download_link_text":"","enable_login":false,"enable_contact":false,"keys_close":"c x 27","keys_previous":"p 37","keys_next":"n 39","keys_zoom":"z","keys_play_pause":"32","display_image_size":"","image_node_sizes":"()","trigger_lightbox_classes":"","trigger_lightbox_group_classes":"","trigger_slideshow_classes":"","trigger_lightframe_classes":"","trigger_lightframe_group_classes":"","custom_class_handler":0,"custom_trigger_classes":"","disable_for_gallery_lists":true,"disable_for_acidfree_gallery_lists":true,"enable_acidfree_videos":true,"slideshow_interval":5000,"slideshow_automatic_start":true,"slideshow_automatic_exit":true,"show_play_pause":true,"pause_on_next_click":false,"pause_on_previous_click":true,"loop_slides":false,"iframe_width":"600","iframe_height":"400","iframe_border":0,"enable_video":0},"thickbox":{"close":"Close","next":"Next \x3e","prev":"\x3c Prev","esc_key":"or Esc Key","next_close":"Next \/ Close on last","image_count":"Image !current of !total"}});
<div class="content_inn"><!--[if !IE]>Start left content<![endif]-->
<div class="left_panal">
<div class="left_content_box">
<div class="left_inner_box_heading"><h1>Navigation Services support for REALbasic</h1></div>
<div class="left_inner_box_inn">
<div style="float:right; margin:5px;">
</div>
<p>Navigation Services support extended to Customization:</p>
<p>Version History<br />
Navigation Services for MacOS 8, 9 and X.</p>
<p>Version 3.0, September 14, 2002<br />
--added a new class: NavCustomization that allows the client to customize a<br />
NavDialog Window. To allow this, NavReply was extended with an additional<br />
call: IsFolder. NavCustomization depends on usage of a DITL resource, and<br />
for this a new plugin was designed: ResourceEdit Plugin. See the<br />
documentation for this plugin, to obtain the details.</p>
<p>NavDialog Plugin:</p>
<p>Yes a bunch of classes have been implemented to support the Navigation<br />
Services, but they all make sense. Let's go over them one by one starting<br />
with probably the most important one. Don't make the mistake that one does<br />
the actual saving or opening of a folderItem. This plugin supports the<br />
Navigation DialogWindows and their manipulations. These manipulations are<br />
the key to set the NavServices to your own needs. And that's what it's all<br />
about. But why this plugin when REALbasic currently support some of these<br />
manipulations? Well, for one thing, this plugin tries to support almost<br />
every aspect of the Navigation Services. The classes have been numerous to<br />
provide easy support with little or no coding required in the REALbasic<br />
environment.</p>
<p>NavDialog:<br />
The class that calls one of the Navigation Services, i.e., putting up the<br />
window. The class has different methods to call the NavDialog Window and<br />
has properties that allows you to determine what file(s) should be listed<br />
you can determine with the NavTypeList class. You can further manipulate<br />
the appearance of items in the NavDialog Window with the NavDialogOptions<br />
class. The NavDialogOptions are numerous, i.e., you can define an extended<br />
popupMenu, listing categories of FileTypes. This means that while the<br />
NavDialog is up, you can adjust the filtering of files. Another important<br />
property of the NavDialog class is the NavUserAction class. This class<br />
messages the final reply to the Navigation Services in the form of a<br />
NavReply class.</p>
<p>NavReply:<br />
An instance of the NavReply class is obtained via the NavUserAction class.<br />
NavReply can return multiple folderItems, depending how the NavDialog Class<br />
was set up. In addition, NavReply can be obtained from the NavDialog.reply<br />
property. Retrieval of the Reply in this case can be hazardous,<br />
specifically in the OSX environment. The reason is the immediate returning<br />
from the methods defined in NavDialog. It may be a difficult concept, but<br />
immediate returning means that additional code after calling a method of<br />
the NavDialog instance is already executed, while the user has not done<br />
anything yet with the NavDialog Window. It's the carbon way. The classical<br />
way does not deal with the immediate returning; Your code halts at the<br />
method until the user has done something with the window. It would be a<br />
very good habit to use the UserAction class to obtain the instance of the<br />
NavReply, and it'll also work in the classic environment.</p>
<p>NavTypeList:<br />
This class is used to provide a list of fileTypes the NavDialog Window<br />
should expose to the user. it is up to you to populate this list, while you<br />
also can omit the NavTypeList. It is specifically important when your<br />
application has its own signature. The creator type becomes very important<br />
in a build.</p>
<p>NavDialogOptions:<br />
This class is required to drive the NavDialog Window into a cetain state.<br />
The class has numerous methods to set a banner or message in the Navdialog<br />
window, changing captions, setting the windowModality of the NavDialog<br />
(MacOSX). This class also has another class as property,<br />
NavDialogOptionsFlags, which is automatically instantiated when you<br />
instantiate the NavDialogOptions class.</p>
<p>NavDialogOptionFlags:<br />
A class that manipulates the behavior of the NavDialog window. The property<br />
names in principle provide information about the effect it will have.</p>
<p>NavUserAction:<br />
A class that provide access to the user action. If the user accepts a<br />
Navigation dialog, one of the events is being fired, and you as the<br />
programmer can respond accordingly. Why not having defined these events as<br />
events of the NavDialog Class? Well, you can keep one instance of the<br />
NavDialog Class, and exchange instances of NavUserAction.</p>
<p>NavCallback:</p>
<p>NavCallback provides additional info and manipulates a NavDialog. When<br />
subclassed, you can block opening, or saving or block creation of a new<br />
folder. You can monitor what files are being selected by the client, such<br />
that when the client cancels the Navdialog, you still know what the last<br />
folderitem was that was selected. NavCallback is a natural enhancement of<br />
the Navigation Services the MacOS provides.</p>
<p>NavCustomization:</p>
<p>This class is required when the client wants to add additional controls in<br />
the Navdialog. The class relies on usage of a DITL and a DLOG resource.<br />
DITL is a list of dialog items, each of the items has a unique id, starting<br />
with 1 for the first item. Navigation services, however, will offset these<br />
id's by the number of navDialog items present. NavCustomization has<br />
numerous methods to influence responses to the NavDialog; the events<br />
provide information required to implement the customized behavior of the<br />
Navdialog. You need to utilize the ResourceEdit Plugin to take advantage.</p>
<p>Sincerely,</p>
<p>Alfred N. Van Hoek, Ph.D. <a href="http://homepage.mac.com/vanhoek/" title="http://homepage.mac.com/vanhoek/">http://homepage.mac.com/vanhoek/</a></p>
<div class="links"><ul class="links inline"><li class="comment_forbidden first last"><span><a href="/user/login?destination=comment%2Freply%2F83598%23comment-form">Login</a> or <a href="/user/register?destination=comment%2Freply%2F83598%23comment-form">register</a> to post comments</span></li>
</ul></div>
</div>
<div class="left_inner_box_bottom"> </div>
</div>
<!--[if !IE]> End left box inner page <![endif]--></div>
<!--[if !IE]>End left content<![endif]--> <!--[if !IE]>Start right content<![endif]-->
<span class="field-content"><a href="http://forums.applecentral.com/ubbthreads.php/topics/537782/Analyst_sees_iPad_killers_less#Post537782" target="_blank"> Analyst sees iPad killers le...</a></span>
</div>
</div>
<div class="views-row views-row-5 views-row-odd">
<div class="views-field-title">
<span class="field-content"><a href="http://forums.applecentral.com/ubbthreads.php/topics/537649/Small_business_accounting_soft#Post537649" target="_blank"> Small business accounting so...</a></span>
<span class="field-content">Introducing the App Hall of Fame!</span>
</div>
<div class="views-field-body">
<div class="field-content"><div class="body-row" id="body-row-213485"><div style="background:#F5F5F5;">App discoverability continues to be a real issue. With the fast churn of apps in the App Store, an app has only a few weeks of promotional life in it before it‚Äôs largely forgotten. There are a few things developers can do to fix that, but those... | Read more »</div></div></div>
<span class="field-content">Gobliiins Are Coming</span>
</div>
<div class="views-field-body">
<div class="field-content"><div class="body-row" id="body-row-213486"><div style="background:#F5F5F5;">In the midst of the huge Q4 launch schedule, the cult classic, Gobliiins, as well as the rest of the trilogy, are being ported to the iPhone in all of their original glory. The Goblins trilogy was a quirky Atari/Amiga game series from the early 90‚Äôs... | Read more »</div></div></div>
</div>
</div>
<div class="views-row views-row-3 views-row-odd">
<div class="views-field-title">
<span class="field-content">myPhoneDesktop – Chrome to iPhone Extens...</span>
</div>
<div class="views-field-body">
<div class="field-content"><div class="body-row" id="body-row-213469"><div style="background:#F5F5F5;">Anyone who has used myPhoneDesktop knows that it is a fantastic tool for streamlining your onscreen workflow. Instead of having to type line after line into your phone directly, you can use myPhoneDesktop to type from your computer directly into... | Read more »</div></div></div>
<span class="field-content">AutoVerbal Talking Soundboard Pro helps...</span>
</div>
<div class="views-field-body">
<div class="field-content"><div class="body-row" id="body-row-213471"><div style="background:#F5F5F5;">Being able to speak and communicate with others is something that many of us take for granted. It‚Äôs not so easy for many folks though, in particular for individuals with autism spectrum disorders, as well as those who have suffered various brain... | Read more »</div></div></div>
<span class="field-content">Get Your Roast Right With ‘Time To Roast...</span>
</div>
<div class="views-field-body">
<div class="field-content"><div class="body-row" id="body-row-213473"><div style="background:#F5F5F5;">Roasting meat, in the cooking world, is about as simple as it gets. The greatest roast recipe I‚Äôve ever found is from Michael Ruhlman‚Äôs website, with the recipe titled, ‚ÄúThe World‚Äôs Most Difficult Roasted Chicken Recipe.‚Äù | Read more »</div></div></div>
MacTech is a registered trademark of Xplain Corporation. Xplain, "The journal of Apple technology", Apple Expo, Explain It, MacDev, MacDev-1, THINK Reference, NetProfessional, Apple Expo, MacTech Central, MacTech Domains, MacNews, MacForge, and the MacTutorMan are trademarks or service marks of Xplain Corporation. Sprocket is a registered trademark of eSprocket Corporation. Other trademarks and copyrights appearing in this printing or software remain the property of their respective holders. Not responsible for typographical errors.
</div>
</div>
<div class="footer_bottom"></div>
</div>
<div id="bootom_foo_ter">All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by <a href="http://www.icreon.com">Icreon</a>.</div>
<div id="newuser-popup" style="font-size:14px">Greetings, and welcome to the new MacTech web site! Our home page is designed to be your <cite>Industry Dashboard</cite> -- so you can have a snapshot of all that's relevant in the industry in one easy location. Many readers tell us that because the information is updated so frequently, they are now checking the site multiple times a day.
Here's a quick run down of the features on the new web site, which can be subtle.
<UL><LI>We're running regular raffles. If you want free stuff make sure to register. <a href="/register">It's easy and only takes a minute!</a>
<LI>Registering for the site allows you greater functionality.
<LI>The first few blocks are original content from MacTech (for geeks) and our sister web site, MacNews (for general users)
<LI>Below that are MacTech's scanners, which scan the web and organizes it into News, Rumors, and Documentation. Updated every 15 minutes.
<LI>Our Whitepapers, Screencasts, and Videos section give you insight into great products
<LI>The Community Search narrows your search to the most relevant of Apple related sites for better results
<LI>The forums give you a place to ask questions, and share your knowledge.
<LI>Our partners at MacUpdate, MacPrices.net and the Jobs Boards keep you up to date
<LI>Want to see all the news in one big list? Check out our new <a href="/firehose">Information Firehose</a>
<LI>And, don't forget the Apple Central area, and ads throughout the site. Advertisers are what make the site possible</UL>
We truly hope you <a href="/register">register</a> so that we can keep you up to date about new features as they are implemented. And, please use the BETA button in the top right to provide us any feedback, suggestions or bugs. We love to hear from you. </div>
<!--[if !IE]>End pop_up<![endif]-->
<!-- Google Analytics now handled by Google Analytics Module in drupal -->
<!--VISISTAT SNIPPET//-->
<script type="text/javascript">
var DID=13280;
var pcheck=(window.location.protocol == "https:") ? "https://sniff.visistat.com/live.js":"http://stats.visistat.com/live.js";