{{div_begin}} [[← 2 章に戻る|Palm OS Programmer's API Reference/2]] [[↑トップへ|Palm OS Programmer's API Reference]] [[4 章に進む →|Palm OS Programmer's API Reference/4]] {{div_end}} {{div_begin style="margin-bottom:-10px"}} !!!3 通知 {{div_end}} {{div_begin "style='position:absolute;right:0px;font-size:70%;margin-right:15px;margin-top:15px;width:250px;'"}} *{{goto Notification Data Structures,通知データ構造体}} **{{goto SysNotifyParamType,SysNotifyParamType}} *{{goto Notification Reference,通知リファレンス}} **{{goto cncNotifyProfileEvent,cncNotifyProfileEvent}} **{{goto kTelTelephonyNotification,kTelTelephonyNotification}} **{{goto Socket Notification,ソケット通知}} **{{goto sysExternalConnectorAttachEvent,sysExternalConnectorAttachEvent}} **{{goto sysExternalConnectorDetachEvent,sysExternalConnectorDetachEvent}} **{{goto sysNotifyAntennaRaisedEvent,sysNotifyAntennaRaisedEvent}} **{{goto sysNotifyAppLaunchingEvent,sysNotifyAppLaunchingEvent}} **{{goto sysNotifyAppQuittingEvent,sysNotifyAppQuittingEvent}} **{{goto sysNotifyCardInsertedEvent,sysNotifyCardInsertedEvent}} **{{goto sysNotifyCardRemovedEvent,sysNotifyCardRemovedEvent}} **{{goto sysNotifyDBCreatedEvent,sysNotifyDBCreatedEvent}} **{{goto sysNotifyDBChangedEvent,sysNotifyDBChangedEvent}} **{{goto sysNotifyDBDeletedEvent,sysNotifyDBDeletedEvent}} **{{goto sysNotifyDBDirtyEvent,sysNotifyDBDirtyEvent}} **{{goto sysNotifyDeleteProtectedEvent,sysNotifyDeleteProtectedEvent}} **{{goto sysNotifyDeviceUnlocked,sysNotifyDeviceUnlocked}} **{{goto sysNotifyDisplayChangeEvent,sysNotifyDisplayChangeEvent}} **{{goto sysNotifyDisplayResizedEvent,sysNotifyDisplayResizedEvent}} **{{goto sysNotifyEarlyWakeupEvent,sysNotifyEarlyWakeupEvent}} **{{goto sysNotifyEventDequeuedEvent,sysNotifyEventDequeuedEvent}} **{{goto sysNotifyForgotPasswordEvent,sysNotifyForgotPasswordEvent}} **{{goto sysNotifyGotUsersAttention,sysNotifyGotUsersAttention}} **{{goto sysNotifyGsiDrawIndicator,sysNotifyGsiDrawIndicator}} **{{goto sysNotifyHelperEvent,sysNotifyHelperEvent}} **{{goto sysNotifyIdleTimeEvent,sysNotifyIdleTimeEvent}} **{{goto sysNotifyInputAreaDrawingEvent,sysNotifyInputAreaDrawingEvent}} **{{goto sysNotifyInputAreaPendownEvent,sysNotifyInputAreaPendownEvent}} **{{goto sysNotifyInsPtEnableEvent,sysNotifyInsPtEnableEvent}} **{{goto sysNotifyKeyboardDialogEvent,sysNotifyKeyboardDialogEvent}} **{{goto sysNotifyLateWakeupEvent,sysNotifyLateWakeupEvent}} **{{goto sysNotifyLocaleChangedEvent,sysNotifyLocaleChangedEvent}} **{{goto sysNotifyMenuCmdBarOpenEvent,sysNotifyMenuCmdBarOpenEvent}} **{{goto sysNotifyNetLibIFMediaEvent,sysNotifyNetLibIFMediaEvent}} **{{goto sysNotifyProcessPenStrokeEvent,sysNotifyProcessPenStrokeEvent}} **{{goto sysNotifyResetFinishedEvent,sysNotifyResetFinishedEvent}} **{{goto sysNotifyRetryEnqueueKey,sysNotifyRetryEnqueueKey}} **{{goto sysNotifySelectDay,sysNotifySelectDay}} **{{goto sysNotifySleepNotifyEvent,sysNotifySleepNotifyEvent}} **{{goto sysNotifySleepRequestEvent,sysNotifySleepRequestEvent}} **{{goto sysNotifySyncFinishEvent,sysNotifySyncFinishEvent}} **{{goto sysNotifySyncStartEvent,sysNotifySyncStartEvent}} **{{goto sysNotifyTimeChangeEvent,sysNotifyTimeChangeEvent}} **{{goto sysNotifyVirtualCharHandlingEvent,sysNotifyVirtualCharHandlingEvent}} **{{goto sysNotifyVolumeMountedEvent,sysNotifyVolumeMountedEvent}} **{{goto sysNotifyVolumeUnmountedEvent,sysNotifyVolumeUnmountedEvent}} {{div_end}} {{div_begin "style='position:relative;padding:0px;padding-right:5px;padding-left:10px;margin-right:250px;margin-top:20px;width:auto;border-right-style:dotted;border-right-width:2px;border-right-color:silver;'"}} この章では、ヘッダ ファイル {{span style='color:blue;font-family:monospace;',NotifyMgr.h}} で宣言されている通知についての詳細な情報を提供します。通知は、アプリケーション、共有ライブラリ、システム 拡張、それにある特定のシステム レベルまたはアプリケーション レベルのイベントのその他のコード リソースに情報を伝えるためにブロードキャストされます。 通知はアプリケーション起動コードに似ています。しかしながら、起動コードとは以下の点が異なります: *システムは通知を利害関係者にだけブロードキャストします。通知を受け取るために登録を行うには {{goto SysNotifyRegister,SysNotifyRegister()|Palm OS Programmer's API Reference/43}} を使用します。 *通知は非アプリケーションに送ることができます。 通知の受信とハンドルについての更なる情報は、本書の [[「通知マネージャ」|Palm OS Programmer's API Reference/43]] と ''Palm OS Programmer's Companion, vol. I'' の [「ノティフィケーション」|http://ppl.palmwareinfo.com/index.cgi?page=Palm+OS+Programmer%27s+Companion+Volume+I%2F2%2D6] を参照してください。 {{anchor Table 3.1}} '''表 3.1 通知定数''' ,定数,説明 ,"{{goto cncNotifyProfileEvent,cncNotifyProfileEvent}}",接続パネルによって使用されている接続プロファイルが変更されました。 ,"{{goto kTelTelephonyNotification,kTelTelephonyNotification}}",電話イベントが起こりました。 ,"{{goto Socket Notification,ソケット通知}}",ネットワーク ソケットの変更が起こりました。 ,"{{goto sysExternalConnectorAttachEvent,sysExternalConnectorAttachEvent}}",デバイスが外部コネクタに取り付けられました。 ,"{{goto sysExternalConnectorDetachEvent,sysExternalConnectorDetachEvent}}",デバイスが外部コネクタから取り外されました。 ,"{{goto sysNotifyAntennaRaisedEvent,sysNotifyAntennaRaisedEvent}}",Palm VII シリーズ デバイスでアンテナが立てられました。 ,"{{goto sysNotifyAppLaunchingEvent,sysNotifyAppLaunchingEvent}}",アプリケーションが起動されようとしています。 ,"{{goto sysNotifyAppQuittingEvent,sysNotifyAppQuittingEvent}}",アプリケーションが終了しました。 ,"{{goto sysNotifyCardInsertedEvent,sysNotifyCardInsertedEvent}}",拡張カードが拡張スロットに挿入されました。 ,"{{goto sysNotifyCardRemovedEvent,sysNotifyCardRemovedEvent}}",拡張カードが拡張スロットから取り外されました。 ,"{{goto sysNotifyDBCreatedEvent,sysNotifyDBCreatedEvent}}",データベースが作成されました。 ,"{{goto sysNotifyDBChangedEvent,sysNotifyDBChangedEvent}}","{{goto DmSetDatabaseInfo,DmSetDatabaseInfo()|Palm OS Programmer's API Reference/30-2}} などでデータベース情報がデータベースにセットされました。" ,"{{goto sysNotifyDBDeletedEvent,sysNotifyDBDeletedEvent}}",データベースが削除されました。 ,"{{goto sysNotifyDBDirtyEvent,sysNotifyDBDirtyEvent}}",データベースが書き込みのため、または、他の何らかの変更可能な方法でオープンされました。 ,"{{goto sysNotifyDeleteProtectedEvent,sysNotifyDeleteProtectedEvent}}",ランチャはプロテクトされているデータベースを削除しようとしました。 ,"{{goto sysNotifyDeviceUnlocked,sysNotifyDeviceUnlocked}}",ユーザがデバイスのロックを解除しました。 ,"{{goto sysNotifyDisplayChangeEvent,sysNotifyDisplayChangeEvent}}",カラー テーブルまたはディスプレイのビット深度が変更されました。 ,"{{goto sysNotifyDisplayResizedEvent,sysNotifyDisplayResizedEvent}}",ダイナミック入力エリアがオープンまたはクローズされました。 ,"{{goto sysNotifyEarlyWakeupEvent,sysNotifyEarlyWakeupEvent}}",システムがウェイク アップを開始しています。 ,"{{goto sysNotifyEventDequeuedEvent,sysNotifyEventDequeuedEvent}}","{{span style='color:blue;font-family:monospace;',EvtGetEvent}} でイベントがイベント キューから削除されました。" ,"{{goto sysNotifyForgotPasswordEvent,sysNotifyForgotPasswordEvent}}",ユーザがセキュリティ アプリケーションでロスト パスワード ボタン (訳者: パスワードを忘れたときに押すボタンと思われる) をタップしました。 ,"{{goto sysNotifyGotUsersAttention,sysNotifyGotUsersAttention}}",アテンション マネージャはイベントについてユーザに知らせました。 ,"{{goto sysNotifyGsiDrawIndicator,sysNotifyGsiDrawIndicator}}",システムはシフト インジケータを描画しようとしています。 ,"{{goto sysNotifyHelperEvent,sysNotifyHelperEvent}}",アプリケーションがある特定のサービスが実行されるよう要求しました。 ,"{{goto sysNotifyIdleTimeEvent,sysNotifyIdleTimeEvent}}",システムはアイドル状態で、休止状態になろうとしています。 ,"{{goto sysNotifyInputAreaDrawingEvent,sysNotifyInputAreaDrawingEvent}}",システムはダイナミック入力エリアを描画しようとしています。 ,"{{goto sysNotifyInputAreaPendownEvent,sysNotifyInputAreaPendownEvent}}","システムはダイナミック入力エリアに対する {{span style='color:blue;font-family:monospace;',penDownEvent}} を発信しようとしています。" ,"{{goto sysNotifyInsPtEnableEvent,sysNotifyInsPtEnableEvent}}",挿入ポイントは使用可能または使用不可の状態になろうとしています。 ,"{{span style='color:blue;font-family:monospace;',sysNotifyIrDASniffEvent}}",使用されません。 ,"{{goto sysNotifyKeyboardDialogEvent,sysNotifyKeyboardDialogEvent}}",キーボード ダイアログが表示されようとしています。 ,"{{goto sysNotifyLateWakeupEvent,sysNotifyLateWakeupEvent}}",システムはウェイク アップを終了しました。 ,"{{goto sysNotifyLocaleChangedEvent,sysNotifyLocaleChangedEvent}}",システム ロケールが変更されました。 ,"{{goto sysNotifyMenuCmdBarOpenEvent,sysNotifyMenuCmdBarOpenEvent}}",システムはメニュー コマンド ツールバーを表示しようとしています。 ,"{{goto sysNotifyNetLibIFMediaEvent,sysNotifyNetLibIFMediaEvent}}",システムはネットワークに接続された、またはネットワークとの接続を解除されました。 ,"{{span style='color:blue;font-family:monospace;',sysNotifyPhoneEvent}}",将来使用するために予約されています。 ,"{{goto sysNotifyPOSEMountEvent,sysNotifyPOSEMountEvent}}",システムのみが使用します。 ,"{{goto sysNotifyProcessPenStrokeEvent,sysNotifyProcessPenStrokeEvent}}",ユーザはデジタイザの一部であるシルクスクリーン上でペン入力を行いました。 ,"{{goto sysNotifyResetFinishedEvent,sysNotifyResetFinishedEvent}}",システムはリセットを完了しました。 ,"{{goto sysNotifyRetryEnqueueKey,sysNotifyRetryEnqueueKey}}",アテンション マネージャは仮想文字をキー キューに送ることに失敗しました。 ,"{{goto sysNotifySelectDay,sysNotifySelectDay}}",システムは、ユーザがカレンダーの中のある特定の日付を選択するよう要求する必要があります。 ,"{{goto sysNotifySleepNotifyEvent,sysNotifySleepNotifyEvent}}",システムはスリープ状態に入ろうとしています。 ,"{{goto sysNotifySleepRequestEvent,sysNotifySleepRequestEvent}}",システムはスリープ状態に入ることを決定しました。 ,"{{goto sysNotifySyncFinishEvent,sysNotifySyncFinishEvent}}",HotSync が完了しました。 ,"{{goto sysNotifySyncStartEvent,sysNotifySyncStartEvent}}",HotSync が開始されようとしています。 ,"{{goto sysNotifyTimeChangeEvent,sysNotifyTimeChangeEvent}}",システム タイムが変更されました。 ,"{{goto sysNotifyVirtualCharHandlingEvent,sysNotifyVirtualCharHandlingEvent}}",仮想文字がハンドルされているところです。 ,"{{goto sysNotifyVolumeMountedEvent,sysNotifyVolumeMountedEvent}}",ファイル システムがマウントされました。 ,"{{goto sysNotifyVolumeUnmountedEvent,sysNotifyVolumeUnmountedEvent}}",ファイル システムがアンマウントされました。 !!{{anchor Notification Data Structures}}通知データ構造体 {{goto top,^TOP^}} !{{anchor SysNotifyParamType}}SysNotifyParamType Typedef {{goto top,^TOP^}} '''目的''' {{span style='color:blue;font-family:monospace;',SysNotifyParamType}} 構造体はある通知に関連付けされるすべてのデータを保持します。この構造体は {{goto sysAppLaunchCmdNotify,sysAppLaunchCmdNotify|Palm OS Programmer's API Reference/1}} 起動コードに対してパラメータ ブロックとして渡されたり、通知コールバック関数へのパラメータとして渡されたりします。すべての通知はいくつかの共通データを持ちます。さらに、たいていの通知はその通知に特有のデータを持ちます。特有のデータは {{span style='color:blue;font-family:monospace;',notifyDetailsP}} フィールドによって指されます。 各通知で共通のデータは以下の構造体宣言で説明されています。{{goto Notification Reference,通知リファレンス}} では、通知の各タイプに関連付けられる重要なデータについての詳細を説明します。 '''Prototype''' typedef struct SysNotifyParamType { UInt32 notifyType; UInt32 broadcaster; void *notifyDetailsP; void *userDataP; Boolean handled; UInt8 reserved2; } SysNotifyParamType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',notifyType}} **起こったイベントのタイプ。{{goto Notification Reference,通知リファレンス}} を参照してください。 *{{span style='color:blue;font-family:monospace;',broadcaster}} **通知をブロードキャストするアプリケーションのクリエイタ ID、または、システムがインベントをブロード伽するする場合は {{span style='color:blue;font-family:monospace;',sysNotifyBroadcasterCode}}。 *{{span style='color:blue;font-family:monospace;',notifyDetailsP}} **この通知に特有のデータへのポインタ。 *{{span style='color:blue;font-family:monospace;',userDataP}} **あなたの通知ハンドラが必要とするカスタム データ。あなたがこのデータを作成し、それを {{goto SysNotifyRegister,SysNotifyRegister()|Palm OS Programmer's API Reference/43}} に渡します。 *{{span style='color:blue;font-family:monospace;',handled}} **通知がハンドルされた場合は {{span style='color:blue;font-family:monospace;',true}} にセットし、そうでない場合は {{span style='color:blue;font-family:monospace;',false}} にセットします。いくつかのケースでは、{{span style='color:blue;font-family:monospace;',handled}} は、通知ハンドラがある特定の条件が true であることを示すためにしようすることができるビット フィールドとして扱われます。 *{{span style='color:blue;font-family:monospace;',reserved2}} **将来使用するために予約されています。 !!{{anchor Notification Reference}}通知リファレンス {{goto top,^TOP^}} !{{anchor cncNotifyProfileEvent}}cncNotifyProfileEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',cncNotifyProfileEvent}} は、接続プロファイルが作成、変更、削除されたとき、接続プロファイル リストを更新するためにリクエストが作成されたあとにブロードキャストされます。 {{span style='color:blue;font-family:monospace;',notifyDetailsP}} フィールドは通知ハンドラに発生した変更のタイプについて知らせます。あなたのアプリケーションが現在の状態を把握し続けているべきであるそれ自身の接続プロファイルを維持している場合、または、あなたのアプリケーションが接続パネルがリストを維持するのを助けるべきである場合、{{span style='color:blue;font-family:monospace;',cncNotifyProfileEvent}} に登録を行います。 '''cncNotifyProfileEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',CncProfileNotifyDetailsType}} 構造体を指します。 '''Prototype''' typedef struct _CncProfileNotifyDetailsTag { UInt16 version; UInt32 profileID; UInt16 deviceKind; UInt16 request; } CncProfileNotifyDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',version}} **この構造体の現在のバージョン。現在のバージョンが何なのかを調べるには {{span style='color:blue;font-family:monospace;',kCncProfileNotifyCurrentVersion}} 定数を使用します。 *{{span style='color:blue;font-family:monospace;',profileID}} **変更された接続プロファイルの ID。 *{{span style='color:blue;font-family:monospace;',deviceKind}} **プロファイルのデバイスの種類。これは以下の定数のうちのどれかになります: {{div_begin style="margin-left:5em;"}} *{{span style='color:blue;font-family:monospace;',kCncDeviceKindSerial}} **シリアル接続プロファイル。 *{{span style='color:blue;font-family:monospace;',kCncDeviceKindModem}} **モデム プロファイル。 *{{span style='color:blue;font-family:monospace;',kCncDeviceKindPhone}} **電話プロファイル。 *{{span style='color:blue;font-family:monospace;',kCncDeviceKindLocalNetwork}} **LAN プロファイル。 {{div_end}} *{{span style='color:blue;font-family:monospace;',request}} **実行されたアクション。これは以下の定数のどれかになります: {{div_begin style="margin-left:5em;"}} *{{span style='color:blue;font-family:monospace;',kCncNotifyCreateRequest}} **プロファイルが作成されました。 *{{span style='color:blue;font-family:monospace;',kCncNotifyDeleteRequest}} **プロファイルは削除されるところです。 *{{span style='color:blue;font-family:monospace;',kCncNotifyModifyRequest}} **プロファイルは変更されました。 *{{span style='color:blue;font-family:monospace;',kCncNotifyUpdateListRequest}} **HotSync またはシステム リセットされました。通知ハンドラは接続パネルのリストを更新すべきです。さらに、プロファイルが作成または変更されている場合、{{span style='color:blue;font-family:monospace;',request}} フィールドは現在のプロファイルがどのようにセットされるかを示すフラグを含みます: *{{span style='color:blue;font-family:monospace;',kCncBecomeCurrentModifier}} *新しいプロファイルは現在のプロファイルとされるべきです。 *{{span style='color:blue;font-family:monospace;',kCncNotifyAlertUserModifier}} **ユーザに現在のプロファイルをセットするか問い合わせます。 {{div_end}} '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor kTelTelephonyNotification}}kTelTelephonyNotification {{goto top,^TOP^}} '''目的''' {{span style='color:blue;font-family:monospace;',kTelTelephonyNotification}} は、Palm OS が電話から SMS メッセージが届いているまたは電話がかかってきているなどの電話からのイベントを受け取ったときにブロードキャストされます。 '''kTelTelephonyNotification 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',TelNotificationType}} 構造体を指します。 '''Prototype''' typedef struct _TelNotificationType { UInt32 notificationData; UInt32 notificationData2; UInt32 timeStamp; UInt16 notificationId; UInt8 priority; } TelNotificationType '''フィールド''' *{{span style='color:blue;font-family:monospace;',notificationData}} **{{span style='color:blue;font-family:monospace;',notificationId}} 特有のデータ。 *{{span style='color:blue;font-family:monospace;',notificationData2}} **{{span style='color:blue;font-family:monospace;',notificationId}} 特有のデータ。 *{{span style='color:blue;font-family:monospace;',timeStamp}} **イベントが起こった時刻。1904 年 1 月 1 日午前 12:00 からの秒数で表されます。 *{{span style='color:blue;font-family:monospace;',notificationId}} **起こったイベントについて説明する {{goto Notification Identifiers Enum,「通知指示子列挙体」|Palm OS Programmer's API Reference/73}} で説明されている定数のうちの 1 つです。 *{{span style='color:blue;font-family:monospace;',priority}} **{{goto Notification Priorities,「通知優先順位」|Palm OS Programmer's API Reference/73}} で説明されている定数のうちの 1 つです。 !{{anchor Socket Notification}}ソケット通知 {{goto top,^TOP^}} ソケット通知は、ネットワーク ソケットの状態が変更されたときにブロードキャストされます - 例えば、ソケットがクローズされる、または、ソケットが TCP データを受け取るです。この通知はこの章で説明されている他の通知とは大きく異なります: ソケット通知を示す単一の定数値はありません。その代わり、各アプリケーションはソケット通知を受け取るための固有の値を持たなくてはなりません。あなたのアプリケーションはこの固有の定数を {{span style='color:blue;font-family:monospace;',notifyType}} パラメータとして {{goto SysNotifyRegister,SysNotifyRegister()|Palm OS Programmer's API Reference/43}} に渡さなければなりません。 ソケット通知はネット ライブラリによってソケットに関する注意を配達するために使用されます。通常の通知登録プロセス以上のことがあります。詳細は、''Palm OS Programmer's Companion, vol. II'' の {{goto p27,「ソケット通知」|http://ppl.palmwareinfo.com/index.cgi?page=Palm+OS+Programmer%27s+Companion+Volume+II%2F7%2D1}} を参照してください。 {{span style='color:blue;font-family:monospace;',notifyDetailsP}} フィールドは通知ハンドラに変更されたソケットが何なのか、その変更の性質を知らせます。 '''ソケット通知特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyNetSocketType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyNetSocketType { NetSocketRef socketRef; UInt32 condition; } SysNotifyNetSocketType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',socketRef}} **状態変更により通知を引き起こしたソケットを表す整数。 *{{span style='color:blue;font-family:monospace;',condition}} **通知を引き起こしたソケットの状態を表すビットフィールド。{{goto Socket Notice Trigger Conditions,「ソケット通知トリガ状態」|Palm OS Programmer's API Reference/66}} はこのフィールドのビットのために定義されている定数です。 '''互換性''' {{goto 5.4 New Feature Set,5.4 New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysExternalConnectorAttachEvent}}sysExternalConnectorAttachEvent {{goto top,^TOP^}} '''目的''' {{span style='color:blue;font-family:monospace;',sysExternalConnectorAttachEvent}} は、USB クレドル、RS-232 クレドルまたは周辺装置、電源ケーブル、モデムがユニバーサル コネクタに接続されたときブロードキャストされます。この通知はユニバーサル コネクタを持つデバイスでのみブロードキャストされます。 '''sysExternalConnectorAttachEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} フィールドは接続されたデバイスのタイプを示す {{span style='color:blue;font-family:monospace;',UInt16}} を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysExternalConnectorDetachEvent}}sysExternalConnectorDetachEvent {{goto top,^TOP^}} '''目的''' {{span style='color:blue;font-family:monospace;',sysExternalConnectorDetachEvent}} は、USB クレドル、RS-232 クレドルまたは周辺装置、電源ケーブル、モデムがユニバーサル コネクタから取り外されたときブロードキャストされます。この通知はユニバーサル コネクタを持つデバイスでのみブロードキャストされます。 '''sysExternalConnectorDetachEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は取り外されたデバイスのタイプを示す {{span style='color:blue;font-family:monospace;',UInt16}} を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyAntennaRaisedEvent}}sysNotifyAntennaRaisedEvent {{goto top,^TOP^}} '''目的''' {{span style='color:blue;font-family:monospace;',sysNotifyAntennaRaisedEvent}} は、Palm VII シリーズ デバイスでアンテナが立てられたときに {{goto SysHandleEvent,SysHandleEvent()|Palm OS Programmer's API Reference/54}} によってブロードキャストされます。 あなたがアンテナ キー ダウン イベントをハンドルすることを望む場合にこの通知のための登録を行います。あなたのハンドラの後にキー ダウン イベントをハンドルするコードが無いということを保証するには、{{goto SysNotifyParamType,SysNotifyParamType}} 構造体の {{span style='color:blue;font-family:monospace;',handled}} パラメータに {{span style='color:blue;font-family:monospace;',true}} をセットしてください。 '''sysNotifyAntennaRaisedEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyAppLaunchingEvent}}sysNotifyAppLaunchingEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyAppLaunchingEvent}} は、{{span style='color:blue;font-family:monospace;',sysAppLaunchCmdNormalLaunch}} でアプリケーションが起動される前にブロードキャストされます。 '''sysNotifyAppLaunchingEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyAppLaunchOrQuitType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyAppLaunchOrQuitTag { UInt32 version; UInt32 dbID; UInt16 cardNo; } SysNotifyAppLaunchOrQuitType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',version}} **この構造体の現在のバージョン。現在のバージョンは 0 です。 *{{span style='color:blue;font-family:monospace;',dbID}} **アプリケーションのローカル ID。 *{{span style='color:blue;font-family:monospace;',cardNo}} **アプリケーションが存在しているカードの番号。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyAppQuittingEvent}}sysNotifyAppQuittingEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyAppQuittingEvent}} は {{span style='color:blue;font-family:monospace;',sysAppLaunchCmdNormalLaunch}} で起動されたアプリケーションが終了したすぐ後にブロードキャストされます。 '''sysNotifyAppQuittingEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyAppLaunchOrQuitType}} 構造体を指します。この構造体についての説明は、{{goto sysNotifyAppLaunchingEvent,sysNotifyAppLaunchingEvent}} の説明を参照してください。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyCardInsertedEvent}}sysNotifyCardInsertedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyCardInsertedEvent}} は、拡張マネージャ カードがスロットに挿入されたときにブロードキャストされます。新しいカードが挿入されたとき、拡張マネージャはそのカードのボリュームをマウントしようと試みて、試みが完了したところでサウンドを鳴らします (成功または失敗を示します)。 たいていのアプリケーションはこの通知の代わりに {{goto sysNotifyVolumeMountedEvent,sysNotifyVolumeMountedEvent}} のために登録することを望みます。あなたがカードが挿入されたことを知る必要がある場合、または、あなたが拡張マネージャがこの通知のデフォルトのハンドリングを実行するのを防ぐことを望む場合、{{span style='color:blue;font-family:monospace;',sysNotifyCardInsertedEvent}} のための登録を行います。 拡張マネージャがボリュームをマウントするのを防ぐには、{{span style='color:blue;font-family:monospace;',handled}} フィールドの {{span style='color:blue;font-family:monospace;',expHandledVolume}} ビットをセットします。拡張マネージャがサウンドを鳴らすのを防ぐには、{{span style='color:blue;font-family:monospace;',handled}} フィールドの {{span style='color:blue;font-family:monospace;',expHandledSound}} ビットをセットします。例えば以下のように: cmdPBP->handled |= expHandledSound; '''sysNotifyCardInsertedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はスロット参照番号を保持している {{span style='color:blue;font-family:monospace;',UInt16}} を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyCardRemovedEvent}}sysNotifyCardRemovedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyCardRemovedEvent}} は、拡張マネージャ カードがスロットから取り外されたときにブロードキャストされます。カードが取り外されたとき、拡張マネージャはグッバイ サウンドを鳴らしてボリュームをアンマウントしようと試みることでこの通知に応答します。 たいていのアプリケーションはこの通知の代わりに {{goto sysNotifyVolumeUnmountedEvent,sysNotifyVolumeUnmountedEvent}} のために登録することを望みます。あなたがカードが取り外されたことを知る必要がある場合、または、あなたが拡張マネージャがこの通知のデフォルトのハンドリングを実行するのを防ぐことを望む場合、{{span style='color:blue;font-family:monospace;',sysNotifyCardRemovedEvent}} のための登録を行います。 拡張マネージャがボリュームをアンマウントするのを防ぐには、{{span style='color:blue;font-family:monospace;',handled}} フィールドの {{span style='color:blue;font-family:monospace;',expHandledVolume}} ビットをセットします。拡張マネージャがサウンドを鳴らすのを防ぐには、{{span style='color:blue;font-family:monospace;',handled}} フィールドの {{span style='color:blue;font-family:monospace;',expHandledSound}} ビットをセットします。例えば以下のように: cmdPBP->handled |= expHandledSound; '''sysNotifyCardRemovedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はスロット参照番号を保持している {{span style='color:blue;font-family:monospace;',UInt16}} を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDBCreatedEvent}}sysNotifyDBCreatedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDBCreatedEvent}} は、{{goto DmCreateDatabase,DmCreateDatabase()|Palm OS Programmer's API Reference/30-1}} でデータベースが作成された後のいつかにブロードキャストされます。 あなたが新しいデータベースが作成されたときに更新される必要のある内部のデータベース リストを維持している場合、この通知のための登録を行います。 ::重要 :::{{span style='color:blue;font-family:monospace;',sysNotifyDB...Event}} 通知は延期される可能性のある通知です。そのため、例えば {{span style='color:blue;font-family:monospace;',EvtGetEvent}} が呼び出される前にあなたのアプリケーションがデータベースを作成し、それを書き込みのためにオープンし、そのデータベースをリネームした場合、その 3 つの操作に対応する通知は一緒に発せられます。この場合、データベースはすでにリネームされているため、{{span style='color:blue;font-family:monospace;',sysNotifyDBDirtyEvent}} ハンドラがそのデータベースをオープンしようとしても失敗します。あなたの通知ハンドラを作成しているときは、延期される可能性のある通知の影響を気を配る必要があります。 '''sysNotifyDBCreatedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDBCreatedType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyDBCreatedTag { Char dbName[dmDBNameLength]; UInt32 creator; UInt32 type; LocalID newDBID; UInt16 cardNo; Boolean resDB; UInt8 padding; } SysNotifyDBCreatedType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',dbName}} **データベース名。 *{{span style='color:blue;font-family:monospace;',creator}} **データベース クリエイタ ID。 *{{span style='color:blue;font-family:monospace;',type}} **データベース タイプ。 *{{span style='color:blue;font-family:monospace;',newDBID}} **新たに作成されたデータベースのローカル ID。 *{{span style='color:blue;font-family:monospace;',cardNo}} **データベースが存在しているカードの番号。 *{{span style='color:blue;font-family:monospace;',resDB}} **データベースがリソース データベースの場合、{{span style='color:blue;font-family:monospace;',true}} です。僧でない場合、{{span style='color:blue;font-family:monospace;',false}} です。 *{{span style='color:blue;font-family:monospace;',padding}} **構造体のパディング バイト。 '''互換性''' {{goto 5.0 New Feature Set,5.0 New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDBChangedEvent}}sysNotifyDBChangedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDBChangedEvent}} は、{{goto DmSetDdatabaseInfo,DmSetDatabaseInfo()|Palm OS Programmer's API Reference/30-2}} でデータベース情報がセットされた後のいつかにブロードキャストされます。 あなたがデータベース情報が変更されたときに更新される必要のある内部のデータベース リストを維持している場合、この通知のための登録を行います。 ::重要 :::{{span style='color:blue;font-family:monospace;',sysNotifyDB...Event}} 通知は延期される可能性のある通知です。そのため、例えば {{span style='color:blue;font-family:monospace;',EvtGetEvent}} が呼び出される前にあなたのアプリケーションがデータベースを作成し、それを書き込みのためにオープンし、そのデータベースをリネームした場合、その 3 つの操作に対応する通知は一緒に発せられます。この場合、データベースはすでにリネームされているため、{{span style='color:blue;font-family:monospace;',sysNotifyDBDirtyEvent}} ハンドラがそのデータベースをオープンしようとしても失敗します。あなたの通知ハンドラを作成しているときは、延期される可能性のある通知の影響を気を配る必要があります。 '''sysNotifyDBChangedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDBChangedType}} 構造体を指します。この構造体の {{span style='color:blue;font-family:monospace;',fields}} の内容はデータベースの何について変更が行われたのか、それゆえに他の構造体フィールドのどれが有効なデータを保持しているのかを示します。 '''Prototype''' typedef struct SysNotifyDBChangedTag { Char dbName[dmDBNameLength]; LocalID dbID; UInt32 creator; UInt32 type; UInt32 crDate; UInt32 modDate; UInt32 bckUpDate; UInt32 modNum; LocalID appInfoID; LocalID sortInfoID; UInt16 attributes; UInt16 cardNo; UInt16 version; UInt16 fields; Char oldName[dmDBNameLength]; UInt32 oldCreator; UInt32 oldType; UInt16 oldAttributes; UInt16 padding; } SysNotifyDBChangedType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',dbName}} **データベースの新しい名前。 *{{span style='color:blue;font-family:monospace;',dbID}} **データベース ID。 *{{span style='color:blue;font-family:monospace;',creator}} **新しいデータベース クリエイタ ID。 *{{span style='color:blue;font-family:monospace;',type}} **新しいデータベース タイプ。 *{{span style='color:blue;font-family:monospace;',crDate}} **新しいデータベース作成日付。 *{{span style='color:blue;font-family:monospace;',modDate}} **新しいデータベース変更日付。 *{{span style='color:blue;font-family:monospace;',bckUpDate}} **新しいデータベース バックアップ日付。 *{{span style='color:blue;font-family:monospace;',modNum}} **新しいデータベース変更番号。 *{{span style='color:blue;font-family:monospace;',appInfoID}} **新しいデータベース アプリケーション情報ブロック。 *{{span style='color:blue;font-family:monospace;',sortInfoID}} **新しいデータベース ソート情報ブロック。 *{{span style='color:blue;font-family:monospace;',attributes}} **新しいデータベース属性。 *{{span style='color:blue;font-family:monospace;',cardNo}} **データベース存在しているカードの番号。 *{{span style='color:blue;font-family:monospace;',version}} **新しいデータベース バージョン。 *{{span style='color:blue;font-family:monospace;',fields}} **データベースの何について変更されたのか、それゆえ上記のフィールドのどれがセットされたのかを示すフラグ。{{span style='color:blue;font-family:monospace;',fields}} のビットを定義する定数は以下の通りです: ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetName = 0x1}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetCreator = 0x2}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetType = 0x4}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetCrDate = 0x8}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetModDate = 0x10}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetBckUpDate = 0x20}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetModNum = 0x40}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetAppInfo = 0x80}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetSortInfo = 0x100}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetAttributes = 0x200}} ***{{span style='color:blue;font-family:monospace;',DBChangedFieldSetVersion = 0x400}} *{{span style='color:blue;font-family:monospace;',oldName}} **{{span style='color:blue;font-family:monospace;',DmSetDatabaseInfo}} が呼び出される前のデータベースの名前。 *{{span style='color:blue;font-family:monospace;',oldCreator}} **{{span style='color:blue;font-family:monospace;',DmSetDatabaseInfo}} が呼び出される前のデータベース クリエイタ ID。 *{{span style='color:blue;font-family:monospace;',oldType}} **{{span style='color:blue;font-family:monospace;',DmSetDatabaseInfo}} が呼び出される前のデータベース タイプ。 *{{span style='color:blue;font-family:monospace;',oldAttributes}} **{{span style='color:blue;font-family:monospace;',DmSetDatabaseInfo}} が呼び出される前のデータベース属性。 *{{span style='color:blue;font-family:monospace;',padding}} **構造体のパディング バイト。 '''互換性''' {{goto 5.0 New Feature Set,5.0 New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDBDeletedEvent}}sysNotifyDBDeletedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDBDeletedEvent}} は、デバイスからデータベースが削除された後のいつかにブロードキャストされます。 あなたがデータベースの削除時に更新される必要のある内部のデータベース リストを維持している場合、この通知のための登録を行います。例えば、アテンション マネージャと接続マネージャは内部のデータベース リストを維持するためにこの通知のための登録を行います。 ::重要 :::{{span style='color:blue;font-family:monospace;',sysNotifyDB...Event}} 通知は延期される可能性のある通知です。そのため、例えば {{span style='color:blue;font-family:monospace;',EvtGetEvent}} が呼び出される前にあなたのアプリケーションがデータベースを作成し、それを書き込みのためにオープンし、そのデータベースをリネームした場合、その 3 つの操作に対応する通知は一緒に発せられます。この場合、データベースはすでにリネームされているため、{{span style='color:blue;font-family:monospace;',sysNotifyDBDirtyEvent}} ハンドラがそのデータベースをオープンしようとしても失敗します。あなたの通知ハンドラを作成しているときは、延期される可能性のある通知の影響を気を配る必要があります。 '''sysNotifyDBDeletedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDBDeletedType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyDBDeletedTag { LocalID oldDBID; UInt16 cardNo; UInt16 attributes; Char dbName[dmDBNameLength]; UInt32 creator; UInt32 type; } SysNotifyDBDeletedType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',oldDBID}} **削除されたデータベースのローカル ID。この ID はもはや有効ではありません。 ::{{span style='color:red;',WARNING!}} :::{{span style='color:blue;font-family:monospace;',oldDBID}} の ID は、この通知がブロードキャストされるときには無効になっています。あなたがこれをデータ マネージャ関数に渡そうとした場合、システムはクラッシュします。 *{{span style='color:blue;font-family:monospace;',cardNo}} **データベースが存在していたカードの番号。 *{{span style='color:blue;font-family:monospace;',attributes}} **削除されたデータベースの属性。 *{{span style='color:blue;font-family:monospace;',dbName}} **削除されたデータベースの名前。 *{{span style='color:blue;font-family:monospace;',creator}} **削除されたデータベースのクリエイタ ID。 *{{span style='color:blue;font-family:monospace;',type}} **削除されたデータベースのタイプ。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDBDirtyEvent}}sysNotifyDBDirtyEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDBDirtyEvent}} は、データベースが書き込みのためか、変更が行われる可能性のある他の方法でオープンされた後のいつかにブロードキャストされます。 あなたがデータベースが "Dirty" 状態になったときに更新される必要のある内部のデータベース リストを維持している場合、この通知のための登録を行います。例えば、通常、リセット時にランチャはそのようなデータベースをチェックして、内部リストを更新します。 ::重要 :::{{span style='color:blue;font-family:monospace;',sysNotifyDB...Event}} 通知は延期される可能性のある通知です。そのため、例えば {{span style='color:blue;font-family:monospace;',EvtGetEvent}} が呼び出される前にあなたのアプリケーションがデータベースを作成し、それを書き込みのためにオープンし、そのデータベースをリネームした場合、その 3 つの操作に対応する通知は一緒に発せられます。この場合、データベースはすでにリネームされているため、{{span style='color:blue;font-family:monospace;',sysNotifyDBDirtyEvent}} ハンドラがそのデータベースをオープンしようとしても失敗します。あなたの通知ハンドラを作成しているときは、延期される可能性のある通知の影響を気を配る必要があります。 '''sysNotifyDBDirtyEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDBDirtyType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyDBDirtyTag { Char dbName[dmDBNameLength]; UInt32 creator; UInt32 type; } SysNotifyDBDirtyType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',dbName}} **データベース名。 *{{span style='color:blue;font-family:monospace;',creator}} **データベース クリエイタ ID。 *{{span style='color:blue;font-family:monospace;',type}} **データベース タイプ。 '''互換性''' {{goto 5.0 New Feature Set,5.0 New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDeleteProtectedEvent}}sysNotifyDeleteProtectedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDeleteProtectedEvent}} は、ランチャがプロテクト フラグがセットされているデータベースを削除しようとしたときにブロードキャストされます。ランチャは通知をブロードキャストして、そのデータベースを再び削除しようと試みます。データベースを削除するサード パーティのアプリケーションも同様にこの通知をブロードキャストします。 あなたがプロテクトされたデータベースを持っているがユーザがあなたのアプリケーションやその他のリソースを削除することを許可する - ユーザがそうすることを選択した場合に - 場合に、この通知のための登録を行います。通知ハンドラは {{span style='color:blue;font-family:monospace;',notifyDtailsP}} 構造体のデータベースが削除されようとしているデータベースであるかどうかをチェックするためにその構造体の情報をチェックすべきです。そうである場合、通知ハンドラは必要なクリーン アップを実行し、プロテクト フラグをクリアすることでこの通知に応答すべきです。このやり方の中で、ランチャがデータベースを再び削除しようと試みると、削除は成功します。アプリケーションが複数のプロテクトされたデータベースを持つ場合、この通知は複数回送られるかもしれないということに注意してください。 '''sysNotifyDeleteProtectedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDBInfoType}} を指します。 '''Prototype''' typedef struct SysNotifyDBInfoTag { LocalID dbID; UInt16 cardNo; UInt16 attributes; Char dbName[dmDBNameLength]; UInt32 creator; UInt32 type; } SysNotifyDBInfoType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',dbID}} **削除されるデータベースのローカル ID。 *{{span style='color:blue;font-family:monospace;',cardNo}} **データベースが存在しているカードの番号。 *{{span style='color:blue;font-family:monospace;',attributes}} **データベースの属性。 *{{span style='color:blue;font-family:monospace;',dbName}} **削除されるデータベースの名前。 *{{span style='color:blue;font-family:monospace;',creator}} **削除されるデータベースのクリエイタ ID。 *{{span style='color:blue;font-family:monospace;',type}} **削除されるデータベースのタイプ。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDeviceUnlocked}}sysNotifyDeviceUnlocked {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDeviceUnlocked}} は、ユーザがデバイスのロックを解除したときにセキュリティ アプリケーションによってブロードキャストされます。この通知はデバイスがロック解除を終了するとすぐにブロードキャストされます。 あなたが {{goto sysNotifyLateWakeupEvent,sysNotifyLateWakeupEvent}} 通知への応答で UI を表示する場合、あなたはさらに {{span style='color:blue;font-family:monospace;',sysNotifyDeviceUnlocked}} 通知を受け取るために登録を行うべきです。ロックされているデバイスが {{span style='color:blue;font-family:monospace;',sysNotifyLateWakeupEvent}} を受け取ったとき、デバイスがユーザのパスワード入力を待っている場合はあなたの UI は表示されるべきではありません。{{span style='color:blue;font-family:monospace;',sysNotifyDeviceUnlocked}} 通知はパスワードが入力された後にブロードキャストされます。このことはユーザ インターフェイスの準備が整ったことを意味します。 '''sysNotifyDeviceUnlocked 特有のデータ''' ありません。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDisplayChangeEvent}}sysNotifyDisplayChangeEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDisplayChangeEvent}} はディスプレイ モードが変更されたると必ずブロードキャストされます。つまり、ある特定のパレットを使用するために {{goto WinPalette,WinPalette()|Palm OS Programmer's API Reference/59-2}} を使ってカラー テーブルをセットした場合でも、{{goto WinScreenMode,WinScreenMode()|Palm OS Programmer's API Reference/59-2}} を使ってディスプレイのビット深度を変更した場合でもブロードキャストされます。 {{span style='color:blue;font-family:monospace;',notifyDetailsP}} フィールドはどのようにビット深度が変更されたかを示します。構造体の中の 2 つの値が等しい場合、ビット深度ではなくカラー パレットが変更されたということを意味します。 '''sysNotifyDisplayChangeEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDisplayChangeDetailsType}} 構造体を指します。 '''Prototype''' typedef struct { UInt32 oldDepth; UInt32 newDepth; } SysNotifyDisplayChangeDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',oldDepth}} **古いビット深度。 *{{span style='color:blue;font-family:monospace;',newDepth}} **新しいビット深度。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyDisplayResizedEvent}}sysNotifyDisplayResizedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyDisplayResizedEvent}} は、ダイナミック入力エリアまたはコントロール バーがオープンまたはクローズされた後に {{goto PINSetInputAreaState,PINSetInputAreaState()|Palm OS Programmer's API Reference/46}} によってブロードキャストされます。通常、ユーザがダイナミック入力エリアとコントロール バーをオープン、クローズします。しかしながら、アプリケーションもまたそうするかもしれません - そうすることは推奨されていないにもかかわらず。 アプリケーションは使用可能な空間にアクティブ フォームを再描画することでこの通知に応答するかもしれません。 '''sysNotifyDisplayResizedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyDisplayResizedDetailsType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyDisplayResizedDetailsTag{ RectangleType newBounds; } SysNotifyDisplayResizedDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',newBounds}} **入力エリアまたはコントロール バーがオープンまたはクローズされた後のアプリケーション エリアの新しい境界。アプリケーションはこれらの境界内に現在のフォームを描画すべきです。 '''互換性''' {{goto Pen Input Manager Feature Set,ペン入力マネージャ Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyEarlyWakeupEvent}}sysNotifyEarlyWakeupEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyEarlyWakeupEvent}} は、システムがスリープを終了した後にすぐに {{goto SysHandleEvent,SysHandleEvent()|Palm OS Programmer's API Reference/54}} の中でブロードキャストされます。スクリーンはまだオフのままかもしれず、システムは完全にはウェイク アップしていないかもしれません。この通知によって、単にアラームまたはバッテリー充電イベントをハンドルして、スリープ状態に戻るだけかもしれません。ウェイクアップ イベントの通知を必要とするたいていのアプリケーションはこの通知の代わりに {{goto sysNotifyLateWakeupEvent,sysNotifyLateWakeupEvent}} のための登録を望みます。 ::重要 :::この通知はブロードキャストされることを保証されていません。それゆえ、システムの電源がオンにされたときに外部ハードウェアをオンにしなければならないアプリケーションには向いていません。 '''sysNotifyEarlyWakeupEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyEventDequeuedEvent}}sysNotifyEventDequeuedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyEventDequeuedEvent}} は {{span style='color:blue;font-family:monospace;',EvtGetEvent}} でイベント キューから削除される各イベントのためにブロードキャストされます。 ::{{span style='color:red;',WARNING!}} :::この通知のための登録には非常に注意してください; 結果としてシステムのパフォーマンスを非常に悪化させる可能性があります。 '''sysNotifyEventDequeuedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はキューから削除されるイベントの {{span style='color:blue;font-family:monospace;',EventType}} 構造体を指します。 ::重要 :::処理スピードのために、{{span style='color:blue;font-family:monospace;',notifyDetailsP}} が指すイベント構造体はシステム ネイティブのエンディアンを使用します。このことは、基本的なオペレーティング システムのエンディアンしだいであなたは構造体の内容のバイト入れ替えを行う必要があるかもしれないということを意味します。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyForgotPasswordEvent}}sysNotifyForgotPasswordEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyForgotPasswordEvent}} は、ユーザがセキュリティ アプリケーションの中のロスト パスワード ボタン (訳者補足: パスワードを忘れてしまったときに押すボタン) をタップした後にブロードキャストされます。この通知は、ユーザがすべてのプライベート レコードが削除されるということを確認した後 - その削除が実際に行われる前でなければ - に送られます。 '''sysNotifyForgotPasswordEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyGotUsersAttention}}sysNotifyGotUsersAttention {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyGotUsersAttention}} 通知は、アテンション マネージャがアテンション インジケータ (点滅、サウンドを鳴らす、バイブレーションなど) を表示または鳴らし終わったときにブロードキャストされます。 システム拡張または共有ライブラリは、それらがある特別な効果を実行することを望む場合、または、単にユーザのアテンションが届いたことをそれらに知らせたい場合、それらはこの通知のための登録を行うべきです。 '''sysNotifyGotUsersAttention 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',AttnNotifyDetailsType}} 構造体を指します。 '''Prototype''' typedef struct { AttnFlagsType flags; } AttnNotifyDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',flags}} **ユーザのアテンションを得るために使用されたアテンション インジケータ。{{goto AttnFlagsType,AttnFlagsType|Palm OS Programmer's API Reference/4}} を参照してください。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyGsiDrawIndicator}}sysNotifyGsiDrawIndicator {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyGsiDrawIndicator}} 通知は、システムがシフト インジケータを表示しようとする直前にブロードキャストされます。あなたがこの通知をハンドルした場合、システムはシフト インジケータは表示されたものと仮定します。そのため、システムはシステムの描画コードをスキップします。 あなたがシフト インジケータを描画する場所を調べたいのなら、あなたはタイプ {{span style='color:blue;font-family:monospace;',frmGraffitiStateObj}} を 1 つ見つけるまでフォーム オブジェクトを反復操作して、それからそのオブジェクトの位置を取得します。{{span style='color:blue;font-family:monospace;',GraffitiShift.}} で定義されているように、幅 {{span style='color:blue;font-family:monospace;',kMaxGsiWidth}} (9)、高さ {{span style='color:blue;font-family:monospace;',kMaxGsiHeight}} (10) のシフト インジケータを描画します。あなたは、この通知をハンドルする場合、この 9 × 10 領域の各ピクセルをクリア、描画しなければならないということに注意してください。 '''sysNotifyGsiDrawIndicator 特有のデータ''' ありません。 '''互換性''' {{goto 5.3SC New Feature Set,5.3SC New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 ::NOTE :::将来の Palm OS バージョンはこの通知をサポートしないかもしれません。 !{{anchor sysNotifyHelperEvent}}sysNotifyHelperEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyHelperEvent}} は他のアプリケーションのサービスをリクエストするためにアプリケーションによってブロードキャストされます。例えば、アドレス帳アプリケーションはダイアル アプリケーションに電話番号をダイアルすることをリクエストするためにこの通知をブロードキャストします。{{span style='color:blue;font-family:monospace;',sysNotifyHelperEvent}} において、通知クライアント (つまり、この通知のための登録を行うアプリケーションまたは共有ライブラリ) は'''ヘルパ'''と呼ばれます。 この通知をブロードキャストするアプリケーションは、[[第 39 章 「ヘルパ API」|Palm OS Programmer's API Reference/39]] の {{goto Table 39.1,表 39.1|Palm OS Programmer's API Reference/39}} の中でリスト アップされているアクション コードのうちの 1 つを指定します。これらのアクション コードはすべてのヘルパ アプリケーションに列挙 (それらが実行するサービスをリスト アップ)し、検証 (サービスが成功することを保証する) し、実行 (アクションを実行) することをリクエストします。ヘルパは {{span style='color:blue;font-family:monospace;',notifyDetailsP}} 構造体の適切な位置にリクエストされたデータを返し、アクションが成功または失敗したことを示すために {{span style='color:blue;font-family:monospace;',handled}} フィールドに {{span style='color:blue;font-family:monospace;',true}} または {{span style='color:blue;font-family:monospace;',false}} をセットすることで、この通知に応答します。 この通知についての更なる情報は、''Palm OS Companion, vol. I'' の [「ヘルパ通知」|http://ppl.palmwareinfo.com/index.cgi?page=Palm+OS+Programmer%27s+Companion+Volume+I%2F2%2D7] を参照してください。 '''sysNotifyHelperEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{goto HelperNotifyEventType,HelperNotifyEventType|Palm OS Programmer's API Reference/39}} 構造体を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyIdleTimeEvent}}sysNotifyIdleTimeEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyIdleTimeEvent}} は、システムがアイドル状態で、休止状態に入ろうとしているときにブロードキャストされます。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyInputAreaDrawingEvent}}sysNotifyInputAreaDrawingEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyInputAreaDrawingEvent}} 通知は、ダイナミック入力エリアをサポートするデバイスでシステムがダイナミック入力エリアを再描画しようとする直前にブロードキャストされます。あなたがこの通知をハンドルする場合、システムは入力エリアのリクエストされた部分は再描画されたものと仮定し、システム自体の描画コードをスキップします。 '''sysNotifyInputAreaDrawingEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyInputAreaDrawingDetailsType}} 構造体を指します。この構造体はリトル エンディアン フォーマットです。 '''Prototype''' typedef struct SysNotifyInputAreaDrawingDetailsTag { RectangleType updateBounds; const BitmapType *bitmapP; Boolean selected; Boolean fullRedraw; UInt16 padding; } SysNotifyInputAreaDrawingDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',updateBounds}} **{{span style='color:blue;font-family:monospace;',fullRedraw}} フィールドが {{span style='color:blue;font-family:monospace;',false}} の場合、これは再描画するエリア - 入力エリア ウィンドウからの相対的なネイティブ座標 (訳者: ?、原文: native coordinates) です。 *{{span style='color:blue;font-family:monospace;',bitmapP}} **システムによって描画されようとしているビットマップへのポインタ。 *{{span style='color:blue;font-family:monospace;',selected}} **再描画されているエリアがユーザがタップしていてそのために選択された状態として再描画されるべきであるボタンである場合、{{span style='color:blue;font-family:monospace;',true}} です。 *{{span style='color:blue;font-family:monospace;',fullRedraw}} **入力エリア全体が再描画されるべきである場合、{{span style='color:blue;font-family:monospace;',true}} です。一部だけが再描画される場合、{{span style='color:blue;font-family:monospace;',false}} です。{{span style='color:blue;font-family:monospace;',true}} の場合、{{span style='color:blue;font-family:monospace;',updateBounds}} フィールドは無視できます。 *{{span style='color:blue;font-family:monospace;',padding}} **パディング。使用されません。 '''互換性''' {{goto 5.3SC New Feature Set,5.3SC New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 ::NOTE :::将来の Palm OS バージョンはこの通知をサポートしないかもしれません。 !{{anchor sysNotifyInputAreaPendownEvent}}sysNotifyInputAreaPendownEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyInputAreaPendownEvent}} 通知は、ダイナミック入力エリアをサポートするデバイスでシステムがダイナミック入力エリアの {{span style='color:blue;font-family:monospace;',penDownEvent}} をハンドル使用とする直前にブロードキャストされます。あなたがこの通知をハンドルする場合、システムはそのイベントはハンドルされたものと仮定し、システム自体のハンドル コードをスキップします。 '''sysNotifyInputAreaPendownEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDeatilsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyInputAreaPendownDetailType}} 構造体を指します。この構造体はリトル エンディアン フォーマットです。 '''Prototype''' typedef struct SysNotifyInputAreaPendownDetailTag { PointType where; } SysNotifyInputAreaPendownDetailType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',where}} **ペンが最初に接した場所。入力エリア ウィンドウからの相対的なネイティブ座標 (訳者: ?、原文: native coordinates) です。 '''互換性''' {{goto 5.3SC New Feature Set,5.3SC New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyInsPtEnableEvent}}sysNotifyInsPtEnableEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyInsPtEnableEvent}} は {{span style='color:blue;font-family:monospace;',InsPtEnable}} の開始時にブロードキャストされます。 '''sysNotifyInsPtEnableEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はブール値を指します: {{span style='color:blue;font-family:monospace;',InsEnable}} に渡される {{span style='color:blue;font-family:monospace;',enableIt}} パラメータです。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyKeyboardDialogEvent}}sysNotifyKeyboardDialogEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyKeyboardDialogEvent}} は、システム キーボードが表示されるとき常にブロードキャストされます。{{span style='color:blue;font-family:monospace;',SysKeyboardDialog}} 関数のユーザ インターフェイスの置換を可能にすることを意図しています。 '''sysNotifyKeyboardDialogEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',KeyboardType}} 列挙体を指します。この列挙体はキーボードをオープンするときのモードを示します: アルファベット、数字、国際 (訳者補足: 全角文字など)。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyLateWakeupEvent}}sysNotifyLateWakeupEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyLateWakeupEvent}} は、デバイスがウェイク アップを終了した後すぐに {{goto SysHandleEvent,SysHandleEvent()|Palm OS Programmer's API Reference/54}} の中でブロードキャストされます。この通知はウェイクアップの最後の段階 - スクリーンがオンにされた後 - で送られます。この通知がブロードキャストされるとき、システムは完全にウェイク アップしていることが保証されています。あなたがシステムがウェイク アップするたびにスタートアップ タスクを実行する必要がある場合、この通知のための登録を行います。 ::重要 :::この通知はブロードキャストされることを保証されていません。それゆえ、デバイスがウェイク アップされたときに外部ハードウェアをオンにしなければならないアプリケーションには向いていません。 デバイスがこの通知を受け取ったとき、そのデバイスはロックされていて、ユーザがパスワードを入力するのを待っているかもしれません。そのような場合、あなたはユーザ インターフェイスを表示する前に、ユーザがデバイスのロックを解除するのを待たなくてはなりません。そのため、あなたがデバイスがウェイク アップしたときにユーザ インターフェイスを表示することを意図している場合、あなたはデバイスがロックされていないことを確認すべきです。デバイスがロックされている場合、あなたは {{goto sysNotifyDeviceUnlocked,sysNotifyDeviceUnlocked}} 通知のための登録を行い、その通知を受け取ったときにあなたのユーザ インターフェイスを表示すべきです。例えば以下のように: case sysNotifyLateWakeupEvent: if ((Boolean) PrefGetPreference(prefDeviceLocked)) { SysNotifyRegister(myCardNo, myDbID, sysNotifyDeviceUnlocked, NULL, sysNotifyNormalPriority, NULL); } else { HandleDeviceWakeup(); } case sysNotifyDeviceUnlocked: HandleDeviceWakeup(); '''sysNotifyLateWakeupEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyLocaleChangedEvent}}sysNotifyLocaleChangedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyLocaleChangedEvent}} は、システム ロケールが変更された後すぐにブロードキャストされます。現在のところ、ユーザはデバイスが最初にスタート アップするときとハード リセットされた後にだけロケールを変更する機会を持ちます。 RAM べース アプリケーションと他のコード リソースは {{span style='color:blue;font-family:monospace;',prefLocale}} 定数を {{goto PrefGetPreference,PrefGetPreference()|Palm OS Programmer's API Reference/48}} に渡すことによってロケール情報を取得すべきです。それらはこの通知のための登録を行うべきではありません。この通知はビルト イン アプリケーションによって使用されます。ビルト イン アプリケーションは新たに選択された言語と文字セットを使用するためにそれらのデフォルトのデータベースをリビルドすることによってこの通知に応答します。 '''sysNotifyLocaleChangedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyLocaleChangedType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyLocaleChangedTag { LmLocaleType oldLocale; LmLocaleType newLocale; } SysNotifyLocaleChangedType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',oldLocale}} **古いロケール。{{goto LmLocaleType,LmLocaleType|Palm OS Programmer's API Reference/41}} を参照してください。 *{{span style='color:blue;font-family:monospace;',newLocale}} **新しいロケール。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyMenuCmdBarOpenEvent}}sysNotifyMenuCmdBarOpenEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyMenuCmdBarOpenEvent}} は、{{goto MenuHandleEvent,MenuHandleEvent()|Palm OS Programmer's API Reference/15}} がメニュー ショートカット コマンド バーを表示しようとしているときに、{{span style='color:blue;font-family:monospace;',MenuHandleEvent()}} の中でブロードキャストされます。 あなたがボタンをメニュー コマンド バーに追加するまたはメニュー コマンド バーを抑制する必要のあるシステム拡張 (HackMaster プログラムにインストールされる "hack" など) を作成している場合、この通知のための登録を行います。ボタンを追加するには、{{goto MenuCmdBarAddButton,MenuCmdBarAddButton()|Palm OS Programmer's API Reference/15}} を呼び出します。コマンド ツールバーを抑制するには、{{span style='color:blue;font-family:monospace;',handled}} フィールドに {{span style='color:blue;font-family:monospace;',true}} をセットします。 ボタンをメニュー コマンド バーに追加する必要のあるアプリケーションは、{{goto menuCmdBarOpenEvent,menuCmdBarOpenEvent|Palm OS Programmer's API Reference/2}} への応答の中でそうするべきです。それらはこの通知のための登録を行うべきではありません。なぜなら、アプリケーションはアクティブ アプリケーションである場合にのみボタンを追加すべきだからです。通知は、イベントが受信された後、コマンド ツールバーが表示される直前に送られます。 '''sysNotifyMenuCmdBarOpenEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyNetLibIFMediaEvent}}sysNotifyNetLibIFMediaEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyNetLibIFMediaEvent}} は、ネットワーク インターフェイスがネットワーク接続をアクティブまたはインアクティブにするとき常にイベント ループの先頭にブロードキャストされます。 あなたがネットワーク接続がアクティブになるときを知る必要がある場合、この通知のための登録を行います。 '''sysNotifyNetLibIFMediaEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyNetLibIFMediaType}} 構造体を保持します。 '''Prototype''' typedef struct SysNotifyNetLibIFMediaTag { NetLibIFMediaEventNotificationTypeEnum eType; UInt32 ifCreator; UInt16 ifInstance; } SysNotifyNetLibIFMediaType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',eType}} **以下の値のうちの 1 つです: {{div_begin style="margin-left:5em;"}} *{{span style='color:blue;font-family:monospace;',netIFMediaUp}} **ネットワーク接続はアクティブです。通常、これはネットワーク インターフェイスが接続しようという試みが進捗中であることを示す UI を表示した後に送られます。 *{{span style='color:blue;font-family:monospace;',netIFMediaDown}} **ネットワーク接続はインアクティブです。通常、これはインアクティブ タイムアウト値に達したためにネットワーク インターフェイスが接続をダウンさせた後に送られます。 {{div_end}} *{{span style='color:blue;font-family:monospace;',ifCreator}} **ネットワーク インターフェイスのクリエイタ ID。 *{{span style='color:blue;font-family:monospace;',ifInstance}} **ネットワーク インターフェイスのインスタンス番号。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyProcessPenStrokeEvent}}sysNotifyProcessPenStrokeEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyProcessPenStrokeEvent}} は、デジタイザのシルクスクリーンでの入力のカスタム認識を可能にするためにブロードキャストされます。 '''sysNotifyProcessPenStrokeEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyPenStrokeType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyPenStrokeTag { UInt32 version; PointType startPt; PointType endPt; } SysNotifyPenStrokeType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',version}} **この構造体の現在のバージョン。現在のバージョンは 0 です。 *{{span style='color:blue;font-family:monospace;',startPt}} **入力の開始点。 *{{span style='color:blue;font-family:monospace;',endPt}} **入力の終了点。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyResetFinishedEvent}}sysNotifyResetFinishedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyResetFinishedEvent}} は、システムがリセットを完了した後すぐにブロードキャストされます。 この通知レジストリはリセット時にクリアされるため、内部システム コンポーネントだけがこの通知を使用します。システム リセットを知らせてもらう必要のあるアプリケーションは {{goto sysAppLaunchCmdSystemReset,sysAppLaunchCmdSystemReset|Palm OS Programmer's API Reference/1}} 起動コードに応答することができます。 '''sysNotifyResetFinishedEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyRetryEnqueueKey}}sysNotifyRetryEnqueueKey {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyRetryEnqueueKey}} 通知は、アテンション マネーがが仮想文字をキー キューに送ろうと試みて、キューがいっぱいのために失敗した場合に、イベント ループの先頭にブロードキャストされます。 たいていのアプリケーションはこの通知のための登録を行う必要はありません。この通知は、仮想文字を再びキューに追加するスケジュールを立てるためにアテンション マネージャによってのみ使用されます。仮想文字のキューへの追加が失敗したとき、アテンション マネージャは再びイベント ループの先頭に追加しようと試みます。アテンション マネージャは再度の試みを行うためのスケジュールを立てるためにこの通知を使用し、それにより例えもしユーザがアプリケーションを切り替えたとしても仮想文字はキューに追加されます。 '''sysNotifyRetryEnqueueKey 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はキューに追加する仮想文字を保持している {{span style='color:blue;font-family:monospace;',WChar}} を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifySelectDay}}sysNotifySelectDay {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifySelectDay}} 通知は、{{goto SelectDay,SelectDay()|Palm OS Programmer's API Reference/8}} 関数 ({{span style='color:blue;font-family:monospace;',SelDay.h}} で定義されています) が呼び出されたときにブロードキャストされます。あなたがこの通知をハンドルする場合、システムは適切なユーザ インターフェイスがユーザに対して表示されていて、({{span style='color:blue;font-family:monospace;',dayChanged}} が {{span style='color:blue;font-family:monospace;',true}} の場合は) そのユーザ インターフェイスはリクエストされた日付のための {{span style='color:blue;font-family:monospace;',daySelectorP}} を使用しているものと仮定します。このことは、あなたがロケール特有の日付選択ユーザ インターフェイスを開発することを可能にします (あらかじめ {{span style='color:blue;font-family:monospace;',SelectDay()}} 関数によってサポートされている日付選択以上のことが可能です)。 '''sysNotifySelectDay 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifySelectDayDetailsType}} 構造体を指します。この構造体はリトル エンディアン フォーマットです。 '''Prototype''' typedef struct SysNotifySelectDayDetailsTag { DaySelectorType *daySelectorP; const Char *titleP; Boolean dayChanged; UInt8 padding[3]; } SysNotifySelectDayDetailsType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',daySelectorP}} **{{span style='color:blue;font-family:monospace;',DaySelectorType}} 構造体へのポインタは、入力時にはユーザ インターフェイスが最初に表示されたときに選択されている日付を指定し、出力時にはユーザによって選択された日付を指定します。 *{{span style='color:blue;font-family:monospace;',titleP}} **ユーザが選択する日付が何なのかを知らせるためにユーザ インターフェイスのタイトルとして表示されるかもしれないテキスト文字列へのポインタ。 *{{span style='color:blue;font-family:monospace;',dayChanged}} **ユーザがユーザ インターフェイスで異なる日付を選択した場合、{{span style='color:blue;font-family:monospace;',true}} です。ユーザがユーザ インターフェイスをキャンセルしたり最初に選択されていた日付を変更しなかった場合、{{span style='color:blue;font-family:monospace;',false}} です。 *{{span style='color:blue;font-family:monospace;',padding}} **パディング。使用されません。 '''互換性''' {{goto 5.3SC New Feature Set,5.3SC New Feature Set|Palm OS Programmer's API Reference/B-2}} が存在する場合にのみ、実装されます。 ::NOTE :::将来の Palm OS バージョンはこの通知をサポートしないかもしれません。 !{{anchor sysNotifySleepNotifyEvent}}sysNotifySleepNotifyEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifySleepNotifyEvent}} は、システムがスリープ状態に入る直前に {{goto SysHandleEvent,SysHandleEvent()|Palm OS Programmer's API Reference/54}} の中でブロードキャストされます。ブロードキャストの完了後、システムはスリープ状態になります。 あなたがシステムがスリープ状態に入る前にちょっとしたクリーンアップを実行する必要がある場合、この通知のための登録を行います。スリープ通知への応答の中で確認を求めるアラート パネルを表示するなおdの時間のかかる処理を行わないことを推奨します。そうした場合、アラートはもう 1 つの自動オフ イベントを引き起こすほど長い時間表示されるかもしれません。これはこの通知の他のハンドラにとって有害なものになる可能性があります。 あなたのコードが長い計算の途中で、スリープを遅らせる必要がある場合、この通知の代わりに {{goto sysNotifySleepRequestEvent,sysNotifySleepRequestEvent}} のための通知を行うべきです。 ::重要 :::この通知はブロードキャストされることを保証されていません。例えば、ユーザがバッテリを取り外したためにシステムがスリープ状態に入る場合、スリープ通知は送られません。それゆえ、この通知はシステムがスリープ状態に入る前に電源を維持するため (訳者: パソコンのマザーボードについている CMOS 電池なようなものか?) に外部ハードウェアをオフにしなければならないアプリケーションには向いていません。 '''sysNotifySleepNotifyEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifySleepRequestEvent}}sysNotifySleepRequestEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifySleepRequestEvent}} は、システムがスリープ状態に入ることを決定したときに {{goto SysHandleEvent,SysHandleEvent()|Palm OS Programmer's API Reference/54}} 処理の中でブロードキャストされます。 あなたが、あなたのコードがネットワークからの接続の切断などの時間のかかる処理を実行する間システムがスリープ状態に入るのを遅らせる必要がある場合、この通知のための登録を行います。システムは、各通知ハンドラが返ってきたときに {{span style='color:blue;font-family:monospace;',deferSleep}} 値をチェックします。この値が非 0 である場合、システムはスリープ イベントをキャンセルします。 あなたがスリープ状態に入るのを遅らせると、あなたのコードは自由に処理を終了することができます。あなたのコードが終了したとき、あなたはシステムがスリープ イベントを再開するのを許可しなければなりません。そうするには、{{span style='color:blue;font-family:monospace;',resumeSleepChr}} とコマンド キー ビット セット (文字が仮想文字であることを知らせるためのもの) を持つ {{goto keyDownEvent,keyDownEvent|Palm OS Programmer's API Reference/2}} を作成し、それをイベント キューに追加します。システムがこのイベントを受け取ったとき、システムは再び {{span style='color:blue;font-family:monospace;',sysNotifySleepRequestEvent}} をすべてのクライアントにブロードキャストします。{{span style='color:blue;font-family:monospace;',deferSleep}} が 0 の場合、すべてのクライアントが返った後にシステムはスリープ状態に入っても安全であると認識し、{{span style='color:blue;font-family:monospace;',sysNotifySleepRequestEvent}} をすべてのクライアントにブロードキャストします。 あなたは、システムがスリープ状態に入るまでの間にこの通知を何度か受け取るかもしれないということに注意してください。なぜなら、通知ハンドラはシステム スリープを遅らせて後になってからそれを再開することができるからです。 ::重要 :::この通知はブロードキャストされることを保証されていません。例えば、ユーザがバッテリを取り外したためにシステムがスリープ状態に入る場合、スリープ通知は送られません。それゆえ、この通知はシステムがスリープ状態に入る前に電源を維持するため (訳者: パソコンのマザーボードについている CMOS 電池なようなものか?) に外部ハードウェアをオフにしなければならないアプリケーションには向いていません。 '''sysNotifySleepRequestEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SleepEventParamType}} 構造体を指します。 '''Prototype''' typedef struct { UInt16 reason; UInt16 deferSleep; } SleepEventParamType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',reason}} **システムがスリープ状態に入る理由。取り得る値は以下のどれかです: {{div_begin style="margin-left:5em;"}} *{{span style='color:blue;font-family:monospace;',sysSleepAutoOff}} **アイドル タイム制限に達しました。 *{{span style='color:blue;font-family:monospace;',sysSleepPowerButton}} **ユーザが電源オフ ボタンを押しました。 *{{span style='color:blue;font-family:monospace;',sysSleepResumed}} **スリープ イベントは通知ハンドラの 1 つによって遅らされていましたが、{{span style='color:blue;font-family:monospace;',resumeSleepChr}} によって再開されました。 *{{span style='color:blue;font-family:monospace;',sysSleepUnknown}} **未知の理由です。 ** {{div_end}} *{{span style='color:blue;font-family:monospace;',deferSleep}} **初期状態では 0 にセットします。通知ハンドラがスリープを遅らせることを望む場合、その通知ハンドラはこの値を +1 します。{{span style='color:blue;font-family:monospace;',defereSleep}} が 0 よりも大きい場合、システムはスリープ状態に入るのを待ちます。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifySyncFinishEvent}}sysNotifySyncFinishEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifySyncFinishEvent}} は、HotSync が完了した後すぐにブロードキャストされます。あなたが HotSync 完了後に処理を行う必要がある場合、この通知のための登録を行います。 '''sysNotifySyncFinishEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifySyncStartEvent}}sysNotifySyncStartEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifySyncStartEvent}} は、HotSync が始まる直前にブロードキャストされます。あなたが HotSync 開始前に処理を行う必要がある場合、この通知のための登録を行います。 '''sysNotifySyncStartEvent 特有のデータ''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyTimeChangeEvent}}sysNotifyTimeChangeEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyTimeChangeEvent}} 通知は、{{goto TimSetSeconds,TimSetSeconds()|Palm OS Programmer's API Reference/57}} を使ってシステム タイムが変更された後すぐにブロードキャストされます。あなたがシステム タイムが変更されたことを知る必要がある場合、この通知のための登録を行います。 '''sysNotifyTimeChangeEvent''' ありません。 '''互換性''' {{goto Notification Feature Set,通知 Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyVirtualCharHandlingEvent}}sysNotifyVirtualCharHandlingEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyVirtualCharHandlingEvent}} は、仮想文字のカスタム ハンドルを可能にするためにブロードキャストされます。仮想文字がシステム処理の残りの部分に渡されるのを防ぐには、{{goto SysNotifyParamType,SysNotifyParamType}} 構造体の中の {{span style='color:blue;font-family:monospace;',handled}} フィーるを {{span style='color:blue;font-family:monospace;',true}} にセットします。 '''sysNotifyVirtualCharHandlingEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{span style='color:blue;font-family:monospace;',SysNotifyVirtualCharHandlingType}} 構造体を指します。 '''Prototype''' typedef struct SysNotifyVirtualCharHandlingTag{ UInt32 version; struct _KeyDownEventType keyDown; } SysNotifyVirtualCharHandlingType; '''フィールド''' *{{span style='color:blue;font-family:monospace;',version}} **この構造体の現在のバージョン。現在のバージョンは 0 です。 *{{span style='color:blue;font-family:monospace;',keyDown}} **仮想文字。この構造体とその内容についての完全な説明は、{{goto Event Reference,「イベント リファレンス」|Palm OS Programmer's API Reference/2}} の {{goto keyDownEvent,keyDownEvent|Palm OS Programmer's API Reference/2}} の説明を参照してください。 '''互換性''' この通知は Palm OS 4.0 SDK Update 1 で宣言されています。Palm OS のバージョン 4.1以前はこの通知はブロードキャストしません。Palm OS Garnet リリースはこの通知をブロードキャストします。それ以降のバージョンはこの通知をブロードキャストするかもしれませんし、しないかもしれません。 !{{anchor sysNotifyVolumeMountedEvent}}sysNotifyVolumeMountedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyVolumeMountedEvent}} は、仮想ファイル マネージャ ボリュームがマウントされるときにブロードキャストされます。ボリュームがマウントされると、VFS マネージャは新たにマウントされたボリュームの {{span style='color:blue;font-family:monospace;',start.prc}} を開始し、アプリケーションをランチャまたはそのボリュームの {{span style='color:blue;font-family:monospace;',start.prc}} がユーザ インターフェイスを持つ場合はその {{span style='color:blue;font-family:monospace;',start.prc}} に切り替えます。 あなたがボリュームがマウントされることを知る必要がある、または、VFS マネージャのデフォルトの振る舞いを防ぐことを望む場合、この通知のための登録を行います。 VFS マネージャが {{span style='color:blue;font-family:monospace;',start.prc}} アプリケーションを開始するのを防ぐには、{{span style='color:blue;font-family:monospace;',handled}} フィールドの中の {{span style='color:blue;font-family:monospace;',vfsHandledStartPrc}} ビットをセットします。VFS マネージャがアプリケーションを切り替えるのを防ぐには、{{span style='color:blue;font-family:monospace;',vfsHandledUIAppSwitch}} ビットをセットします。 '''sysNotifyVolumeMountedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} は {{goto VFSSlotMountParamType,VFSSlotMountParamType|Palm OS Programmer's API Reference/58}} 構造体または {{goto VFSPOSEMountParamType,VFSPOSEMountParamType|Palm OS Programmer's API Reference/58}} 構造体を指します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 !{{anchor sysNotifyVolumeUnmountedEvent}}sysNotifyVolumeUnmountedEvent {{goto top,^TOP^}} {{span style='color:blue;font-family:monospace;',sysNotifyVolumeUnmountedEvent}} は、仮想ファイル システム ボリュームがアンマウントされるときにブロードキャストされます。あなたがボリュームがアンマウントされることを知る必要がある場合、この通知のための登録を行います。 '''sysNotifyVolumeUnmountedEvent 特有のデータ''' {{span style='color:blue;font-family:monospace;',notifyDetailsP}} はボリューム参照番号を保持します。 '''互換性''' {{goto 4.0 New Feature Set,4.0 New Feature Set|Palm OS Programmer's API Reference/B-1}} が存在する場合にのみ、実装されます。 {{div_end}} {{div_begin "style='border-top-style:solid;border-top-width:1px;border-top-color:silver;'"}} [[← 2 章に戻る|Palm OS Programmer's API Reference/2]] [[↑トップへ|Palm OS Programmer's API Reference]] [[4 章に進む →|Palm OS Programmer's API Reference/4]] {{div_end}}