TweetFollow Us on Twitter

Gestures
Volume Number:5
Issue Number:2
Column Tag:HyperChat™

Gestural Devices

By Fred Stauder, HyperChat Editor, Zurich, Switzerland

on HyperChat

Gestural Devices

This month I would like to talk about gestural control devices, what they are, and how to build them to give you more flexibility in HyperCard.

What is a gestural control device? The Oxford dictionary defines the word “gesture” as: “a move calculated to evoke a response from another or to convey intention”. In this case “another” is your Macintosh, and our intention is that we want HyperCard to do something for us. An example of a gesture used as a device is “AutoScriptEdit” which I first brought to you in the May issue and which later evolved into “AutoHyperEdit”. There I used a gesture moving past the top of a button while the mouse was still down. This gesture replaced menu selections and mouse clicks. Another good example is the Gestural Video Controller from Kristee Kreitman (December Issue MacTutor see fig 1.)of the Human Interface Group at Apple Computer. Her G Device (Gestural Device) inspired me to build one using the message box in HyperCard. Kristee’s video controller works by moving the cursor left and right you enter regions which give different responses to a video player, such as “step” and “scan”.

Figure 1.

I built my G Device for two reasons. The first, was that I could control a videodisc player from any stack easily, secondly I wanted to utilize the message box. The message box can be moved anywhere easily even out of the card window (this is very useful if you have a large screen), and if the user hits a command period to halt something, you don’t have anything remaining such as an extra field or button. I thought this type of controller would be great for slide presentations using HyperCard. I had seen some other types of navigational controllers that would change cursors etc, but they felt clumsy to me and didn’t provide enough feedback. I thought you could use the rect of the message box and use the right half of it to go to next card and the left half to go to previous card. This also didn’t give enough feedback, so after a some experimentation I came up with the Gestural Video Controller (fig 2.).

Figure 2.

For a prototype I used a controller for going back and forward in a stack rather than using a videodisc player. Since many of you don’t have a videodisc player I shall show you the “CardControl” script.

The Design Considerations

It had to be called from a Handler in the home stack so it could be used anywhere.

It had to not interfere with any card or stack it was in.

It had to have feedback.

I decided it had to be modal because it would be too much of a strain on the idle loop. It is invoked by typing in “CardControl” or it’s alias “CC” into the message box or by blind typing. This brings up the message box if it is not visible and changes the cursor to a cross (see fig 3.), and tells the user to click the mouse to exit. The controller then appears (figs 2,3) the command that is executing currently is highlited(fig 3.). Moving the cursor left and right changes the command selection, for ease of navigation in this case I chose not to make vertical movement important. If you look at listing 1. I get item 1 of rect of msg to determine it’s horizontal offset.

Next I have a main loop that contains sub loops which determine if the cursor is within the commands horizontal domain. I precalculated the horizontal offsets for each command. The loops are bulky, I tried different approaches but this way seemed to give the best all around results. When the cursor is within the horizontal domain of a command the command word or symbol is selected and a click is produced (this gives additional auditory feedback), then the command is invoked.

The enterKey handler is used to bring up the CardControl again simply by pressing enter if the msg has not been emptied.

Figure 3.

Listing 1.
-- Gestural CardControl Device 0.2b --
-- By Fred Stauder
-- ©1988 all rights reserved
-- Inspired By Kristee’s Gestural Controller
-- Turns Message Box into a gestural video controller
-- put it into your Home Stack Script so it is available in all Stacks

on enterkey --This lets you hit enter again after stopping to resume--
  if ¬
  “<<<<<<<<  ••-Rev-•• <<StepII  |||STOP|||  IIStep>> ••-Fwd-••  >>>>>>>>”¬
  is in msg then videocontrol
  else pass enterkey
end enterkey

on CC  --Alias--
  cardControl
end CC

on cardControl
  
  -- initialisation and let the user know whats going on --
  set cursor to 3
  put “                ••••• Hold Down Mouse Button to Exit •••••”
  wait 10
  select line 1 of msg
  wait 10
  select empty
  wait 10
  select line 1 of msg
  wait 10
  select empty
  wait 80
  put empty into msg
  wait 20
  
  put “<<<<<<<<  ••-Rev-•• <<StepII  |||STOP|||  IIStep>> ••-Fwd-••  
