Here's my code, I can't seem to get the apple help system to open with my help pages. #if def _FBtoC include resources "Info.plist" include resources "SpeakAssist.icns" #endif include "Tlbx LSOpen.incl" toolbox fn HIAboutBox( CFDictionaryRef inOptions ) = OSStatus include "Tlbx CarbonEvents.incl" include "Util_AppleHelp.incl" stringlist on kill resources "ICN#",128 kill resources "ICN#",129 include "constants.incl" DEF FN SpeechEngine output file "SpeakAssist 2009r3" include "Tlbx ControlDefinitions.incl" def fn Welcome fn Welcome Local FN BuildMenus APPLE MENU "About SpeakAssist 2009r3..." _File = 1 _Speak = 1 _helpmenu = 4 _speakassisthelp = 1 _gotoimaginateware = 2 _gotospeakassistnet = 3 _sharewaremenu = 4 _hearbtnEsp = 2 _hearbtnEsp1 = 3 menu _File,0,1, "File" menu _File,_Speak,1, "/SSpeak..." edit menu 2 end fn dim menuID,itemID,result as long LOCAL FN doMenu menuID = MENU(_menuID) itemID = MENU(_itemID) SELECT CASE menuID case _KHMHelpMenuID select itemID case _speakassisthelp include "Util_AppleHelp.incl" fn HBRegister() fn HBGotoPage( 0, 0 ) select case itemID case 1 include "Util_AppleHelp.incl" fn HBRegister() fn HBGotoPage( 0, 0 ) end select case _kHMHelpMenuID include "Util_AppleHelp.incl" fn HBRegister() fn HBGotoPage( 0, 0 ) select case itemID case 1 include "Util_AppleHelp.incl" fn HBRegister() fn HBGotoPage( 0, 0 ) end select case _gotoimaginateware open "UNIX",2, "open "+"http://www.imaginateware.com" close #2 case _gotospeakassistnet open "UNIX",2, "open "+"http://www.speakassist.net" close #2 case _sharewaremenu open "UNIX",2, "open "+"http://www.imaginateware.com/store.php" close #2 end select case _File select itemID case _Speak fn SpeechEngine end select case _applemenu select itemID case 1 call HIAboutBox( 0 ) result = _noErr end select end select end fn FN BuildMenus local fn BuildspazEnglish '~'1 dim as Str255 s dim as ControlFontStyleRec cfs, tfs dim as Rect r dim as WindowAttributes wa, fb dim as short @ setVal dim as Boolean @ bool cfs.flags = _kControlUseFontMask _kControlUseJustMask wa = _kWindowCloseBoxAttribute¬ _kWindowCollapseBoxAttribute¬ _kWindowCompositingAttribute fb = _updateVisRgn def NewWindowPositionMethod( _kWindowCenterOnMainScreen ) SetRect( r, 370, 318, 1509, 926 ) appearance window -_spaz, "SpeakAssist 2009r3", @r, _kDocumentWindowClass, wa, fb def NewWindowPositionMethod( 0 ) def SetWindowBackground( _kThemeActiveDialogBackgroundBrush, _zTrue ) SetRect( r, 347, 25, 856, 48 ) appearance button _menutitle,,,,,, @r, _kControlStaticTextProc def SetButtonTextString( _menutitle, "Type in something to say or use the on-screen keyboard and click Assist Me..." ) SetRect( r, 337, 72, 873, 88 ) appearance button _assist,,,,,, @r, _kControlEditTextProc SetRect( r, 797, 99, 876, 116 ) appearance button _cBtn,,,,, "Assist Me...", @r, _kControlPushButtonProc bool = _zTrue def SetButtonData( _cBtn, _kControlEntireControl, _kControlPushButtonDefaultTag, sizeof( Boolean ), bool ) cfs.font = _kControlFontSmallSystemFont def SetButtonFontStyle( _cBtn, cfs ) SetRect( r, 339, 178, 367, 202 ) appearance button _exlaim,, 0,,, "!", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _exlaim, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 377, 178, 405, 202 ) appearance button _at,, 0,,, "@", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _at, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 415, 178, 443, 202 ) appearance button _numbersign,, 0,,, "#", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _numbersign, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 438, 516, 937, 532 ) appearance button _cStat,,,,,, @r, _kControlStaticTextProc def SetButtonTextString( _cStat, "© Copyright 2009 by Brian Heibert & ImaginateWare, Ltd. All Rights Reserved. " ) SetRect( r, 453, 178, 481, 202 ) appearance button _dollar,, 0,,, "$", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _dollar, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 491, 178, 519, 202 ) appearance button _percent,, 0,,, "%", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _percent, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 529, 178, 557, 202 ) appearance button _carrot,, 0,,, "^", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _carrot, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 567, 178, 595, 202 ) appearance button _and,, 0,,, "&", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _and, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 605, 178, 633, 202 ) appearance button _asterick,, 0,,, "*", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _asterick, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 643, 178, 671, 202 ) appearance button _parenthesisOpen,, 0,,, "(", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _parenthesisOpen, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 681, 178, 709, 202 ) appearance button _parenthesisClosed,, 0,,, ")", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _parenthesisClosed, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 719, 178, 747, 202 ) appearance button _dash,, 0,,, "-", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _dash, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 757, 178, 785, 202 ) appearance button _dash2,, 0,,, "_", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _dash2, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 795, 178, 823, 202 ) appearance button _plus,, 0,,, "+", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _plus, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 833, 178, 861, 202 ) appearance button _equal,, 0,,, "=", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _equal, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 339, 214, 367, 238 ) appearance button _oneSP,, 0,,, "1", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _oneSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 377, 214, 405, 238 ) appearance button _twoSP,, 0,,, "2", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _twoSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 415, 212, 443, 236 ) appearance button _threeSP,, 0,,, "3", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _threeSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 51, 516, 147, 538 ) appearance button _shareware,, 0,,, "Shareware $1.00", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _shareware, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 157, 516, 265, 538 ) appearance button _imaginateware,, 0,,, "Imaginateware.com", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _imaginateware, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 275, 516, 383, 538 ) appearance button _speakassist,, 0,,, "speakassist.net", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _speakassist, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 994, 516, 1102, 538 ) appearance button _quitprogram,, 0,,, "Quit", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _quitprogram, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 453, 214, 481, 238 ) appearance button _fourSP,, 0,,, "4", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _fourSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 797, 43, 833, 59 ) appearance button _hearbtn,, 0,,, "Hear", @r, _kControlBevelButtonNormalBevelProc SetRect( r, 891, 532, 927, 548 ) appearance button _hearbtn1,, 0,,, "Hear", @r, _kControlBevelButtonNormalBevelProc SetRect( r, 491, 214, 519, 238 ) appearance button _fiveSP,, 0,,, "5", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _fiveSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 529, 214, 557, 238 ) appearance button _sixSP,, 0,,, "6", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _sixSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 567, 214, 595, 238 ) appearance button _sevenSP,, 0,,, "7", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _sevenSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 605, 214, 633, 238 ) appearance button _eightSP,, 0,,, "8", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _eightSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 643, 214, 671, 238 ) appearance button _nineSP,, 0,,, "9", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _nineSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 681, 214, 709, 238 ) appearance button _zeroSP,, 0,,, "0", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _zeroSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 359, 250, 388, 274 ) appearance button _qSP,, 0,,, "Q", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _qSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 397, 250, 425, 274 ) appearance button _WSP,, 0,,, "W", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _WSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 435, 250, 463, 274 ) appearance button _ESP,, 0,,, "E", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _ESP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 473, 250, 501, 274 ) appearance button _RSP,, 0,,, "R", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _RSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 511, 250, 539, 274 ) appearance button _TSP,, 0,,, "T", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _TSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 549, 250, 577, 274 ) appearance button _YSP,, 0,,, "Y", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _YSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 587, 250, 615, 274 ) appearance button _USP,, 0,,, "U", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _USP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 625, 250, 653, 274 ) appearance button _ISP,, 0,,, "I", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _ISP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 663, 250, 691, 274 ) appearance button _OSP,, 0,,, "O", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _OSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 701, 250, 729, 274 ) appearance button _PSP,, 0,,, "P", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _PSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 387, 286, 415, 310 ) appearance button _ASP,, 0,,, "A", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _ASP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 425, 286, 453, 310 ) appearance button _SSP,, 0,,, "S", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _SSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 463, 286, 491, 310 ) appearance button _DSP,, 0,,, "D", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _DSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 501, 284, 529, 308 ) appearance button _FSP,, 0,,, "F", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _FSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 539, 286, 567, 310 ) appearance button _GSP,, 0,,, "G", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _GSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 577, 286, 605, 310 ) appearance button _HSP,, 0,,, "H", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _HSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 615, 286, 643, 310 ) appearance button _JSP,, 0,,, "J", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _JSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 653, 286, 681, 310 ) appearance button _KSP,, 0,,, "K", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _KSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 691, 286, 719, 310 ) appearance button _LSP,, 0,,, "L", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _LSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 435, 323, 463, 347 ) appearance button _ZSP,, 0,,, "Z", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _ZSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 473, 323, 501, 347 ) appearance button _XSP,, 0,,, "X", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _XSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 511, 323, 539, 347 ) appearance button _CSP,, 0,,, "C", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _CSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 549, 323, 577, 347 ) appearance button _VSP,, 0,,, "V", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _VSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 587, 322, 615, 346 ) appearance button _BSP,, 0,,, "B", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _BSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 625, 323, 653, 347 ) appearance button _NSP,, 0,,, "N", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _NSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 663, 323, 691, 347 ) appearance button _MSP,, 0,,, "M", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _MSP, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) SetRect( r, 345, 373, 808, 401 ) appearance button _SpaceBar,, 0,,, "Space Bar", @r, _kControlBevelButtonNormalBevelProc setVal = _kThemeRoundedBevelButton def SetButtonData( _SpaceBar, _kControlEntireControl, _kControlBevelButtonKindTag, sizeof( short ), setVal ) window _spaz end fn dim ignore as long local fn ShowError dim message$,extrainfo$ message$ = "No text found to speak." extrainfo$ = "Please try again!" ignore = FN StandardAlert( _kAlertNoteAlert, message$, extraInfo$, 0, #0 ) open "UNIX",2, "say -v Alex "+" No text found to speak. Please try again!" close #2 end fn local fn SpeechEngine dim ev$ ev$ = EDIT$(_assist) if ev$ = "" then fn ShowError open "UNIX",2, "say -v Alex "+ev$ close #2 end fn local fn Welcome open "UNIX",2, "say -v Alex Welcome to SpeakAssist 2009 Release 3" close #2// {20090222} end fn // Fonts.h #define FMFontFamily as SInt16 toolbox fn FMGetFontFamilyFromName( Str255 iName ) = FMFontFamily // MacApplication.h local fn DoDialog '~'1 dim as long ev, id ev = dialog( 0 ) id = dialog( ev ) select ( ev ) case _wndClick : window id case _wndClose end case _wndRefresh case _wndResized case _wndActivate case _cursOverEF cursor _ibeamcursor case _cursOverBtn cursor _kThemePointingHandCursor case _cursOverNothing cursor _kThemeArrowCursor case _btnClick select ( window( _outputWnd ) ) case _spaz select ( id ) case _cBtn FN SpeechEngine case _exlaim 'FN GETBUTTONTEXTSTRING$ ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"!") case _at ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"@") case _numbersign ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"#") case _dollar ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"$") case _percent ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"%") case _carrot ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"^") case _and ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"&") case _asterick ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"*") case _parenthesisOpen ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"(") case _parenthesisClosed ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+")") case _dash ev1$ = EDIT$(_dash) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"-") case _dash2 ev1$ = EDIT$(_dash2) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"_") case _plus ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"+") case _equal ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"=") case _oneSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"1") case _twoSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"2") case _threeSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"3") case _shareware OPEN "UNIX",2, "open "+"http://www.imaginateware.com/store.php" CLOSE #2 case _imaginateware OPEN "UNIX",2, "open "+"http://www.imaginateware.com" CLOSE #2 case _speakassist OPEN "UNIX",2, "open "+"http://www.speakassist.net" CLOSE #2 case _quitprogram gFBQuit = _zTrue end case _fourSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"4") case _hearbtn Open "UNIX",2, "say -v Alex "+"Type in something to say or use the on-screen keyboard and click Assist Me..." close #2 case _fiveSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"5") case _sixSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"6") case _sevenSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"7") case _eightSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"8") case _nineSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"9") case _zeroSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"0") case _qSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"Q") case _WSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"W") case _ESP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"E") case _RSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"R") case _TSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"T") case _YSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"Y") case _USP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"U") case _ISP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"I") case _OSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"O") case _PSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"P") case _ASP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"A") case _SSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"S") case _DSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"D") case _FSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"F") case _GSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"G") case _HSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"H") case _JSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"J") case _KSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"K") case _LSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"L") case _ZSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"Z") case _XSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"X") case _CSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"C") case _VSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"V") case _BSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"B") case _NSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"N") case _MSP ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+"M") case _SpaceBar ev1$ = EDIT$(_assist) DEF SETBUTTONTEXTSTRING(_assist,ev1$+" ") case _hearBtn1 Open "UNIX",2, "say -v Alex "+"Copyright 2009 by Brian Heibert and ImaginateWare, Ltd. All Rights Reserved." close #2 end select end select case _preview select ( id ) case _preMenuClick case _preWndGrow end select end select end fn fn BuildSPAZEnglish FN BuildMenus ON DIALOG FN doDialog on menu fn DoMenu include "Util_AppleHelp.incl" fn HBRegister() RunApplicationEventLoop() poke long event - 8, 0xFFFFFFFF do handleevents until gFBQuit On 2/28/09 11:58 AM, "Pierre Zippi" <pierrezippi@...> wrote: > Try adding this line below the INCLUDE "Tlbx LSOpen.incl" > TOOLBOX FN CFURLCreateWithString ( CFAllocatorRef allocator,¬ > CFStringRef URLString,¬ > CFURLRef baseURL ) = CFURLRef > ALSO watch out for the email wrap of this line >> urlRef = fn CFURLCreateWithString( _kCFAllocatorDefault, fn CFSTR ( urlStr >> ), 0 ) > > > On Sat, Feb 28, 2009 at 10:15 AM, Brian Heibert <bheibert@...> wrote: >> I copied most of everything over >> FB doesn't seem to like the LaunchURL you provided >> >> local fn LaunchURL( urlStr as str255 ) >> '~'1 >> dim as CFURLRef urlRef >> >> urlRef = fn CFURLCreateWithString( _kCFAllocatorDefault, fn CFSTR ( urlStr >> ), 0 ) >> long if ( urlRef ) >> fn LSOpenCFURLRef( urlRef, #0 ) >> CFRelease( urlRef ) >> end if >> >> end fn >> >> But then again my FB has been acting strangely lately, maybe I need to >> re-install. >> >> Thanks, >> >> Brian >> >> >> On 2/28/09 1:01 AM, "Ken Shmidheiser" <kshmidheiser@...> wrote: >> >>> Brian asked: >>> >>>> And I am trying to get my help menu to open my helpbook when the >>>> help menuitem is clicked on >>>> Why isn¹t this working? >>> >>> >>> HHhhmmm... slow night here. But this works for me. >>> >>> Ken >>> >>> include "Tlbx LSOpen.incl" >>> >>> _speakassisthelp = 1 >>> _gotoimaginateware = 2 >>> _gotospeakassistnet = 3 >>> _sharewaremenu = 4 >>> >>> local fn BuildMenus >>> menu 1,0,_enable,"File" >>> end fn >>> >>> local fn BuildHelpMenu >>> '~'1 >>> dim as MenuRef @ HMenuRef >>> dim as MenuItemIndex @ HMenuItem >>> dim as Str255 s >>> dim as OSStatus err >>> >>> err = fn HMGetHelpMenu( HMenuRef, HMenuItem ) >>> long if ( err == _noErr ) >>> long if ( HMenuRef ) >>> s = "SpeakAssist Help" >>> InsertMenuItem ( HMenuRef, s, _speakassisthelp ) >>> s = "Imaginateware.com" >>> InsertMenuItem ( HMenuRef, s, _gotoimaginateware ) >>> s = "Speakassist.net" >>> InsertMenuItem ( HMenuRef, s, _gotospeakassistnet ) >>> s = "Web Store" >>> InsertMenuItem ( HMenuRef, s, _sharewaremenu ) >>> end if >>> end if >>> >>> end fn >>> >>> local fn LaunchURL( urlStr as str255 ) >>> '~'1 >>> dim as CFURLRef urlRef >>> >>> urlRef = fn CFURLCreateWithString( _kCFAllocatorDefault, fn CFSTR >>> ( urlStr ), 0 ) >>> long if ( urlRef ) >>> fn LSOpenCFURLRef( urlRef, #0 ) >>> CFRelease( urlRef ) >>> end if >>> >>> end fn >>> >>> local fn DoMenus >>> '~'1 >>> dim as long menuID, itemID >>> >>> menuID = menu( _MenuID ) >>> itemID = menu( _ItemID ) >>> >>> select case ( menuID ) >>> case _KHMHelpMenuID >>> select itemID >>> case _speakassisthelp >>> print "You selected Speakassist Help" >>> case _gotoimaginateware >>> print "Going to Imaginateware.com..." >>> fn LaunchURL( "http://www.imaginateware.com" ) >>> case _gotospeakassistnet >>> print "Going to SpeakAssist.net..." >>> fn LaunchURL( "http://www.speakassist.net" ) >>> case _sharewaremenu >>> print "Going to Web Store..." >>> fn LaunchURL( "http://www.imaginateware.com/webstore.php" ) >>> end select >>> end select >>> menu >>> >>> end fn >>> >>> fn BuildMenus >>> fn BuildHelpMenu >>> >>> appearance window 1 >>> >>> print "Select something from the Help menu..." >>> >>> on menu fn DoMenus >>> >>> do >>> handleevents >>> until gFBQuit >>> >>> -- >>> To unsubscribe, send ANY message to: futurebasic-unsubscribe@... >>> >> >> -- >> To unsubscribe, send ANY message to: futurebasic-unsubscribe@... >> >> > >