Repository URL to install this package:
Version:
3.0.0 ▾
|
{
File: Help/AppleHelp.h
Contains: Apple Help
Version: Help-36~232
Copyright: © 2000-2008 by Apple Computer, Inc., all rights reserved.
Bugs?: For bug reports, consult the following page on
the World Wide Web:
http://www.freepascal.org/bugs.html
}
{ Translation Updated: Jonas Maebe, <jonas@freepascal.org>, October 2009 }
{
Modified for use with Free Pascal
Version 308
Please report any bugs to <gpc@microbizz.nl>
}
{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
{$mode macpas}
{$packenum 1}
{$macro on}
{$inline on}
{$calling mwpascal}
unit AppleHelp;
interface
{$setc UNIVERSAL_INTERFACES_VERSION := $0400}
{$setc GAP_INTERFACES_VERSION := $0308}
{$ifc not defined USE_CFSTR_CONSTANT_MACROS}
{$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
{$endc}
{$ifc defined CPUPOWERPC and defined CPUI386}
{$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
{$endc}
{$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
{$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
{$endc}
{$ifc not defined __ppc__ and defined CPUPOWERPC32}
{$setc __ppc__ := 1}
{$elsec}
{$setc __ppc__ := 0}
{$endc}
{$ifc not defined __ppc64__ and defined CPUPOWERPC64}
{$setc __ppc64__ := 1}
{$elsec}
{$setc __ppc64__ := 0}
{$endc}
{$ifc not defined __i386__ and defined CPUI386}
{$setc __i386__ := 1}
{$elsec}
{$setc __i386__ := 0}
{$endc}
{$ifc not defined __x86_64__ and defined CPUX86_64}
{$setc __x86_64__ := 1}
{$elsec}
{$setc __x86_64__ := 0}
{$endc}
{$ifc not defined __arm__ and defined CPUARM}
{$setc __arm__ := 1}
{$elsec}
{$setc __arm__ := 0}
{$endc}
{$ifc defined cpu64}
{$setc __LP64__ := 1}
{$elsec}
{$setc __LP64__ := 0}
{$endc}
{$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
{$error Conflicting definitions for __ppc__ and __i386__}
{$endc}
{$ifc defined __ppc__ and __ppc__}
{$setc TARGET_CPU_PPC := TRUE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __ppc64__ and __ppc64__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := TRUE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __i386__ and __i386__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := TRUE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$ifc defined(iphonesim)}
{$setc TARGET_OS_MAC := FALSE}
{$setc TARGET_OS_IPHONE := TRUE}
{$setc TARGET_IPHONE_SIMULATOR := TRUE}
{$elsec}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$endc}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __x86_64__ and __x86_64__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := TRUE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __arm__ and __arm__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := TRUE}
{ will require compiler define when/if other Apple devices with ARM cpus ship }
{$setc TARGET_OS_MAC := FALSE}
{$setc TARGET_OS_IPHONE := TRUE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := TRUE}
{$elsec}
{$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ is defined.}
{$endc}
{$ifc defined __LP64__ and __LP64__ }
{$setc TARGET_CPU_64 := TRUE}
{$elsec}
{$setc TARGET_CPU_64 := FALSE}
{$endc}
{$ifc defined FPC_BIG_ENDIAN}
{$setc TARGET_RT_BIG_ENDIAN := TRUE}
{$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
{$elifc defined FPC_LITTLE_ENDIAN}
{$setc TARGET_RT_BIG_ENDIAN := FALSE}
{$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
{$elsec}
{$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
{$endc}
{$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
{$setc CALL_NOT_IN_CARBON := FALSE}
{$setc OLDROUTINENAMES := FALSE}
{$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
{$setc OPAQUE_UPP_TYPES := TRUE}
{$setc OTCARBONAPPLICATION := TRUE}
{$setc OTKERNEL := FALSE}
{$setc PM_USE_SESSION_APIS := TRUE}
{$setc TARGET_API_MAC_CARBON := TRUE}
{$setc TARGET_API_MAC_OS8 := FALSE}
{$setc TARGET_API_MAC_OSX := TRUE}
{$setc TARGET_CARBON := TRUE}
{$setc TARGET_CPU_68K := FALSE}
{$setc TARGET_CPU_MIPS := FALSE}
{$setc TARGET_CPU_SPARC := FALSE}
{$setc TARGET_OS_UNIX := FALSE}
{$setc TARGET_OS_WIN32 := FALSE}
{$setc TARGET_RT_MAC_68881 := FALSE}
{$setc TARGET_RT_MAC_CFM := FALSE}
{$setc TARGET_RT_MAC_MACHO := TRUE}
{$setc TYPED_FUNCTION_POINTERS := TRUE}
{$setc TYPE_BOOL := FALSE}
{$setc TYPE_EXTENDED := FALSE}
{$setc TYPE_LONGLONG := TRUE}
uses MacTypes,CFBase,Files,CFString;
{$endc} {not MACOSALLINCLUDE}
{$ifc TARGET_OS_MAC}
{$ALIGN POWER}
{ AppleHelp Error Codes }
const
kAHInternalErr = -10790;
kAHInternetConfigPrefErr = -10791;
type
AHTOCType = SInt16;
const
kAHTOCTypeUser = 0;
kAHTOCTypeDeveloper = 1;
{
* AHSearch()
*
* Discussion:
* Delivers a request to perform the specified search to the Help
* Viewer application.
*
* Parameters:
*
* bookname:
* Optionally, the AppleTitle of the Help book to be searched. If
* NULL, all installed Help books are searched.
*
* query:
* The query to be made. This string can, if desired, have boolean
* operators or be a natural language phrase.
*
* Result:
* An operating system result code that indicates whether the
* request was successfully sent to the Help Viewer application.
* Possible values: noErr, paramErr, kAHInternalErr.
*
* Availability:
* Mac OS X: in version 10.0 and later in Carbon.framework
* CarbonLib: in CarbonLib 1.1 and later
* Non-Carbon CFM: not available
}
function AHSearch( bookname: CFStringRef; query: CFStringRef ): OSStatus; external name '_AHSearch';
(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
{
* AHGotoMainTOC() *** DEPRECATED ***
*
* Discussion:
* Delivers a request to load the main table of contents of
* installed help books to the Help Viewer application. This method
* has been deprecated in Mac OS X 10.4. Instead, please use
* AHGotoPage to jump directly to different books or anchors.
*
* Parameters:
*
* toctype:
* The type of table of contents to be loaded: user or developer.
*
* Result:
* An operating system result code that indicates whether the
* request was successfully sent to the Help Viewer application.
* Possible values: noErr, paramErr, kAHInternalErr.
*
* Availability:
* Mac OS X: in version 10.0 and later in Carbon.framework but deprecated in 10.4
* CarbonLib: in CarbonLib 1.1 and later
* Non-Carbon CFM: not available
}
function AHGotoMainTOC( toctype: AHTOCType ): OSStatus; external name '_AHGotoMainTOC';
(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *)
{
* AHGotoPage()
*
* Discussion:
* Delivers a request to load a specific text/html file to the Help
* Viewer application.
*
* Parameters:
*
* bookname:
* Optionally, the AppleTitle of an installed Help book. If NULL,
* the path parameter must be a full file: URL to the file to be
* opened.
*
* path:
* Optionally, one of two types of paths: 1) a URL-style path to a
* file that is relative to the main folder of the book supplied
* in the bookname parameter, or 2) if bookname is NULL, a full
* file: URL to the file to be opened. If this parameter is NULL,
* then bookname must not be NULL, and is used to open the Help
* Viewer to the main page of Help content for the specified book.
*
* anchor:
* Optionally, the name of anchor tag to scroll to in the newly
* opened file. Can be NULL.
*
* Result:
* An operating system result code that indicates whether the
* request was successfully sent to the Help Viewer application.
* Possible values: noErr, paramErr, kAHInternalErr.
*
* Availability:
* Mac OS X: in version 10.0 and later in Carbon.framework
* CarbonLib: in CarbonLib 1.1 and later
* Non-Carbon CFM: not available
}
function AHGotoPage( bookname: CFStringRef; path: CFStringRef; anchor: CFStringRef ): OSStatus; external name '_AHGotoPage';
(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
{
* AHLookupAnchor()
*
* Discussion:
* Delivers a request to perform an anchor lookup to the Help Viewer
* application. Note: anchor lookups will fail unless you have
* indexed your help content with anchor indexing turned on in the
* indexing tool's preferences panel.
*
* Parameters:
*
* bookname:
* Optionally, the AppleTitle of the Help book to searched. If
* NULL, the anchor lookup is performed using all installed Help
* books.
*
* anchor:
* The name of the anchor tag to look up.
*
* Result:
* An operating system result code that indicates whether the
* request was successfully sent to the Help Viewer application.
* Possible values: noErr, paramErr, kAHInternalErr.
*
* Availability:
* Mac OS X: in version 10.0 and later in Carbon.framework
* CarbonLib: in CarbonLib 1.1 and later
* Non-Carbon CFM: not available
}
function AHLookupAnchor( bookname: CFStringRef; anchor: CFStringRef ): OSStatus; external name '_AHLookupAnchor';
(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
{
* AHRegisterHelpBook()
*
* Discussion:
* Registers a book of Help content such that the book will appear
* in the current user's main table of contents (Help Center) in the
* Help Viewer application. To be used when help books reside
* outside of the known help folders (i.e. help books that are kept
* inside of application bundles).
*
* Parameters:
*
* appBundleRef:
* An FSRef pointer to the bundle within which one or more Help
* books is stored. This is likely an FSRef to your application's
* main bundle.
*
* Result:
* An operating system result code that indicates whether all help
* books contained within the specified bundle were registered.
* Possible values: noErr, paramErr, kAHInternalErr, dirNFErr.
*
* Availability:
* Mac OS X: in version 10.0 and later in Carbon.framework
* CarbonLib: in CarbonLib 1.1 and later
* Non-Carbon CFM: not available
}
function AHRegisterHelpBook( const (*var*) appBundleRef: FSRef ): OSStatus; external name '_AHRegisterHelpBook';
(* AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER *)
function AHRegisterHelpBookWithURL( {const} applicationURL: CFURLRef ): OSStatus; external name '_AHRegisterHelpBookWithURL';
(* AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER *)
{$endc} {TARGET_OS_MAC}
{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
end.
{$endc} {not MACOSALLINCLUDE}