>>>>>>>>” into msg
  
  wait 10
  select line 1 of msg
  wait 10
  select empty
  wait 10
  select line 1 of msg
  wait 10
  select empty
  wait 40
  put item 1 of  rect of msg into left
  
  repeat forever -- Main Loop --
    
    repeat forever -- Loop 1 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH > left + 60 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 1 of msg
        go to previous card
      end if
    end repeat
    
    repeat forever  -- Loop 2 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH < left + 70 then exit repeat
      if the mouseH > left + 135 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 2 of msg
        wait 10
        go to previous card
      end if
    end repeat
    
    repeat forever  -- Loop 3 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH < left + 140 then exit repeat
      if the mouseH > left + 190 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 3 of msg
        wait 30
        go to previous card
      end if
    end repeat
    
    repeat forever -- Loop 3 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH < left + 200 then exit repeat
      if the mouseH > left + 250 then exit repeat
      else
        select word 4 of msg
      end if
    end repeat
    
    repeat forever -- Loop 4 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH < left + 260 then exit repeat
      if the mouseH > left + 305 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 5 of msg
        wait 30
        go to next card
      end if
    end repeat
    
    repeat forever  -- Loop 5 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if the mouseH < left + 310  then exit repeat
      if the mouseH > left +380 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 6 of msg
        wait 10
        go to next card
      end if
    end repeat
    
    repeat forever  -- Loop 6 from left --
      if the mouse is down
      then
        hide msg
        exit cardControl
      end if
      if  the mouseH  < left + 390 then exit repeat
      else
        play harpsichord tempo 100 b#x7
        select word 7 of msg
        go to next card
      end if
    end repeat
  end repeat
  put cardControl into msg
end cardControl

This script can be modified and used for many purposes such as I have done with a videodisk contoller, or CD controller etc. Experiment with different types of G devices. Next month I will bring you an XCMD that automates creating such a G Device.

end HyperChat

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

