|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CompatibilityImplemented only if 4.0 New Feature Set is present.
|
oldDBID | The local ID of the deleted database. This ID is no longer valid. |
cardNo | The number of the card on which the database resided. |
attributes | The deleted database's attributes. |
dbName | The name of the deleted database. |
creator | The creator ID of the deleted database. |
type | The type of the deleted database. |
Implemented only if 4.0 New Feature Set is present.
The sysNotifyDeleteProtectedEvent is broadcast when the Launcher attempts to delete a database that has the protected flag set. The Launcher broadcasts the notification and then attempts to delete the database again. Any third party application that deletes databases should broadcast this notification as well.
Register for this notification if you have a protected database but you still want to allow users to delete your application or other code resource if they choose. A notification handler should check the information in the notifyDetailsP struct to see if its database is the one being deleted. If so, it should respond to this notification to perform any necessary cleanup and to clear the protected flag. In this way, when the Launcher attempts to delete the database again, it will succeed. Note that if an application has multiple protected databases, this notification may be sent out more than once.
notifyDetailsP points to a SysNotifyDBInfoType structure.
typedef struct SysNotifyDBInfoTag { LocalID dbID; UInt16 cardNo; UInt16 attributes; Char dbName[dmDBNameLength]; UInt32 creator; UInt32 type; } SysNotifyDBInfoType;
dbID | The local ID of the database to be deleted. |
cardNo | The number of the card on which the database resides. |
attributes | The database's attributes. |
dbName | The name of the database to be deleted. |
creator | The creator ID of the database to be deleted. |
type | The type of the database to be deleted. |
Implemented only if 4.0 New Feature Set is present.
The sysNotifyDeviceUnlocked notification is broadcast by the Security application when the user unlocks the device. The notification is broadcast immediately after the device has finished unlocking.
If you display UI in response to the sysNotifyLateWakeupEvent notification, you should also register to receive the sysNotifyDeviceUnlocked notification. When a locked device receives the sysNotifyLateWakeupEvent, your UI should not be displayed if the device is waiting for the user to enter the password. The sysNotifyDeviceUnlocked notification is broadcast after the password is entered, which indicates that the user interface is ready.
Implemented only if 4.0 New Feature Set is present.
The sysNotifyDisplayChangeEvent is broadcast whenever the display mode changes. That is, either the color table has been set to use a specific palette using the WinPalette function or the bit depth has changed using the WinScreenMode function.
The notifyDetailsP field indicates how the bit depth changed. If the two values in the struct are equal, it means that the color palette has changed instead of the bit depth.
notifyDetailsP points to a SysNotifyDisplayChangeDetailsType structure.
typedef struct { UInt32 oldDepth; UInt32 newDepth; } SysNotifyDisplayChangeDetailsType;
oldDepth | The old bit depth. |
newDepth | The new bit depth. |
Implemented only if Notification Feature Set is present.
The sysNotifyEarlyWakeupEvent is broadcast during SysHandleEvent immediately after the system has finished sleeping. The screen may still be turned off, and the system may not fully wake up. It may simply handle an alarm or a battery charger event and go back to sleep. Most applications that need notification of a wakeup event will probably want to register for sysNotifyLateWakeupEvent instead.
Implemented only if Notification Feature Set is present.
The sysNotifyForgotPasswordEvent is broadcast after the user taps the Lost Password button in the Security application. The notification is sent after the user has confirmed that all private records should be deleted but before the deletion actually occurs.
Implemented only if Notification Feature Set is present.
The sysNotifyGotUsersAttention notification is broadcast when the Attention Manager has finished displaying or sounding its attention indicators (blinking, playing sounds, vibrating, and so on).
System extensions or shared libraries should register for this notification if they want to perform some extra effect or if they simply want to be informed of when the user's attention was received.
notifyDetailsP points to an AttnNotifyDetailsType structure.
typedef struct { AttnFlagsType flags; } AttnNotifyDetailsType;
flags | The attention indicators that were used to get the user's attention. See AttnFlagsType. |
Implemented only if 4.0 New Feature Set is present.
The sysNotifyHelperEvent is broadcast by applications to request a service from another application. For example, the Address Book application broadcasts this notification to request that the Dial application dial a phone number. For the sysNotifyHelperEvent, the notification client (that is, the application or shared library that registers for the notification) is called a helper.
The application that broadcasts this notification specifies one of the action codes listed in Table 36.1 in Chapter 36, "Helper API." These action codes request all helper applications to enumerate (list the services they perform), validate (ensure that the service will succeed), and execute (perform the action). The helper responds to the notification by returning the required data in the appropriate portion of the notifyDetailsP structure and by setting the handled field to true or false to indicate the success or failure of the action.
For more information on this notification, see the section "Helper Notifications" in the Palm OS Programmer's Companion, vol. I.
notifyDetailsP points to a HelperNotifyEventType structure.
Implemented only if 4.0 New Feature Set is present.
The sysNotifyLateWakeupEvent is broadcast during SysHandleEvent immediately after the device has finished waking up. This notification is sent at the late stage of wakeup, after the screen has been turned on. When this notification is broadcast, the system is guaranteed to fully wake up. Register for this notification if you need to perform startup tasks each time the system wakes up.
When the device receives this notification, it may be locked and waiting for the user to enter the password. If this is the case, you must wait for the user to unlock the device before you display a user interface. Therefore, if you intend to display a user interface when the device wakes up, you should make sure the device is not locked. If the device is locked, you should register for sysNotifyDeviceUnlocked notification and display your user interface when it is received. For example:
case sysNotifyLateWakeupEvent: if ((Boolean) PrefGetPreference(prefDeviceLocked)) { SysNotifyRegister(myCardNo, myDbID, sysNotifyDeviceUnlocked, NULL, sysNotifyNormalPriority, NULL); } else { HandleDeviceWakeup(); } case sysNotifyDeviceUnlocked: HandleDeviceWakeup();
Note that the sysNotifyDeviceUnlocked notification is only broadcast on Palm OS 4.0 and higher.
Implemented only if Notification Feature Set is present.
The sysNotifyLocaleChangedEvent is broadcast immediately after the system locale has changed. Currently, the user has the opportunity to change the locale only when the device first starts up and after a hard reset.
RAM-based applications and other code resources should obtain locale information by passing the prefLocale constant to PrefGetPreference. They should not register for this notification. This notification is used by the built-in applications, which respond to it by rebuilding their default databases to use the newly selected language and character set.
notifyDetailsP points to a SysNotifyLocaleChangedType structure.
typedef struct SysNotifyLocaleChangedTag { LmLocaleType oldLocale; LmLocaleType newLocale; } SysNotifyLocaleChangedType;
oldLocale | The old locale. See LmLocaleType. |
newLocale | The new locale. |
Implemented only if 4.0 New Feature Set is present.
The sysNotifyMenuCmdBarOpenEvent is broadcast during MenuHandleEvent when it is about to display the menu shortcut command bar.
Register for this notification if you are writing a system extension (such as a "hack" installed with the HackMaster program) that needs to add a button to the menu command bar or to suppress the menu command bar. To add a button, call MenuCmdBarAddButton. To suppress the command toolbar, set the handled field to true.
Applications that need to add their own buttons to the menu command bar should do so in response to a menuCmdBarOpenEvent. They should not register for this notification because an application should only add buttons if it is already the active application. The notification is sent after the event has been received, immediately before the command toolbar is displayed.
Implemented only if Notification Feature Set is present.
The sysNotifyNetLibIFMediaEvent is broadcast at the top of the event loop whenever the network interface makes the network connection active or inactive. The Network Panel uses this notification to decide whether the Connect button should be active.
Register for this notification if you need to know when the network connection is currently active.
notifyDetailsP contains a SysNotifyNetLibIFMediaType structure.
typedef struct SysNotifyNetLibIFMediaTag { NetLibIFMediaEventNotificationTypeEnum eType; UInt32 ifCreator; UInt16 ifInstance; } SysNotifyNetLibIFMediaType;
eType | One of the following values: |
netIFMediaUp | The network connection is active. This is usually sent after the network interface has displayed UI indicating that a connection attempt is in progress. |
netIFMediaDown | The network connection is inactive. This is usually sent after the network interface has brought the connection down because an inactivity timeout value was reached. |
ifCreator | Creator ID of the network interface |
ifInstance | Instance number of the network interface. |
Implemented only if 4.0 New Feature Set is present.
The sysNotifyResetFinishedEvent is broadcast immediately after the system has finished a reset.
Because the notification registry is cleared upon a reset, only internal system components use this notification. Applications that need to be informed of a system reset can respond to the sysAppLaunchCmdSystemReset launch code.
Implemented only if Notification Feature Set is present.
The sysNotifyRetryEnqueueKey notification is broadcast at the top of the event loop if the Attention Manager has attempted to post a virtual character to the key queue and failed because the queue is full. The notification signals that the Attention Manager is going to retry enqueuing the virtual character until it is successful.
Most applications do not need to register for this notification. It is used only by the Attention Manager to schedule retries of enqueuing the virtual character. When enqueueing a virtual character fails, the Attention Manager retries at the top of the event loop. It uses this notification to schedule retries so that they occur even if the user switches applications.
notifyDetailsP points to a WChar containing the virtual character to be enqueued.
Implemented only if 4.0 New Feature Set is present.
The sysNotifySleepNotifyEvent is broadcast during SysHandleEvent immediately before the system is put to sleep. After the broadcast is complete, the system is put to sleep.
Register for this notification if you have a small amount of cleanup that needs to be performed before the system goes to sleep. It is recommended that you not perform any sort of prolonged activity, such as displaying an alert panel that requests confirmation, in response to a sleep notification. If you do, the alert might be displayed long enough to trigger another auto-off event, which could be detrimental to other handlers of this notification.
If your code is in the middle of a lengthy computation and needs to defer sleep, it should register for the sysNotifySleepRequestEvent instead.
Implemented only if Notification Feature Set is present.
The sysNotifySleepRequestEvent is broadcast during SysHandleEvent processing when the system has decided to go to sleep.
Register for this notification if you need to delay the system from going to sleep while your code performs a lengthy operation, such as disconnecting from the network. The system checks the deferSleep value when each notification handler returns. If it is nonzero, it cancels the sleep event.
After you defer sleep, your code is free to finish what it was doing. When it is finished, you must allow the system to continue with the sleep event. To do so, create a keyDownEvent with the resumeSleepChr and the command key bit set (to signal that the character is virtual) and add it to the event queue. When the system receives this event, it will again broadcast the sysNotifySleepRequestEvent to all clients. If deferSleep is 0 after all clients return, then the system knows it is safe to go to sleep, and it broadcasts the sysNotifySleepNotifyEvent to all of its clients.
Note that you may receive this notification several times before the system goes to sleep because notification handlers can delay the system sleep and resume it later.
notifyDetailsP points to a SleepEventParamType structure.
typedef struct { UInt16 reason; UInt16 deferSleep; } SleepEventParamType;
reason | The reason the system is going to sleep. The possible values are: |
sysSleepAutoOff | The idle time limit has been reached. |
sysSleepPowerButton | The user pressed the power off button. |
sysSleepResumed | The sleep event was deferred by one of the notification handlers but has been resumed through the use of the resumeSleepChr. |
sysSleepUnknown | Unknown reason. |
deferSleep | Initially set to 0. If a notification handler wants to defer sleep, then it should increment this value. When deferSleep is greater than 0, the system waits before going to sleep. |
Implemented only if Notification Feature Set is present.
The sysNotifySyncFinishEvent is broadcast immediately after a HotSync operation has completed. Register for this notification if you need to perform post-processing after HotSync operations.
Implemented only if Notification Feature Set is present.
The sysNotifySyncStartEvent is broadcast immediately before a HotSync operation is begun. Register for this notification if you need to perform preprocessing before a HotSync operation.
Implemented only if Notification Feature Set is present.
The sysNotifyTimeChangeEvent notification is broadcast just after the system time has been changed using TimSetSeconds. Register for this notification if you need to know when the time has changed.
Implemented only if Notification Feature Set is present.
The sysNotifyVolumeMountedEvent is broadcast when a Virtual File System Manager volume is mounted. When a volume is mounted, the VFS Manager activates the start.prc application on the newly mounted volume and switches applications to the Launcher or to the start.prc application on that volume if it has a user interface.
Register for this notification if you need to know when a volume is mounted or if you want to prevent the default behavior of the VFS Manager.
To prevent the VFS Manager from activating the start.prc application, set the vfsHandledStartPrc bit in the handled field. To prevent the VFS Manager from switching applications, set the vfsHandledUIAppSwitch bit.
notifyDetailsP points to a VFSSlotMountParamType or VFSPOSEMountParamType structure.
Implemented only if 4.0 New Feature Set is present.
The sysNotifyVolumeUnmountedEvent is broadcast when a Virtual File System Manager volume is unmounted. Register for this notification if you need to know when a volume is unmounted.
notifyDetailsP points to a UInt16 containing the volume reference number.
Implemented only if 4.0 New Feature Set is present.
|