TweetFollow Us on Twitter

ScriptTips II
Volume Number:5
Issue Number:1
Column Tag:HyperChat™

ScriptTips II

By Fred Stauder, HyperChat Editor, Zurich, Switzerland

on HyperChat

-- HyperEditorial

At Macworld in San Fransisco, I will be presenting the First Annual HyperChat Award. It will be judged in all areas and will be an award of excellence for a certain contribution to the overall Hypercard base. It will cover both Commercial and Non-Commercial products. So we hope to see you all at MacWorld.

-- Script Tips

This month I bring you couple of interesting script tips.

The first occurred to me when I was typing in the message box and I wished I could quickly type in an alias. The script first checks to see if procedure or function has the chosen name, this is done with the offset function.

If it exists it pops up alert and exits the routine.

Next I check to see if the routine to be aliased has parameters. This is done with the paramCount function. Then I put the script of the home stack, where alias is located, into a temp container and put the alias script after it. The last thing I do is to write the modified script back to the home stack.

-------------- Alias --------------
on alias New,Old,Param1,Param2,Param3,Param4,as many as you want
  if  offset(“on” && New,the script of me) >0
  then
    answer “It already exists”
    exit alias
  end if
  put the script of me into temp
  if the paramCount >2
  then
    repeat with x=3 to the ParamCount
      if x  the ParamCount
      then put param(x) & “,” after Pms
      else put param(x) after Pms
    end repeat
  else
    put empty into pms
  end if
  put “on” && New &&pms & return & Old &&pms & Return¬
  & “end” && New & return after temp
  set the script of me to temp
end alias
------All rights reserved Fred Stauder 1988------

The second Script tip is a popup menu field.

I here you groaning not another popup. Yes it is another popup but not an ordinary one. Firstly it is all in Hypertalk it is fast and you can do search’s of the fields unlike with an XCMD popup.

Here is how it works.

You have a locked field which you have put in the menu items. You set the size, justification, font etc. Note you must leave the top line blank i.e. a carriage return in it, I will explain why later. When the mouse is pressed on the field the field expands downwards and deletes line 1. You get what looks like the right side of fig. 1. You do the selection with the mouse, I will go into detail later, and when you release the mouse the selection gets copied before line 1. The reason I chose to do it this way is simple if you want to retain the order of your menu (which is important from a human interface guideline point of view) you have to store the selection in line one because that is the one displayed. I thought of storing what two lines were swapped and restoring them but it was too complicated.

So after the selection is copied into line 1 the rect of the field collapses again.

In the selection process I work out the line number by textheight and number of lines. This tells me what line I am on so all I have to do is say “select line x” right? Wrong. You can do that with right justification and it is just bearable, the selection doesn’t go quite to the edge of the field. With left or center justification the selection (hilite) stops at the end of the word. Annoying. I tried a number of approaches including pre calculating the character numbers for the selection. It was much too slow. So what I finally did is use the offset of the line to get the char number from the end of the line before to the line after. I encountered an error when I tried to get the offset of more lines than I had I got zero and offset reports the error. Not good enough. So I had to selectthe line in a different way. I did it the normal way because the last line always selects all the line not just the word on the line.

Once I have the selection I can do a number of things with them such as if the first line of the card field is .. the do this or that.

What can you do with this? Well as I have mentioned in a previous tip when you search for text it is faster than searching for a name of attribute of an object. So it is ideal for say preferences on an inventory program.

----PopupMenu Field--------------
on mousedown
  --Setup--
  put the rect of me into RectOfMeTemp
  put the topleft of me into MyTopLeft
  
  lock screen
  delete line 1 of me
  put the textheight of me into txtHt
  put number of lines of me into NumLines
  set Height of me to txtHt*NumLines+2
  set the topleft of me to MyTopLeft
  unlock screen
  
  -- This Routine does the Selection --
  ------------------------------------
  repeat until the mouse is up
    put trunc((the mouseV - top of me)/txtHt)+1 into sel
    if sel = numlines
    then
      select line sel of me
    else
      --check to see if mouse is in menu
      if the mouseloc is not within the rect of me
      then
        select empty
        exit repeat
      end if
      select char offset(line sel of me,me) to¬
      (offset(line sel+1 of me,me)-1) of me
    end if
  end repeat
  lock screen
  if the selection is not empty
  then
    if the selection is “one” then beep
    if last char of the selection is return
    then put the selection before line 1 of me
    else put the selection & return before line 1 of me
  else
    put return before line 1 of me
  end if
  
  set the rect of me to RectOfMeTemp
  unlock screen
  
  --This routine handles the Menu Items--
  --------------------------------------
  if line 1 of me is “one” then beep
  else if line 1 of me is “two” then flash(2)
  else if line 1 of me is “three” then beep 3
  ---- etc
  ---- etc
  --------------------------------------
  ---- or you can do it this way ------
  
  --do line 1 of me
  --------------------------------------