TinkerTool 5.4 - Expanded preference set...
TinkerTool is an application that gives you access to additional preference settings Apple has built into Mac OS X. This allows to activate hidden features in the operating system and in some of the... Read more
Tinderbox 6.3.1 - Store and organize you...
Tinderbox is a personal content management assistant. It stores your notes, ideas, and plans. It can help you organize and understand them. And Tinderbox helps you share ideas through Web journals... Read more
Parallels Desktop 10.2.2 - Run Windows a...
Parallels Desktop is simply the world's bestselling, top-rated, and most trusted solution for running Windows applications on your Mac. With Parallels Desktop for Mac, you can seamlessly run both... Read more
Adobe Premiere Pro CC 2015 9.0.1 - Digit...
Premiere Pro CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Premiere Pro customer). Premiere Pro CS6 is still available for... Read more
Adobe After Effects CC 2015 13.5.1 - Cre...
After Effects CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous After Effects customer). After Effects CS6 is still available... Read more
Adobe Creative Cloud 2.2.0.129 - Access...
Adobe Creative Cloud costs $49.99/month (or less if you're a previous Creative Suite customer). Creative Suite 6 is still available for purchase (without a monthly plan) if you prefer. Introducing... Read more
Tower 2.2.3 - Version control with Git m...
Tower is a powerful Git client for OS X that makes using Git easy and more efficient. Users benefit from its elegant and comprehensive interface and a feature set that lets them enjoy the full power... Read more
Apple Java 2015-001 - For OS X 10.7, 10....
Apple Java for OS X 2015-001 installs the legacy Java 6 runtime for OS X 10.11 El Capitan, OS X 10.10 Yosemite, OS X 10.9 Mavericks, OS X 10.8 Mountain Lion, and OS X 10.7 Lion. This package is... Read more
Adobe Muse CC 2015 2015.0.1 - Design and...
Muse CC 2015 is available as part of Adobe Creative Cloud for as little as $14.99/month (or $9.99/month if you're a previous Muse customer). Muse CS6 is still available for purchase (without a... Read more
Adobe Illustrator CC 2015 19.1.0 - Profe...
Illustrator CC 2015 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Illustrator customer). Illustrator CS6 is still available for... Read more

Tap Delay (Music)
Tap Delay 1.0.0 Device: iOS Universal Category: Music Price: $4.99, Version: 1.0.0 (iTunes) Description: Back in the “old days”, producers and engineers created delay and echo effects using tape machines. Tap Delay combines the warm... | Read more »
This Week at 148Apps: July 20-24, 2015
July is Heating Up With 148Apps How do you know what apps are worth your time and money? Just look to the review team at 148Apps. We sort through the chaos and find the apps you're looking for. The ones we love become Editor’s Choice, standing out... | Read more »
Red Game Without A Great Name (Games)
Red Game Without A Great Name 1.0.3 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.3 (iTunes) Description: The mechanical bird is flying through an unfriendly, Steampunk world. Help it avoid obstacles and deadly... | Read more »
Warhammer: Arcane Magic (Games)
Warhammer: Arcane Magic 1.0.2 Device: iOS Universal Category: Games Price: $9.99, Version: 1.0.2 (iTunes) Description: Engage in epic battles and tactical gameplay that challenge both novice and veteran in Warhammer: Arcane Magic, a... | Read more »
Mazes of Karradash (Games)
Mazes of Karradash 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: The city of Karradash is under attack: the monsters of the Shadow Realms are emerging from the depths.No adventurer is... | Read more »
Battle Golf is the Newest Game from the...
Wrassling was a pretty weird - and equally great - little wressling game. Now the developers, Folmer Kelly and Colin Lane, have turned their attention to a different sport: golfing. This is gonna be weird. [Read more] | Read more »
Qbert Rebooted has the App Store Going...
The weird little orange... whatever... is back, mostly thanks to that movie which shall remain nameless (you know the one). But anyway it's been "rebooted" and now you can play the fancy-looking Qbert Rebooted on iOS devices. [Read more] | Read more »
Giant Monsters Run Amok in The Sandbox...
So The Sandbox has just hit version number 1.99987 (seriously), and it's added a lot more stuff. Just like every other update, really. [Read more] | Read more »
Fish Pond Park (Games)
Fish Pond Park 1.0.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.0 (iTunes) Description: Nurture an idyllic slice of tourist's heaven into the top nature spot of the nation, furnishing it with a variety of... | Read more »
Look after Baby Buddy on your Apple Watc...
Parigami Gold is the new premium version of the match three puzzler that includes Apple Watch support and all new content. You won't simply be sliding tiles around on your wrist, the Apple Watch companion app is an all new mini-game in itself. You'... | Read more »

Price Scanner via MacPrices.net

2.8GHz Mac mini available for $988, includes...
Adorama has the 2.8GHz Mac mini available for $988, $11 off MSRP, including a free copy of Apple’s 3-Year AppleCare Protection Plan. Shipping is free, and Adorama charges sales tax in NY & NJ... Read more
Sale! 13″ 1.6GHz/256GB MacBook Air for $1099,...
B&H Photo has the 13″ 1.6GHz/256GB MacBook Air on sale for $1099 including free shipping plus NY tax only. Their price is $100 off MSRP, and it’s the lowest price available for this model. Read more
iPad mini 4 To Be Upgraded To iPad Air 2 Spec...
There’s a certain inevitability about making Apple product predictions this time of year. Come September, we can pretty reliably count on the release of refreshed iPhones, along with the iOS 9... Read more
Apple restocks refurbished Mac minis for up t...
The Apple Store has restocked Apple Certified Refurbished 2014 Mac minis, with models available starting at $419. Apple’s one-year warranty is included with each mini, and shipping is free: - 1.4GHz... Read more
13-inch 2.5GHz MacBook Pro on sale for $899,...
Best Buy has the 13″ 2.5GHz MacBook Pro available for $899.99 on their online store. Choose free shipping or free instant local store pickup (if available). Their price is $200 off MSRP. Price is... Read more
21-inch 2.9GHz iMac on sale for $1299, save $...
Best Buy has the 21″ 2.9GHz iMac on sale today for $1299.99 on their online store. Choose free shipping or free local store pickup (if available). Their price is $200 off MSRP, and it’s the lowest... Read more
Free Image Sizer 1.3 for iOS Offers Photo Edi...
Xi’An, China based G-Power has announced the release of Image Sizer 1.3 for the iPhone, iPad, and iPod touch, an important update to their free photo editing app. Image Sizer’s collection of easy to... Read more
Sale! 13″ 1.6GHz/128GB MacBook Air for $899,...
B&H Photo has the 13″ 1.6GHz/128GB MacBook Air on sale for $899 including free shipping plus NY tax only. Their price is $100 off MSRP, and it’s the lowest price available for this model. Read more
13-inch Retina MacBook Pros on sale for $100...
Best Buy has 13-inch Retina MacBook Pros on sale for $100 off MSRP on their online store. Choose free shipping or free local store pickup (if available). Prices are for online orders only, in-store... Read more
Will BMW’s i3 Electric Vehicle Be The Automo...
The German-language business journal Manager Magazin’s Michael Freitag reports that Apple and the German performance/luxury automaker Bayerishe Motoren Werke (BMW) are back at far-reaching... Read more

Jobs Board

*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
*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
*Apple* Customer Experience (ACE) Leader - A...
…management to deliver on business objectives Training partner store staff on Apple products, services, and merchandising guidelines Coaching partner store staff on Read more
Project Manager - *Apple* Pay Security - Ap...
**Job Summary** The Apple Pay Security team is seeking a highly organized, results-driven Project Manager to drive the development of Apple Pay Security. If you are Read more
*Apple* TV Product Design Internship (Spring...
…the mechanical design effort associated with creating world-class products with the Apple TV PD Group. Responsibilities will include working closely with manufacturing, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.