API Guide Home (Online version only) |

# HsAppLaunchCmd.h

Go to the documentation of this file.

    00001 /******************************************************************************
    00002  * Copyright (c) 2004 PalmOne, Inc. or its subsidiaries.
    00003  * All rights reserved.
    00004  *****************************************************************************/
    00005 /**
    00006  *
    00007  * @ingroup SystemDef
    00008  *
    00009  */
    00010
    00011 /**
    00012  * @file    HsAppLaunchCmd.h
    00013  * @version 1.0
    00014  * @date    04/20/2000
    00015  *
    00016  * @brief Public header file akin to Palm's AppLaunchCmd.h
    00017  *
    00018  */
    00019
    00020 /**
    00021  * @author   dia
    00022  *
    00023  * History:8
    00024  *  12-oct-1999 dia - Created by Douglas Anderson
    00025  *   20-apr-2000 dia - New APIs for dialing.
    00026  *
    00027  * <hr>
    00028  */
    00029
    00030 #ifndef   __HSAPPLAUNCHCMD_H__
    00031 #define   __HSAPPLAUNCHCMD_H__
    00032
    00033 //#include <CoreCompatibility.h>
    00034 #include <AppLaunchCmd.h>
    00035 #include <Common/Libraries/Imaging/palmOnePhotoCommon.h>
    00036
    00037 #include <HsPhoneTypes.h>
    00038 #include <HsPhoneNetworkTypes.h>
    00039 #include <HsPhoneGSMTypes.h>
    00040 #include <HsPhoneSecurityTypes.h>
    00041 #include <HsPhoneCDMATypes.h>
    00042 #include <HsPhoneIOTATypes.h>
    00043 #include <HsPhoneEvent.h>
    00044
    00045 //=============================================================================
    00046 // Useful macros...
    00047 //=============================================================================
    00048
    00049 // <chg 07-mar-00 dia>
    00050 // The LaunchWithCommand() macro was added in the OS 3.2 headers, so we
    00051 // only define this macro if we're compiling with old headers.
    00052
    00053 #ifndef LaunchWithCommand
    00054   #define LaunchWithCommand(type, creator, command, commandParams) \
    00055   { \
    00056     UInt16              cardNo; \
    00057     LocalID             dbID; \
    00058     DmSearchStateType   searchState; \
    00059     Err                     err; \
    00060     DmGetNextDatabaseByTypeCreator(true, &searchState, type, \
    00061         creator, true,  &cardNo, &dbID); \
    00062     ErrNonFatalDisplayIf(!dbID, "Could not find db"); \
    00063     if (dbID) \
    00064       { \
    00065         err = SysUIAppSwitch(cardNo, dbID, command, (Ptr) commandParams); \
    00066         ErrNonFatalDisplayIf(err, "Could not launch db"); \
    00067       } \
    00068   }
    00069 #endif // def(LaunchWithCommand)
    00070
    00071
    00072 // <chg 07-mar-00 dia>
    00073 // Unfortunately, CallWithCmmand() was never defined (I should have known
    00074 // better).  Still, just in case Palm ever does define it, I'll couch
    00075 // it in ifdefs.  Hopefully, they follow the other macro and it will look
    00076 // just like this.
    00077
    00078 #ifndef CallWithCommand
    00079   /** internal */
    00080   #define CallWithCommand(type, creator, command, commandParams) \
    00081   { \
    00082     UInt16              cardNo; \
    00083     LocalID             dbID; \
    00084     DmSearchStateType   searchState; \
    00085     UInt32 result; \
    00086     Err err; \
    00087     DmGetNextDatabaseByTypeCreator(true, &searchState, type, \
    00088         creator, true,  &cardNo, &dbID); \
    00089     ErrNonFatalDisplayIf(!dbID, "Could not find db"); \
    00090     if (dbID) \
    00091       { \
    00092         err = SysAppLaunch(cardNo, dbID, 0, command, (Ptr) commandParams, &result); \
    00093         ErrNonFatalDisplayIf(err, "Could not launch db"); \
    00094       } \
    00095   }
    00096 #endif // def(CallWithCommand)
    00097
    00098
    00099 //=============================================================================
    00100 // Handspring-modified address book
    00101 //=============================================================================
    00102
    00103 //-------------------------------------------------------------------
    00104 // Extra launch codes
    00105 //-------------------------------------------------------------------
    00106
    00107 /** Launch codes start at customBase + 0x2300 so that hopefully there won't be any conflict with
    00108   * any launch codes that PalmSource or others add to the address book.
    00109   * IMPORTANT: See also AddrCustomNotificationCodes . */
    00110 typedef enum
    00111   {
    00112     addrAppLaunchCmdHsLookup= sysAppLaunchCmdCustomBase + 0x2300,   /**< Launch Contacts for lookup */
    00113     addrAppLaunchCmdCallerID                                        /**< Launch Contacts for callerID lookup */
    00114   }
    00115 AddrCustomActionCodes;
    00116
    00117 /** Switch to using notifications rather than launch codes to avoid potential
    00118   * conflicts if PalmSource modifies the address book app. */
    00119 typedef enum
    00120   {
    00121         // NOTE:
    00122         // Shouldn't be using these values!  Notification types are
    00123         // supposed to be 4-character creator IDs that are registered in Palm's
    00124         // Creator database!  Guess it's a little late now, since these codes are
    00125         // out in the field.
    00126         addrAppNotificationHsLookup = sysAppLaunchCmdCustomBase + 0x2300,
    00127         addrAppNotificationCmdCallerID,
    00128         addrAppNotificationPhonebookApp,
    00129
    00130         // DON'T ADD ANY MORE based on 2300:  See above NOTE
    00131
    00132         addrAppNotificationListLookupTypeGet = 'HsLL',      // Registered 2001-09-12 w/ Creator DB
    00133         addrAppNotificationCreateNewRecord = 'HsNR',        // Registered 2002-07-30 w/ Creator DB
    00134         addrAppNotificationDialPrefs = 'HsDP',              // Registered 2003-01-29 w/ Creator DB
    00135         addrAppNotificationBeamBusinessCard = 'HsBB',       // Registered 2003-02-14 w/ Creator DB
    00136         addrAppNotificationPhotoCallerID = 'HsPC'
    00137   }
    00138 AddrCustomNotificationCodes;
    00139
    00140 //-------------------------------------------------------------------
    00141 // Support for addrAppLaunchCmdHsLookup
    00142 //-------------------------------------------------------------------
    00143
    00144 /** Parameter block is the same as OS 3.1's block for sysAppLaunchCmdLookup */
    00145 typedef AddrLookupParamsType AddrHsLookupParamsType;
    00146
    00147 /** Parameter block is the same as OS 3.1's block for sysAppLaunchCmdLookup */
    00148 typedef AddrHsLookupParamsType * AddrHsLookupParamsPtr;
    00149
    00150 // We support all of the lookup fields that defined in the AddressLookupFields
    00151 // enum for the OS 3.1 headers, plus these two.  The string versions of these
    00152 // (for the formatstring paramter) are "voicephone" and "anyphone".
    00153 // ...start at 0x70 so hopefully we get no conflicts.
    00154
    00155 /** Expansion to the Palm OS AddressLookupFields. */
    00156 typedef enum {
    00157     addrLookupVoicePhones=0x70,     /**< All phone fields except fax and email. */
    00158     addrLookupAnyPhones ,           /**< All phone fields (including email) */
    00159     addrLookupSMSPhones ,           /**< Mobile, other and email fields */
    00160     addrLookupSMSPhonesNoEmail      /**< Mobile and other fields */
    00161 } AddressHsLookupFields;
    00162
    00163
    00164 //-------------------------------------------------------------------
    00165 // Support for addrAppLaunchCmdCallerID
    00166 //-------------------------------------------------------------------
    00167
    00168 /** Flag definitions for AddrCallerIDParamsType flags field
    00169   * If this flag is set, we match numbers that are
    00170   * shorter than the usual minimum required length.
    00171   * We match the *entire* string, not substrings. */
    00172 #define addrLookupNoMinLength       1
    00173
    00174
    00175 /** Parameter block for addrAppLaunchCmdCallerID. */
    00176 typedef struct
    00177   {
    00178     Char* lookupString;   /**< Must be only digits and include country code.
    00179                                Example: 14085551212 */
    00180     Char* formatString;   /**< Format of the output string like AddrLookupParamsPtr->formatString
    00181                                Example ^name ( ^phonetypelabel ) might result
    00182                                in "David ( work )" */
    00183
    00184     Char* resultString; /**<  Returned heap allocated string resultStringH; */
    00185     Boolean (*callback)(void*); /**< Call back; Returns true to stop execution */
    00186     void* ref;  /**< Reference that gets passed to callbackFunc */
    00187     UInt32 uniqueID; /**< Unique ID of the matching record 0 if no match */
    00188     UInt16 flags; /**< Flags associated with the called ID */
    00189     UInt16 recordNum; /**<record number of the matching record. */
    00190
    00191   }
    00192 AddrCallerIDParamsType, * AddrCallerIDParamsPtr;
    00193
    00194
    00195 //-------------------------------------------------------------------
    00196 // Support for addrAppNotificationListLookupTypeGet
    00197 //-------------------------------------------------------------------
    00198
    00199 /** Various address book lookup methods. */
    00200 enum
    00201   {
    00202     addrListLookupTypeLastName,           /**< phone lookup will be by last name... */
    00203     addrListLookupTypeFirstName,          /**< phone lookup will be by first name... */
    00204     addrListLookupTypeCompany,            /**< phone lookup will be by company (currently unused)... */
    00205     addrListLookupTypeIntelligent         /**< phone lookup will be intelligent (either name or
    00206                                                some other matching) (currently unused)...  */
    00207   };
    00208 typedef UInt16 AddrListLookupTypeEnum;    /**< AddrListLookupTypeEnum -> UInt16 */
    00209
    00210 /** Contains data used when launching address book for contact lookup. */
    00211 typedef struct
    00212   {
    00213     UInt16                  version;      /**< IN/OUT: Should always be 0... */
    00214     AddrListLookupTypeEnum  type;         /**< OUT: The type of phone lookup that
    00215                                                     will occur if you do a lookup by
    00216                                                     listName. */
    00217   }
    00218 AddrListLookupTypeGetParamsType;
    00219
    00220
    00221 //-------------------------------------------------------------------
    00222 // Support for addrAppLaunchCmdHsPhonebook
    00223 //-------------------------------------------------------------------
    00224 /** Parameter block for addrAppLaunchCmdHsPhonebook. */
    00225 typedef struct
    00226   {
    00227     Char*     lookupStrP; /**< The lookup string that should be
    00228                                preloaded in the lookup field */
    00229     Boolean   activeCall; /**< Whether the active call icon should be
    00230                                usable or not... could change in a sublaunch
    00231                                when a call is dropped */
    00232     Boolean   lookup;     /**< True if this notification is for a lookup
    00233                                false if it is for a new contact */
    00234     Char *    newPhoneNum;/**< Phone number of the new contact. */
    00235   }
    00236 AddrPhonebookAppParamsType, * AddrPhonebookAppParamsPtr;
    00237
    00238
    00239 // <chg 2002-08-05 knm>
    00240 // This is used to send a new contact data to AddressApp. Currently
    00241 // SMSApp's "Save to Contacts" feature uses this.
    00242 //-------------------------------------------------------------------
    00243 // Support for addrAppNotificationCreateNewRecord
    00244 //-------------------------------------------------------------------
    00245
    00246 /** Contains data when launching phone book with create new record view. */
    00247 typedef struct
    00248   {
    00249     Char*   data;   /**< Data to save (Null terminated string) */
    00250     UInt8   field;  /**< Phone number, URL, or email address field number.
    00251                           *  They are defined in ViewForm.c as follows:
    00252                           *  #define kAddrDBRecMobileFld 5   // phone3
    00253                           *  #define kAddrDBRecEMailFld  7   // phone5
    00254                           *  #define kAddrDBRecURLFld    14  // custom1
    00255                           *  The values are based on the field definition in AddressDB.h. */
    00256   }
    00257 AddrCreateNewRecordParamsType, * AddrCreateNewRecordParamsPtr;
    00258
    00259 // <chg 2006-06-07 ericw>
    00260 // This is used to add a number to an existing contact in PhoneApp. Currently
    00261 // the post call number store uses this
    00262 //-------------------------------------------------------------------
    00263 // Support for addrAppNotificationAddToRecord
    00264 //-------------------------------------------------------------------
    00265
    00266 /** Contains data when launching phone book with create new record view. */
    00267 typedef struct
    00268   {
    00269     Char*   data;     /**< Data to save (Null terminated string) */
    00270     UInt32  uniqueID; /**< The UID of the contact to save the phone number to */
    00271     UInt8   field;    /**< Phone number, URL, or email address field number.
    00272                           *  They are defined in ViewForm.c as follows:
    00273                           *  #define kAddrDBRecMobileFld 5   // phone3
    00274                           *  #define kAddrDBRecEMailFld  7   // phone5
    00275                           *  #define kAddrDBRecURLFld    14  // custom1
    00276                           *  The values are based on the field definition in AddressDB.h. */
    00277   }
    00278 AddrAddToRecordParamsType, * AddrAddToRecordParamsPtr;
    00279 //-------------------------------------------------------------------
    00280 // Support for addrAppNotificationHsLookup
    00281 //-------------------------------------------------------------------
    00282 #define AddrHsLookupUserDataVersion     0 /**< Version number of the addrAppNotificationHsLookup command and structures */
    00283
    00284 /** Structure that contains the data used for looking up user info in address book app */
    00285 typedef struct
    00286   {
    00287     UInt16                  version;        /**< IN: Version of the userData structure */
    00288     Boolean                 matchFound;     /**< OUT: TRUE if ANY match was found.
    00289                                                       (i.e. 1 or more matches were
    00290                                                       found)
    00291                                                       FALSE if NO match was found. */
    00292     Boolean                 useMultiFilter; /**< IN: TRUE if lookup should use multifilter.
    00293                                                      FALSE if lookup should NOT use multifilter. */
    00294   }
    00295 AddrHsLookupUserDataType, *AddrHsLookupUserDataPtr;
    00296
    00297 #define AddrHsLookupUserDataVersion2        1 /**< Version number of the addrAppNotificationHsLookup command for the V2 structure */
    00298
    00299 typedef struct
    00300   {
    00301     UInt16                  version;        /**< IN: Version of the userData structure */
    00302     Boolean                 matchFound;     /**< OUT: TRUE if ANY match was found.
    00303                                                       (i.e. 1 or more matches were
    00304                                                       found)
    00305                                                       FALSE if NO match was found. */
    00306     Boolean                 useMultiFilter; /**< IN: TRUE if lookup should use multifilter.
    00307                                                      FALSE if lookup should NOT use multifilter. */
    00308     Boolean                 displaySIMbook; /**< IN: TRUE if lookup should display Simbook entries.
    00309                                                      FALSE if lookup should NOT display Simbook entries. */
    00310   }
    00311 AddrHsLookupUserDataV2Type, *AddrHsLookupUserDataV2Ptr;
    00312
    00313 //-------------------------------------------------------------------
    00314 // Support for addrAppNotificationPhotoCallerID
    00315 //-------------------------------------------------------------------
    00316 /** Support for addrAppNotificationPhotoCallerID */
    00317 typedef struct
    00318 {
    00319     UInt16      recordNum;  /**< Record for which we want to get the picture id */
    00320     Coord       xExtent;    /**< Dimension of the photo required. Pass 0 to get max size. */
    00321     Coord       yExtent;    /**< Dimension of the photo required. Pass 0 to get max size. */
    00322     void        *imageBits; /**< Bits that represent the caller id image. image size returned in xExtent & yExtent */
    00323 }
    00324 AddrPhotoCallerIDParamsType, *AddrPhotoCallerIDParamsPtr;
    00325
    00326 //-------------------------------------------------------------------
    00327 // Support for dialPnlLaunchCmd... commands
    00328 //-------------------------------------------------------------------
    00329
    00330 // Boolean IsDialingAvailable (UInt32 serviceFlags)
    00331 // ------------------------------------------------
    00332
    00333 /** Support for dialPnlLaunchCmd... commands */
    00334 typedef struct
    00335   {
    00336     Boolean result;             /**< OUT: Space for result... */
    00337     UInt8 _reserved0;           /**< IN:  Reserved byte--MUST BE 0. */
    00338
    00339     const UInt32* serviceIDsP;  /**< IN:  Array of services to check... */
    00340     UInt16 numServices;         /**< IN:  Num elements in service IDs array. */
    00341   }
    00342 DialPnlIsDialingAvailableParamsType;
    00343
    00344
    00345 // void DispatchDial (UInt16 service, void* paramP)
    00346 // ------------------------------------------------
    00347
    00348 /** Use with the function DispatchDial (UInt16 service, void* paramP) */
    00349 typedef struct
    00350   {
    00351     UInt32  serviceID;      /**< IN:  The service type to dial... */
    00352     void*   dataP;          /**< IN:  Basic Data to send to the helper... */
    00353     Char*   descriptionStr; /**< IN:  Description of data to dial... */
    00354     UInt8   handled;        /**< OUT: Non-zero if handled */
    00355     Err     err;            /**< OUT: Err code returned... */
    00356   }
    00357 DialPnlDispatchDialParamsType;
    00358
    00359
    00360 //=============================================================================
    00361 // Handspring phone application
    00362 //=============================================================================
    00363
    00364 // DOLATER: Some of these may be obsolete now...
    00365
    00366 //------------------------------------------------------------------------
    00367 // Phone application's custom launch codes
    00368 //------------------------------------------------------------------------
    00369
    00370 /** Launch the phone application and dial the passed number */
    00371 #define phoneAppLaunchCmdDial           (sysAppLaunchCmdCustomBase)
    00372
    00373 /** Launch the phone application and dial the last number dialed. */
    00374 #define phoneAppLaunchCmdRedial         (sysAppLaunchCmdCustomBase+1)
    00375
    00376 /** Launch the phone application and display the active calls view. */
    00377 #define phoneAppLaunchCmdViewCalls      (sysAppLaunchCmdCustomBase+2)
    00378
    00379 /** Launch the phone application and prompt to power on the phone */
    00380 #define phoneAppLaunchCmdPowerOn        (sysAppLaunchCmdCustomBase+3)
    00381
    00382 /** Launch the phone application and dial a number */
    00383 #define phoneAppLaunchCmdDialVoiceMail  (sysAppLaunchCmdCustomBase+4)
    00384
    00385 /** Launch the phone application and display the call history view. */
    00386 #define phoneAppLaunchCmdViewHistory    (sysAppLaunchCmdCustomBase+5)
    00387
    00388 /** Launch the phone application and display the speed dial view. */
    00389 #define phoneAppLaunchCmdViewSpeed      (sysAppLaunchCmdCustomBase+6)
    00390
    00391 /** Launch the phone application and display the keypad view. */
    00392 #define phoneAppLaunchCmdViewKeypad     (sysAppLaunchCmdCustomBase+7)
    00393
    00394 /** Launch the phone application and display the Phone Home view */
    00395 #define phoneAppLaunchCmdViewPhoneHome  (sysAppLaunchCmdCustomBase+8)
    00396
    00397 /** Launch the ## Application */
    00398 #define phoneAppLaunchCmdActivation     (sysAppLaunchCmdCustomBase+10)
    00399
    00400 /** Set the Wallpaper */
    00401 #define phoneAppLaunchCmdSetWallpaper   (sysAppLaunchCmdCustomBase+11)
    00402
    00403 /** Start the Network-initiated USSD */
    00404 #define phoneAppLaunchCmdStartNetInitUSSD   (sysAppLaunchCmdCustomBase+12)
    00405
    00406 /** Launch the phone application and dial the passed number for SATK SETUP CALL */
    00407 #define phoneAppLaunchCmdDialSTKSETUPCALL   (sysAppLaunchCmdCustomBase+13)
    00408
    00409 /** Launch the phone application to display the UI to ask the user if they
    00410   * would like to search again. */
    00411
    00412 #define phoneAppLaunchCmdNetworkSearch  (sysAppLaunchCmdCustomBase+14)
    00413
    00414 /** Launch the phone application and send DTMF tone to the network */
    00415 #define phoneAppLaunchCmdSendDTMFTone   (sysAppLaunchCmdCustomBase+15)
    00416
    00417 /** Launch the phone application and display missed calls in the call history view. */
    00418 #define phoneAppLaunchCmdViewMissedCalls  (sysAppLaunchCmdCustomBase+16)
    00419
    00420 /** Display Dial Prefs */
    00421 #define phoneAppLaunchCmdDisplayDialPrefs (sysAppLaunchCmdCustomBase+17)
    00422
    00423 /** Query for the carrier flag to determine if Dial Prefs menu option should be displyed */
    00424 #define phoneAppLaunchCmdGetDialPrefFlag  (sysAppLaunchCmdCustomBase+18)
    00425
    00426 /** Query for the carrier flag to determine if Dial Prefs menu option should be displyed */
    00427 #define phoneAppLaunchCmdGetUSDialingRules  (sysAppLaunchCmdCustomBase+19)
    00428
    00429 /** Launch the phone application and display the Options menu */
    00430 #define phoneAppLaunchOptionsMenu         (sysAppLaunchCmdCustomBase+20)
    00431
    00432 /** Launch the phone application and display the Options menu */
    00433 #define phoneAppLaunchCmdGetALSLineNumber     (sysAppLaunchCmdCustomBase+21)
    00434
    00435 // Launch the phone application if dialed from bt handsfree
    00436 #define phoneAppLaunchCmdBluetoothDial (sysAppLaunchCmdCustomBase+22)
    00437
    00438 // Launch the phone application if dialed from bt handsfree
    00439 #define phoneAppLaunchCmdBluetoothDialVoiceMail (sysAppLaunchCmdCustomBase+23)
    00440
    00441 // Query the phone application for the caller id for a given number
    00442 #define phoneAppLaunchCmdCallerIDLookup (sysAppLaunchCmdCustomBase+25)
    00443
    00444 // Re-register all the Phone App views
    00445 #define phoneAppLaunchCmdRegisterAllViews (sysAppLaunchCmdCustomBase+27)
    00446
    00447 //------------------------------------------------------------------------
    00448 // Data send this request to dial a number (phoneAppLaunchCmdDial).
    00449 //------------------------------------------------------------------------
    00450
    00451 /** Phone application dial methods. */
    00452 typedef enum
    00453   {
    00454     PhoneAppDialMethodNormal = 0,     /**< Normal PhnLibDial() */
    00455     PhoneAppDialMethodSATSetupCall,   /**< Use SIM Toolkit and respond
    00456                                             affirmative to the SIM's request
    00457                                             to set up a call. */
    00458         // The below codes are added to allow passing of the call setup
    00459         // options
    00460         PhoneAppDialMethodSATSetupCallModeNotBusy,
    00461         PhoneAppDialMethodSATSetupCallWithRedialModeNotBusy,
    00462         PhoneAppDialMethodSATSetupCallHoldOtherCalls,
    00463         PhoneAppDialMethodSATSetupCallWithRedialHoldOtherCalls,
    00464         PhoneAppDialMethodSATSetupCallDisconnectOtherCalls,
    00465         PhoneAppDialMethodSATSetupCallWithRedialDisconnectOtherCalls,
    00466   }
    00467 PhoneAppDialMethodEnum;
    00468
    00469 /** Contains the data used by Phone app launch command dial. */
    00470 typedef struct
    00471     {
    00472     UInt8                   version;            /**< version number, set to one */
    00473     Boolean                 confirm;            /**< confirm before dialing. */
    00474     Char*                   name;               /**< optional */
    00475     Char*                   number;             /**< optional */
    00476     Char*                   extraDigits;        /**< optional */
    00477     // Version 1
    00478     UInt32                  failLaunchCreator;  /**< app to relaunch if dialling fails */
    00479     UInt16                  failLaunchCode;     /**< launch code to use when relaunching */
    00480     void*                   failLaunchParams;   /**< params to use when relaunching */
    00481     UInt16                  dialMethod;         /**< Method to use to dial the phone number
    00482                                                      See PhoneAppDialMethodEnum. */
    00483     }
    00484 PhoneAppLaunchCmdDialType, * PhoneAppLaunchCmdDialPtr;
    00485
    00486 /** Contains data used by PhoneAppLaunchCmdSetWallpaper. */
    00487 typedef struct
    00488   {
    00489     UInt32                  wallpaperUID;       /**< OBSOLETE */
    00490     // Version 2
    00491     PalmPhotoFileLocation   wallpaperLocation;  /**< path to image */
    00492   }
    00493 PhoneAppLaunchCmdSetWallpaperType, *PhoneAppLaunchCmdSetWallpaperPtr;
    00494
    00495 /** Contains data used by PhoneAppLaunchCmdSendDTMFTone. */
    00496 typedef struct
    00497   {
    00498     char                tone;       /**< the key that was pressed to trigger the launch cmd */
    00499     Boolean             repeated;   /**< true if the character was on autoRepeat */
    00500   }
    00501 PhoneAppLaunchCmdSendDTMFToneType, *PhoneAppLaunchCmdSendDTMFTonePtr;
    00502
    00503 /** Contains data used by PhoneAppLaunchCmdGetDialPref */
    00504 typedef struct
    00505 {
    00506   Boolean               displayDialPrefs; /**< If true Dial Preferences option is made available */
    00507 }
    00508 PhoneAppLaunchCmdGetDialPrefFlagType, *PhoneAppLaunchCmdGetDialPrefFlagPtr;
    00509
    00510 /** Data structure that goes with phoneAppLaunchCmdGetALSLineNumber launch cmd */
    00511 typedef struct
    00512 {
    00513   UInt8     lineNumber; /**<ALS Line number */
    00514 }
    00515 PhoneAppLaunchCmdGetALSLineNumberType, *PhoneAppLaunchCmdGetALSLineNumberTypePtr;
    00516
    00517 /** Data structure that goes with phoneAppLaunchCmdGetUSDialingRules launch cmd */
    00518 enum
    00519   {
    00520     hsDialPrefsAddAreaCodeUnknown = 0,    /**< we don't know yet, so prompt when appropriate */
    00521     hsDialPrefsAddAreaCodeNo,             /**< no auto-area code */
    00522     hsDialPrefsAddAreaCodeYes,            /**< add area code automatically before dialing */
    00523
    00524     hsDialPrefsAdd4DigitPrefixUnknown, //For 6 digit dialing
    00525     hsDialPrefsAdd4DigitPrefixNo,
    00526     hsDialPrefsAdd4DigitPrefixYes,
    00527
    00528     hsDialPrefsAdd5DigitPrefixUnknown,
    00529     hsDialPrefsAdd5DigitPrefixNo,
    00530     hsDialPrefsAdd5DigitPrefixYes,
    00531
    00532     hsDialPrefsAdd6DigitPrefixUnknown,
    00533     hsDialPrefsAdd6DigitPrefixNo,
    00534     hsDialPrefsAdd6DigitPrefixYes
    00535   };
    00536
    00537 /** MAX Length of the dialing prefixes for 7,6,5 and 4 digit numbers
    00538  * respectively, including zero-terminator. */
    00539 #define hsDialPrefsAutoAreaCodeLength     11
    00540 #define hsDialPrefs6DigitPrefixLength   11
    00541 #define hsDialPrefs5DigitPrefixLength   11
    00542 #define hsDialPrefs4DigitPrefixLength   11
    00543
    00544 #define hsDialPrefsMaxDialingPrefixLength 11
    00545
    00546 /** HsDialPrefsUSDialingRulesType */
    00547 typedef struct
    00548   {
    00549     UInt8  rulesEnabled;        /**< [OUT] if non-zero, then these should be
    00550                                            be applied; if zero -- don't apply. */
    00551     UInt8  _reserved0;          /**< caller must set to 0 (zero) -- for byte alignment, and reserved for
    00552                                      future use by the DialPrefs API */
    00553
    00554     UInt8  areaCodeCtl;         /**< [OUT] one of hsDialPrefsAddAreaCodeUnknown,
    00555                                            hsDialPrefsAddAreaCodeNo, or
    00556                                            hsDialPrefsAddAreaCodeYes;
    00557                                            default is hsDialPrefsAddAreaCodeUnknown */
    00558
    00559     UInt8  add1BeforeAreaCode;  /**< [OUT] if non-zero, automatically add "1" in front
    00560                                            of the area code of US/Canada numbers;
    00561                                            if zero -- don't.  Default is to add the "1"
    00562                                            in front of US/Canada area codes. */
    00563
    00564     char  autoAreaCode[hsDialPrefsAutoAreaCodeLength];
    00565                                 /**< [OUT] the "auto" area code digits to add to 7-digit
    00566                                            numbers if areaCodeCtl is hsDialPrefsAddAreaCodeYes; ignore otherwise; */
    00567
    00568     UInt8  prefix6DigitCtl; //Dialing prefix for 6-digit dialed numbers
    00569                                                     // one of hsDialPrefsAdd6DigitPrefixUnknown,
    00570                                                     //hsDialPrefsAdd6DigitPrefixNo,
    00571                                                     //hsDialPrefsAdd6DigitPrefixYes
    00572     UInt8  prefix5DigitCtl; //Dialing prefix for 5-digit dialed numbers
    00573                                                     // one of hsDialPrefsAdd5DigitPrefixUnknown,
    00574                                                     //hsDialPrefsAdd5DigitPrefixNo,
    00575                                                     //hsDialPrefsAdd5DigitPrefixYes
    00576     UInt8  prefix4DigitCtl; //Dialing prefix for 4-digit dialed numbers
    00577                                                     // one of hsDialPrefsAdd4DigitPrefixUnknown,
    00578                                                     //hsDialPrefsAdd4DigitPrefixNo,
    00579                                                     //hsDialPrefsAdd4DigitPrefixYes
    00580
    00581
    00582     char auto6DigitPrefix[hsDialPrefs6DigitPrefixLength];
    00583     char auto5DigitPrefix[hsDialPrefs5DigitPrefixLength];
    00584     char auto4DigitPrefix[hsDialPrefs4DigitPrefixLength];
    00585   }
    00586 HsDialPrefsUSDialingRulesType;
    00587
    00588 /** Contains data used by phoneAppLaunchCmdCallerIDLookup */
    00589 typedef struct
    00590   {
    00591     Char*   numberP;            /**< the view type to display                                          be applied; if zero -- don't apply. */
    00592     Char*   nameP;              /**< if not NULL, the view manager will pass this data block to the view
    00593                                      once the view has been opened */
    00594   }
    00595 PhoneAppLaunchCmdCallerIDLookupType, PhoneAppLaunchCmdCallerIDLookupPtr;
    00596
    00597 //------------------------------------------------------------------------
    00598 // Phone application's custom notification codes
    00599 //------------------------------------------------------------------------
    00600
    00601 /** This notification is broadcast by the Phone application */
    00602 #define pmPhoneAppNotifyHomeAppEvent        'pEvt'    // Registered with PalmSource Creator ID DB
    00603
    00604 /** The parameter for pmPhoneAppNotifyHomeAppEvent notification is
    00605   * of type PhnEventPtr(as defined in HsPhoneEvent.h */
    00606 #define pmPhoneAppNotifySetWallpaper        'pWlp'    // Registered with PalmSource Creator ID DB
    00607
    00608 // Parameter structure for pmPhoneAppNotifySetWallpaper notification
    00609 // See PhoneAppLaunchCmdSetWallpaperType
    00610
    00611 // -----------------------------------------------------------------------------
    00612 // Sound Prefs custom launch codes.
    00613 // -----------------------------------------------------------------------------
    00614
    00615 /** Launch sounds Prefs in Phone Prefs view */
    00616 #define soundPrefsLaunchCmdPhone            (sysAppLaunchCmdCustomBase)
    00617
    00618 /** Launch Sound Prefs in SMS Prefs view */
    00619 #define soundPrefsLaunchCmdSMS              (sysAppLaunchCmdCustomBase+1)
    00620
    00621 /** Launch Sound Prefs in IM Prefs view */
    00622 #define soundPrefsLaunchCmdIM               (sysAppLaunchCmdCustomBase+2)
    00623
    00624 /** Launch Sound Prefs in Email Prefs view */
    00625 #define soundPrefsLaunchCmdEmail            (sysAppLaunchCmdCustomBase+3)
    00626
    00627 /** Launch Sound Prefs in Calendar Prefs view */
    00628 #define soundPrefsLaunchCmdCalendar         (sysAppLaunchCmdCustomBase+4)
    00629
    00630 /** Launch Sound Prefs in the MMS Prefs view */
    00631 #define soundPrefsLaunchCmdMMS              (sysAppLaunchCmdCustomBase+5)
    00632
    00633 /** Launch Sound Prefs in the General Prefs view */
    00634 #define soundPrefsLaunchCmdGeneral              (sysAppLaunchCmdCustomBase+6)
    00635
    00636 /** Different sound pref dialog views. */
    00637 typedef enum
    00638 {
    00639   soundPrefsViewTones,
    00640   soundPrefsViewVolume
    00641 } SoundPrefsView;
    00642
    00643 /** Contains data used by SoundPrefsLaunchCmd. */
    00644 typedef struct
    00645 {
    00646   SoundPrefsView launchView;            /**< Launch to the tones/volume view. */
    00647 }
    00648
    00649 SoundPrefsLaunchCmdParamType, * SoundPrefsLaunchCmdParamPtr;
    00650
    00651 // -----------------------------------------------------------------------------
    00652 // Handspring Web browser custom launch codes
    00653 // -----------------------------------------------------------------------------
    00654
    00655 /** Launch the browser in the bookmark dialog */
    00656 #define     sysAppLaunchWebBrowserLaunchBookmarkDialog      (sysAppLaunchCmdCustomBase)
    00657
    00658 /** Retrieve the browser's home page */
    00659 #define     sysAppLaunchWebBrowserGetHomePage                     (sysAppLaunchCmdCustomBase + 1)
    00660
    00661 /** Set the browser's home page */
    00662 #define     sysAppLaunchWebBrowserSetHomePage                     (sysAppLaunchCmdCustomBase + 2)
    00663
    00664 /** Launch the browser in autocrawl mode */
    00665 #define   sysAppLaunchWebBrowserAutoCrawl               (sysAppLaunchCmdCustomBase + 3)
    00666
    00667 /** Launch the browser in tips/tutorial mode */
    00668 #define   sysAppLaunchWebBrowserTutorialMode            (sysAppLaunchCmdCustomBase + 4)
    00669
    00670 /** Launch the browser in minimal mode */
    00671 #define   sysAppLaunchWebBrowserMinimalMode             (sysAppLaunchCmdCustomBase + 5)
    00672
    00673 /** Contains data used when launching web browser in minimal mode. */
    00674 typedef struct {
    00675   Char*                    launchUrl;           /**< URL to browse when launching */
    00676   Char*                    doneButtonLabel;     /**< Label on the Done button */
    00677 } webBrowserMinimalModeLaunchInfo;
    00678
    00679 /* Launch the browser with a specific network service ID */
    00680 #define   sysAppLaunchWebBrowserURLWithSvcID             (sysAppLaunchCmdCustomBase + 6)
    00681
    00682 /** Contains data used when launching web browser with a specific SvcID. */
    00683 typedef struct {
    00684   UInt32                   svcID;               /**< Network SvcID from NetPref */
    00685   Char*                    launchUrl;           /**< URL to browse when launching */
    00686 } webBrowserURLWithSvcIDLaunchInfo;
    00687
    00688
    00689 //=============================================================================
    00690 // Handspring Camera application
    00691 //=============================================================================
    00692
    00693 /** Stop any active Camera preview */
    00694 #define   cameraAppLaunchCmdStopPreview                   (sysAppLaunchCmdCustomBase)
    00695
    00696 /**Notification to request stop/pause video preview/playback.
    00697   *In the event of high priority UI action like an incoming phone call,
    00698   *if the responsible application does not take action the sender of this
    00699   *notification may take appropriate action in order to handle the high priority task */
    00700 #define pmNotifyHighPriorityUITask      'pmUT'
    00701
    00702 /**Notification to request stop/pause audio preview/playback.
    00703   *In the event of high priority UI action like an incoming phone call,
    00704   *if the responsible application does not take action the sender of this
    00705   *notification may take appropriate action in order to handle the high priority task */
    00706 #define pmNotifyHighPriorityAudioTask   'pmAT'
    00707
    00708 #endif // __HSAPPLAUNCHCMD_H__
    00709
    00710
    00711
    00712
    00713

Top | Palm Developer Network © 2004-2008, Palm, Inc. All rights reserved. Generated on Fri Jun 13 10:06:53 2008 for Palm API Guide