end mousedown


on five
  beep 5
end five
------All rights reserved Fred Stauder 1988------
--end HyperChat

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Minecraft 302 - Popular sandbox building...
Minecraft allows players to build constructions out of textured cubes in a 3D procedurally generated world. Other activities in the game include exploration, gathering resources, crafting, and combat... Read more
FotoMagico 5.2b8 - Powerful slideshow cr...
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
TeamViewer 11.0.65452 - Establish remote...
TeamViewer gives you remote control of any computer or Mac over the Internet within seconds, or can be used for online meetings. Find out why more than 200 million users trust TeamViewer! Free for... Read more
Dropbox 9.4.49 - Cloud backup and synchr...
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
Geekbench 4.0.0 - Measure processor and...
Geekbench provides a comprehensive set of benchmarks engineered to quickly and accurately measure processor and memory performance. Designed to make benchmarks easy to run and easy to understand,... Read more
Nisus Writer Pro 2.1.5 - Multilingual wo...
Nisus Writer Pro is a powerful multilingual word processor, similar to its entry level products, but brings new features such as table of contents, indexing, bookmarks, widow and orphan control,... Read more
Default Folder X 5.0.6 - Enhances Open a...
Default Folder X attaches a toolbar to the right side of the Open and Save dialogs in any OS X-native application. The toolbar gives you fast access to various folders and commands. You just click on... Read more
Alfred 3.1 - Quick launcher for apps and...
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
MYStuff Pro 2.0.25 - Create inventories...
MYStuff Pro is the most flexible way to create detail-rich inventories for your home or small business. Add items to MYStuff by dragging and dropping existing information, uploading new images, or... Read more
OmniOutliner Pro 4.6 - Pro version of th...
OmniOutliner Pro is a flexible program for creating, collecting, and organizing information. Give your creativity a kick start by using an application that's actually designed to help you think. It's... Read more

Six! Tips, tricks, and hints for beginne...
There's nothing pretentious about Six!, the latest release from Gram Games. As puzzlers go, it's so unassuming that it took me some time to even realize why it was called what it was. Somewhere, my high school geometry teacher is now sobbing... | Read more »
Mobius Final Fantasy: Multiplayer update...
Up until now, Mobius Final Fantasy has been about as single-player an experience as an RPG can be. Not only do you play solo, but you are literally one among a seemingly unending wave of faceless warriors on the road toward the same goal. [Read... | Read more »
Find out the story behind League of Ange...
If you’re looking for a new thrilling MMORPG to play with your friends then you’ll be excited to hear that there is a sequel to one of the most well known titles in the genre – namely League of Angels 2. With a brand new 3D engine offering... | Read more »
Naruto Shippuden: Ultimate Ninja Blazing...
I'm not sure if it's possible to say you are an anime fan but also never have seen one episode of Naruto. If it is, then I resemble that remark, and if not, I offer a hearty apology. [Read more] | Read more »
5 mobile games that let you explore spac...
No Man's Sky hasn't exactly turned out to be everything it was promised. Though its core concept of exploring an unimaginably vast universe of different planets is an intriguing one, the execution has left many PS4 and PC gamers feeling like they... | Read more »
Mummy madness in new action game Tomb He...
Hot on the tail of Bump Hero, ZPlay is giving gamers another reason to get screen bashing with a brand new release. Tomb Heroes is a challenging action game in which you battle enemies in various tombs around the world. You can select from nine... | Read more »
Siralim 2 (RPG / Roguelike) (Games)
Siralim 2 (RPG / Roguelike) 1.0 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0 (iTunes) Description: Siralim 2 is an old-school monster catching RPG. Summon and customize hundreds of creatures to fight for you as... | Read more »
Clean Text (Productivity)
Clean Text 1.0 Device: iOS Universal Category: Productivity Price: $3.99, Version: 1.0 (iTunes) Description: | Read more »
Gemini - A Journey of Two Stars (Games)
Gemini - A Journey of Two Stars 1.0.1 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.1 (iTunes) Description: *** SPECIAL LAUNCH SALE: $2.99 (25% off) *** "A mesmerizing and unexpectedly emotional journey." -- Los... | Read more »
How to get four NFL superstars for your...
Even though you're probably well on your way to building a top notch squad for the new season in Madden NFL Mobile, let's say you could beef it up by adding Rob Gronkowski, Antonio Brown, Von Miller, and Todd Gurley to your roster. That's... | Read more »

Price Scanner via MacPrices.net

Tim Cook Posts Open Letter To The Apple Commu...
Apple Inc. CEO Tim Cook has posted an open letter commenting on the European Commission’s bizarre demand that Apple pay more than $14 billion in allegedly underpaid back taxes on its Irish... Read more
Streetwise Drivers Club App Now Features Open...
Streetwise Drivers Club, an app that rewards drivers with deals on everything from dining and gift cards to tires and insurance, has announced the launch of a new enhancement connecting app users... Read more
15-inch Retina MacBook Pros on sale for up to...
B&H Photo has 15″ Retina Apple MacBook Pros on sale for up to $200 off MSRP. Shipping is free, and B&H charges NY tax only: - 15″ 2.2GHz Retina MacBook Pro: $1799 $200 off MSRP - 15″ 2.5GHz... Read more
RESCUECOM 2016 Semi-Annual Computer Reliabili...
The beginning of a new school year is upon us again, in which students and parents have some very important choices to make, often including the purchase of a computer or tablet. Whether you are... Read more
VRS Design Damda Glide Series iPhone 7 and 7...
What makes the Damda Glide Series for the iPhone 7 and iPhone 7 Plus special? Case maker VRS Design says its Damda Glide Series is the first mobile case to incorporate a semi-automatic mechanism for... Read more
Apple refurbished iMacs available for up to $...
Apple has 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 available: - 21″ 3.... Read more
Clearance 2015 13-inch MacBook Airs available...
B&H Photo has clearance 2015 13″ MacBook Airs available for $350 off original MSRP. Shipping is free, and B&H charges NY sales tax only: - 13″ 1.6GHz/4GB/128GB MacBook Air (MJVE2LL/A): $829... Read more
Check Apple prices on any device with the iTr...
MacPrices is proud to offer readers a free iOS app (iPhones, iPads, & iPod touch) and Android app (Google Play and Amazon App Store) called iTracx, which allows you to glance at today’s lowest... Read more
Save $120 with Apple refurbished Time Capsule...
Apple has certified refurbished Time Capsules available for $120 off MSRP. Apple’s one-year warranty is included with each Time Capsule, and shipping is free: - 2TB Time Capsule: $179, $120 off (not... Read more
9-inch 32GB iPad Pros on sale for $70 off MSR...
B&H Photo has 9″ 32GB WiFi Apple iPad Pros on sale for $70 off MSRP, each including free shipping. B&H charges sales tax in NY only: - 9″ Space Gray 32GB WiFi iPad Pro: $529 $70 off MSRP - 9... Read more

Jobs Board

*Apple* Solutions Consultant - Apple (United...
Apple Solutions ConsultantJob Number: 51218534Pleasant Hill, California, United StatesPosted: Aug. 18, 2016Weekly Hours: 40.00Job SummaryAs an Apple Solutions Read more
*Apple* Solutions Consultant - Apple (United...
# Apple Solutions Consultant Job Number: 51218354 Fredericksburg, Virginia, United States Posted: Aug. 18, 2016 Weekly Hours: 40.00 **Job Summary** As an Apple Read more
*Apple* Retail - Multiple Positions - Apple,...
Job Description:SalesSpecialist - Retail Customer Service and SalesTransform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
*Apple* /Mac Support Engineer - GFI Digital,...
FI Digital, Inc. is currently seeking candidates for a full time Apple Support Engineer to add to our Maryland Heights, Missouri IT team. Candidates must be dynamic Read more
*Apple* Solutions Consultant - Apple (United...
Apple Solutions ConsultantJob Number: 51218534Pleasant Hill, California, United StatesPosted: Aug. 18, 2016Weekly Hours: 40.00Job SummaryAs an Apple Solutions Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.