![]() ![]() ![]()
|
BREW C++ ライブラリ & GUI フレームワーク : SophiaFramework 3.0 |
| ISHELL_CloseApplet | |
| ドキュメント エラー | BREW API リファレンス 2.0.1.5 |
API リファレンス中、本 API は、「現在アクティブなアプレットをクローズする」 とありますが、正しくはこの API をコールしたアプレット (自アプレット) をクローズします。
| ISHELL_DetectType | |
| バグ | A5304T、BREW エミュレータ 2.0.1.5 |
現在、SMAF データを正常に識別できません。 ディベロッパ側で独自に識別する必要があります。
| ISHELL_GetAppPrefs, ISHELL_GetPrefs | |
| バグ | A5304T、BREW SDK 2.0.1.5 |
現在、これらの関数の引数の wVer に、間違ったバージョン番号を指定すると、 設定されているデータが失われてしまうというバグがあります。
| ISHELL_GetAppAuthor, ISHELL_GetAppVersieon, ISHELL_GetAppCopyright | |
| ドキュメント エラー | BREW API リファレンス 2.0.1.5 |
これらの関数は、取得した文字列の長さをバイト数で返すとリファレンスにありますが、 実際には文字列の長さを文字数 (AECHAR) で返します。
| ISHELL_GetResSize, ISHELL_LoadResData, ISHELL_LoadResDataEx | |
| Tips | BREW SDK 2.1 以前の SDK 及び実機 |
上記 3 つのAPI において、現状 RESTYPE_BINARY は使用できません。 なお、RESTYPE_IMAGE には任意のデータを格納できますので、 2.0 においてはこちらをご利用ください。 RESTYPE_IMAGE の仕様は将来に亘ってサポートされます。 詳しくは、「リソースファイルにサウンドデータを格納するには」をご参照ください。
| ISHELL_LoadResObject | |
| Tips | BREW SDK 2.1 以前の SDK 及び実機 |
HTYPE_SOUND は現バージョンではサポートされません。 (.bar ファイルが SOUND リソースの格納に対応していない為です。) 詳しくは、「リソースファイルにサウンドデータを格納するには」をご覧下さい。
| ISHELL_OnInit, ISHELL_OnExit | |
| Tips | すべて |
上記二つの API は、ダウンローダブルなアプリケーションでは意味を持ちません。
| ISHELL_OnAppClose, ISHELL_OnModUnload | |
| Tips | すべて |
上記二つの API は、AEEApplet_New 時に登録する PFNFREEAPPDATA 関数での処理で代用できますので、 使う必要はありません。(ModUnload とは、モジュールがヒープから解放されるタイミングを指します。 ROM から削除されるタイミングのことではありません。)
| ISHELL_RegisterSystemCallback | |
| Tips | すべて |
ISHELL_On* 系の API で内部的にコールしている関数です。 ISHELL_On* API をコールする方がタイプ量も少なく済みますので、そちらをご利用ください。
| ISHELL_LoadImage, ISHELL_LoadResImage | |
| バグ | A5304T、BREW SDK 2.0.1.5 |
上記二つの API にて、データのロード失敗時には null が返ることになっていますが、 あるメモリ状況下でデータのロードに失敗しても null が返らない場合があります。
状況としては、「IImage オブジェクト (数十バイト) 自体」は生成できても、 その中の「画像自体」がヒープにロードできないような状況において、 これらの API は画像へのポインタをもたない IImage オブジェクトを返します。
プログラム側は、これらの API が返すポインタが本当に有効なものかどうか 再度のチェックを行ってください。 チェックするには、IIMAGE_GetInfo を行い、 メンバ変数の cx が 0 でないことを確認してください。
pMe->pii=ISHELL_LoadResImage(pMe->a.m_pIShell,"wupdate.png", 0);
if (pMe->pii)
{
IIMAGE_GetInfo(pMe->pii, &paii);
if (paii.cx==0)
{
DBGPRINTF("Failed to load image...!");
IIMAGE_Release(pMe->pii);
return false;
}
else
{
IIMAGE_Draw(pMe->pii, 0,0);
return true;
}
}
return false;
補記:
PNG、JPEG、BCI の画像をロードする際、 上記のチェックを行ってもエラーが検出できないことがあります。
例えば、PNG のイメージのロードには、PNG イメージ自体のファイルサイズ (画像に依存) + PNG デコーダのワークエリア (40KB) + デコードされたイメージの DIB (画像サイズに依存) が必要となりますが、 「PNG イメージのファイルサイズ+PNG デコーダのワークエリア」 のみが確保できてもデコードされたイメージの DIB がメモリに展開できなかった場合、
AEEImageInfo.cx には有効な値が設定されるにも関わらず、画像のロード自体には失敗しています。 現状、PNG、JPEG、BCI の画像を展開する際には、ヒープが十分残っていることを確認してから ISHELL_LoadImage するようにして下さい。
| ISHELL_LoadSound, ISHELL_LoadResSound | |
| バグ | A5304T、BREW SDK 2.0.1.5 |
上記二つの API にて、データのロード失敗時には null が返ることになっていますが、 あるメモリ状況下でデータのロードに失敗しても null が返らない場合があります。
状況としては、「ISoundPlayer オブジェクト (数十バイト) 自体」は生成できても、 その中の「音データ自体」がヒープにロードできないような状況において、 これらの API は音データへのポインタをもたない ISoundPlayer オブジェクトを返します。
プログラム側は、これらの API が返すポインタが本当に有効なものかどうか再度のチェックを 行ってください。チェックするには、ISOUNDPLAYER_GetInfo を行い、メンバ変数の dwSize が 0 でないことを確認してください。
pMe->psi=ISHELL_LoadResSound(pMe->a.m_pIShell, "wupdate.qcp", 0);
if (pMe->psi)
{
IISOUNDPLAYER_GetInfo(pMe->psi, &pasi);
if (pasi.dwSize==0)
{
DBGPRINTF("Failed to load sound...!");
ISOUNDPLAYER_Release(pMe->psi);
return false;
}
else
{
ISOUNDPLAYER_Play(pMe->psi);
return true;
}
}
return false;
| パブリック関数 | |
|---|---|
| AEECLSID |
ActiveApplet( Void ) 現在実行中のアプレットに関連付けられた AEECLSID を返します。
|
| Bool |
AlarmsActive( Void ) アナンシエータ (呼び出し表示装置) に ANNUN_ALARMCLOCK、ANNUN_COUNTDOWN、または ANNUN_STOPWATCH が設定された場合は、true を返します。
|
| Bool |
Beep(
BeepType beep
, Bool loud = false
) システムビープ音の発生またはデバイスの振動を行うための簡単なインタフェースを備えています。
|
| Void |
BrowseFile(
ACharConstPtr file
) BrowseFile( SFXAnsiStringConstRef file ) filename で指定されたファイルの拡張子に関連付けられている登録済みのアプレットを検索します。
|
| Void |
BrowseURL(
ACharConstPtr url
) BrowseURL( SFXAnsiStringConstRef url ) url が指している文字列に含まれている URL スキームに関連付けられている登録済みのアプレットを検索します。
|
| Bool |
Busy( Void ) アプレットの終了が必要な場合にtrueを返します。
|
| Bool |
CanStartApplet(
AEECLSID clsid
) アプレットの起動に問題がないかどうかを決定するために、AEE シェルに問い合せます。
|
| SFCError |
CancelAlarm(
AEECLSID clsid
, UInt16 userCode
) ISHELL_SetAlarm() で設定されたアラームをキャンセルします。
|
| SFCError |
CancelTimer(
PFNNOTIFY notify = null
, VoidPtr data = null
) ISHELL_SetTimer() で設定したタイマーをキャンセルします。
|
| Bool |
CheckPrivLevel(
UInt16 privilege
, Bool queryOnly = true
) 現在実行しているアプリケーションの特権レベルを指定した値と照合します。
|
| SFCError |
CloseApplet(
Bool returnToIdle = false
) AEE シェルに対し、アクティブなアプレットをクローズするよう指示します。
|
| SFCError |
CreateDialog(
ACharConstPtr resFile
, UInt16 id
) CreateDialog( SFXAnsiStringConstRef resFile , UInt16 id ) CreateDialog( DialogInfo* info )
AEE シェルに対し、入力された DialogInfo データ構造に関連するダイアログ、または関連するリソースファイルのダイアログ情報に関連付けられたダイアログを起動するよう指示します。
|
| SFCError |
CreateInstance(
AEECLSID clsid
, SFBBaseSmpPtr handle
)
指定された ClassID のオブジェクトを作成して返します。
|
| SFBBaseSmp |
CreateInstance(
AEECLSID clsid
)
指定された ClassID のオブジェクトを作成して返します。
|
| SFCError |
DetectType(
VoidConstPtr data
, UInt32Ptr size
, ACharConstPtr name
, ACharConstHandle mime
) DetectType( SFXBufferConstRef data , UInt32Ptr additional , SFXAnsiStringPtr mime ) DetectType( VoidConstPtr data , UInt32Ptr size , SFXAnsiStringPtr mime ) DetectType( SFXBufferConstRef data , UInt32Ptr additional , SFXAnsiStringConstRef name , SFXAnsiStringPtr mime ) DetectType( VoidConstPtr data , UInt32Ptr size , SFXAnsiStringConstRef name , SFXAnsiStringPtr mime ) DetectType( SFXBufferConstRef data , UInt32Ptr additional , ACharConstPtr name , ACharConstHandle mime )
指定されたバッファ内のデータ、
または指定されたオブジェクト名の MIME タイプを取得します。
|
| SFCError |
EndDialog( Void ) 現在アクティブなダイアログをクローズします。
|
| Void |
EnumAppletInit( Void ) AEEシェルの内部アプレットの列挙インデックスをリセットします。
|
| AEECLSID |
EnumNextApplet(
AEEAppInfo* info
) 次のアプレットに関する情報を返します。
|
| Bool |
ForceExit( Void ) アプレットの終了が必要な場合に true を返します。
|
| Void |
FreeResData(
VoidPtr data
) 前回 ISHELL_LoadResData() から返されたデータを解放します。
|
| SFBDialogSmp |
GetActiveDialog( Void ) 現在アクティブなダイアログを返します。
|
| SInt32 |
GetAppAuthor(
WCharPtr buf
, SInt32 size
) GetAppAuthor( SFXWideStringPtr string )
アクティブなアプレットの作成者の名前を取得します。
|
| SInt32 |
GetAppCopyright(
WCharPtr buf
, SInt32 size
) GetAppCopyright( SFXWideStringPtr string )
アクティブなアプレットの著作権文字列を取得します。
|
| SInt32 |
GetAppPrefs(
UInt16 version
, VoidPtr buf
, UInt16 size
) GetAppPrefs( UInt16 version , SFXBufferPtr buf ) アプレットのプリファレンスが含まれる構造体を取得する方法を提供します。
|
| SInt32 |
GetAppVersion(
WCharPtr buf
, SInt32 size
) GetAppVersion( SFXWideStringPtr string )
アクティブなアプレットのバージョン文字列を取得します。
|
| UInt32 |
GetClassItemID(
AEECLSID clsid
)
指定されたクラス ID を所有しているモジュールに割り当てられた 32 ビット値を返します。
|
| Void |
GetDeviceInfo(
AEEDeviceInfo* info
) デバイスの機能 (サポートしている RAM の量、表示ディスプレイ、その他) に関する情報を AEE シェルに問い合わせます。
|
| SFCError |
GetDeviceInfoEx(
AEEDeviceItem item
, VoidPtr info
, SInt32Ptr size
) GetDeviceInfoEx( AEEDeviceItem item , SFXBufferPtr info ) デバイスに関する特定の情報を取得します。
|
| AEECLSID |
GetHandler(
AEECLSID type
, ACharConstPtr in
) GetHandler( AEECLSID type , SFXAnsiStringConstRef in )
コンテンツビューアおよびプロトコル方式ハンドラを登録した AEE シェルのデータベースへの問い合せを行います。
|
| static SFBShellSmp |
GetInstance( Void ) SFBShell クラスのインスタンスを取得します。
|
| Void |
GetItemStyle(
AEEItemType type
, AEEItemStyle* normal
, AEEItemStyle* selected
) メニュー、アイコン、またはリスト項目のデフォルトスタイルに関する情報を AEE シェルに問い合せます。
|
| Void |
GetJulianDate(
UInt32 seconds
, JulianType* date
) 入力された秒数に基づいて JulianType データ構造体にデータを読み込みます。
|
| SInt32 |
GetPrefs(
AEECLSID clsid
, UInt16 version
, VoidPtr config
, UInt16 size
) GetPrefs( AEECLSID clsid , UInt16 version , SFXBufferPtr config ) アプレットまたはクラスのレベルプリファレンスが含まれる構造体を取得する方法を提供します。
|
| UInt32 |
GetResSize(
ACharConstPtr file
, UInt16 id
, ResType type
, UInt32Ptr size
) GetResSize( SFXAnsiStringConstRef file , UInt16 id , ResType type , UInt32Ptr size ) ISHELL_LoadResDataEx() のラッパー関数です。
|
| UInt32 |
GetTimeMS( Void ) 現在の時刻をミリ秒で返します。
|
| UInt32 |
GetTimerExpiration(
PFNNOTIFY notify
, VoidPtr data = null
) デバイスのユーザーコールバックまたはユーザーデータに関連付けられたタイマーが満了するまでの残存時間をミリ秒で返します。
|
| UInt32 |
GetUpTimeMS( Void ) デバイスに電源が投入されてからの経過時間をミリ秒で返します。
|
| Bool |
HandleEvent(
AEEEvent event
, UInt16 wParam
, UInt32 dwParam
) HandleEvent( SFXEventConstRef event ) 指定された標準 AEE イベントを現在アクティブなアプレットに送ります。
|
| Bool |
IsValidResource(
ACharConstPtr file
, UInt16 id
, ResType resType
, AEEHandlerType handlerType
) IsValidResource( SFXAnsiStringConstRef file , UInt16 id , ResType resType , AEEHandlerType handlerType )
指定されたリソースファイルのエントリが、
指定されたタイプについて有効かどうかをチェックします。
|
| SFBBitmapSmp |
LoadBitmap(
ACharConstPtr file
) LoadBitmap( SFXAnsiStringConstRef file )
ビットマップ ファイルからビットマップを直接読み込み、
そのビットマップを扱う SFBBitmap クラスのインスタンスを返します。
|
| SFBImageSmp |
LoadBusyImage( Void ) BREW がビジーであることを示すために使われる画像をロードします。
|
| SFBImageSmp |
LoadImage(
ACharConstPtr file
) LoadImage( SFXAnsiStringConstRef file )
画像ファイルからイメージ データを直接読み込み、
そのイメージ データを扱う SFBImage クラスのインスタンスを返します。
|
| SFBBitmapSmp |
LoadResBitmap(
ACharConstPtr resFile
, UInt16 id
) LoadResBitmap( SFXAnsiStringConstRef resFile , UInt16 id )
指定されたリソースファイルから ID に対応するビットマップを読み込み、
そのビットマップを扱う SFBBitmap クラスのインスタンスを返します。
|
| VoidPtr |
LoadResData(
ACharConstPtr resFile
, UInt16 id
, ResType type
) LoadResData( SFXAnsiStringConstRef resFile , UInt16 id , ResType type )
指定されたリソースファイル、ID、およびタイプに関連付けられた
データブロックを返します。
|
| VoidPtr |
LoadResDataEx(
ACharConstPtr resFile
, UInt16 id
, ResType type
, VoidPtr buf
, UInt32Ptr size
) LoadResDataEx( SFXAnsiStringConstRef resFile , UInt16 id , ResType type , SFXBufferPtr buf ) LoadResDataEx( SFXAnsiStringConstRef resFile , UInt16 id , ResType type , VoidPtr buf , UInt32Ptr size )
指定されたリソース ファイルから ID とタイプで指定されたリソース データを読み込み、
buf で指定されたバッファに格納します。
|
| SFBImageSmp |
LoadResImage(
ACharConstPtr resFile
, UInt16 id
) LoadResImage( SFXAnsiStringConstRef resFile , UInt16 id )
指定されたリソース ファイルから ID に対応するイメージを読み込み、
そのイメージを扱う SFBImage クラスのインスタンスを返します。
|
| SFBBaseSmp |
LoadResObject(
ACharConstPtr resFile
, UInt16 id
, AEECLSID clsidBase
) LoadResObject( SFXAnsiStringConstRef resFile , UInt16 id , AEECLSID clsidBase )
指定されたリソース ファイルから ID とタイプが一致するリソースを読み込み、
そのリソースを扱うクラスのインスタンスを返します。
|
| SFBSoundPlayerSmp |
LoadResSound(
ACharConstPtr resFile
, UInt16 id
) LoadResSound( SFXAnsiStringConstRef resFile , UInt16 id ) リソースファイルに未加工のストリームバイトのサウンドデータが含まれている場合に使用します。
|
| SInt32 |
LoadResString(
ACharConstPtr resFile
, UInt16 id
, WCharPtr buf
, SInt32 size
)
指定したリソースファイルに格納された UNICODE または ISOLATIN 文字列を取得します。
|
| SFXWideString |
LoadResString(
SFXAnsiStringConstRef resFile
, UInt16 id
)
指定したリソースファイルに格納された UNICODE または ISOLATIN 文字列を取得します。
|
| SInt32 |
LoadResString(
ACharConstPtr resFile
, UInt16 id
, SFXWideStringPtr string
) LoadResString( SFXAnsiStringConstRef resFile , UInt16 id , SFXWideStringPtr string )
指定したリソースファイルに格納された UNICODE または ISOLATIN 文字列を取得します。
|
| SFBSoundPlayerSmp |
LoadSound(
ACharConstPtr resFile
) LoadSound( SFXAnsiStringConstRef resFile )
サウンド ファイルからサウンド データを直接読み込み、
そのサウンドを扱う SFBSoundPlayer クラスのインスタンスを返します。
|
| Bool |
MessageBox(
ACharConstPtr resFile
, UInt16 titleId
, UInt16 textId
) MessageBox( SFXAnsiStringConstRef resFile , UInt16 titleId , UInt16 textId )
指定されたリソース ファイルから ID を元にタイトルとテキストを取得し、
メッセージ ボックスを表示します。
|
| Bool |
MessageBoxText(
WCharConstPtr title
, WCharConstPtr text
) MessageBoxText( SFXWideStringConstRef title , SFXWideStringConstRef text )
引数で指定された文字列を使用してタイトルとテキストを設定し、
メッセージ ボックスを表示します。
|
| SFCError |
Notify(
AEECLSID clsid
, UInt32 mask
, VoidPtr data
)
特定のイベントが発生したことを指定されたアプレットに通知します。
|
| Void |
OnAppClose(
AEECallback* callback
)
アプレットの終了時に呼び出されるコールバック関数を登録します。
|
| Void |
OnExit(
AEECallback* callback
)
BREW の終了時に呼び出されるコールバック関数を登録します。
|
| Void |
OnInit(
AEECallback* callback
)
BREW の初期化時に呼び出されるコールバック関数を登録します。
|
| Void |
OnLowRAM(
AEECallback* callback
)
システムのメモリが少量になったときに呼び出されるコールバック関数を登録します。
|
| Void |
OnLowStorage(
AEECallback* callback
)
ファイルシステム容量が少量になったときに呼び出されるコールバック関数を登録します。
|
| Void |
OnModUnload(
AEECallback* callback
)
モジュールがアンロードされる直前に呼び出されるコールバック関数を登録します。
|
| Bool |
PostEvent(
AEECLSID clsid
, AEEEvent event
, UInt16 wValue
, UInt32 dwValue
) PostEvent( AEECLSID clsid , SFXEventConstRef event ) 指定されたアプレットに対し非同期イベントをポストします。
|
| Bool |
PostEventEx(
UInt16 flags
, AEECLSID clsid
, AEEEvent event
, UInt16 wValue
, UInt32 dwValue
) PostEventEx( UInt16 flags , AEECLSID clsid , SFXEventConstRef event )
指定されたアプレットに対し非同期イベントをポストします。
|
| Bool |
Prompt(
AEEPromptInfo* info
) アプリケーションがマルチ選択のプロンプトを表示するメカニズムを備えています。
|
| Bool |
QueryClass(
AEECLSID clsid
, AEEAppInfo* info
)
指定されたクラスまたはアプレットが、サポートされているかどうかを確認します。
|
| SFCError |
RegisterHandler(
AEECLSID clsidBase
, ACharConstPtr in
, AEECLSID clsid
) RegisterHandler( AEECLSID clsidBase , SFXAnsiStringConstRef in , AEECLSID clsid )
コンテンツビューアまたはプロトコルエンジンが自らを
AEE シェルに登録します
|
| SFCError |
RegisterNotify(
AEECLSID clsidNotify
, AEECLSID clsidType
, UInt32 mask
)
他のクラスから発行される通知を登録します。
この関数で登録した通知は、アプリケーションの実行中でのみ受け取りが可能です。
|
| Void |
RegisterSystemCallback(
AEECallback* callback
, SInt32 type
)
重要なシステムイベント (BREWの起動、アプリケーションの終了、モジュールのアンロードなど)
に対するコールバック関数を登録します。
|
| Void |
Resume(
AEECallback* callback
)
リジューム時に呼び出されるコールバック関数を登録します。
|
| Bool |
SendEvent(
AEECLSID clsid
, AEEEvent event
, UInt16 wParam
, UInt32 dwParam
) SendEvent( AEECLSID clsid , SFXEventConstRef event ) 指定したアプレットに対して、即座にイベントを送信します。
|
| SFCError |
SetAlarm(
AEECLSID clsid
, UInt16 code
, UInt32 minutes
) アラーム (満了までの時間が長い) をアプレットに設定します。
|
| SFCError |
SetAppPrefs(
UInt16 version
, VoidPtr config
, UInt16 size
) SetAppPrefs( UInt16 version , SFXBufferPtr config ) アプレット固有のプリファレンスが含まれる構造体を格納する方法を提供します。
|
| SFCError |
SetPrefs(
AEECLSID clsid
, UInt16 version
, VoidPtr config
, UInt16 size
) SetPrefs( AEECLSID clsid , UInt16 version , SFXBufferPtr config ) アプレット固有のプリファレンスを設定します。
|
| SFCError |
SetTimer(
SInt32 mSecs
, PFNNOTIFY notify
, VoidPtr data = null
) タイマーを設定します。
|
| SFCError |
SetTimerEx(
SInt32 mSecs
, AEECallback* callback
) コールバック構造体を使用してタイマーを設定します。
|
| Bool |
ShowCopyright( Void ) アプレットの著作権情報を表示します。
|
| SFCError |
StartApplet(
AEECLSID clsid
)
指定されたクラス ID に関連付けられたアプレットを起動します。
|
| SFCError |
StartAppletArgs(
AEECLSID clsid
, ACharConstPtr args
) StartAppletArgs( AEECLSID clsid , SFXAnsiStringConstRef args )
指定されたクラス ID に関連付けられたアプレットを起動し、
コマンドライン引数を渡します。
|
| SFCError |
StartAppletEx(
AEECLSID clsid
, UInt16 flags
)
指定されたフラグに従って、クラス ID に関連付けられたアプレットを起動します。
|
| SFCError |
UnregisterHandler(
SFXAnsiStringConstRef in
) 登録したハンドラをデータベースから削除します。
|
[ public ] AEECLSID ActiveApplet(Void);
BREW API ISHELL_ActiveApplet | SFBShell::StartApplet | SFBShell::CloseApplet | SFBShell::CanStartApplet
[ public ] Bool AlarmsActive(Void);
[ public ] Void BrowseFile( ACharConstPtr file // ファイル名 );
[ public ] Void BrowseFile( SFXAnsiStringConstRef file // ファイル名 );
BREW API ISHELL_BrowseFile | SFBShell::RegisterHandler | SFBShell::GetHandler | SFBShell::BrowseURL
[ public ] Void BrowseURL( ACharConstPtr url // URL );
[ public ] Void BrowseURL( SFXAnsiStringConstRef url // URL );
BREW API ISHELL_BrowseURL | SFBShell::RegisterHandler | SFBShell::GetHandler | SFBShell::BrowseFile
[ public ] Bool Busy(Void);
BREW API ISHELL_CanStartApplet | SFBShell::StartApplet | SFBShell::CloseApplet | SFBShell::ActiveApplet
[ public ] SFCError CancelTimer( PFNNOTIFY notify = null // コールバック関数 VoidPtr data = null // ユーザーデータ );
設定中のタイマーをキャンセルします。
SFBShellSmp shell = SFBShell::GetInstance(); // 設定中のタイマーをキャンセルします。 shell->CancelTimer(OnTimerEntry, this);
[ public ] Bool CheckPrivLevel( UInt16 privilege // 特権ビット Bool queryOnly = true // 問い合わせのみの場合は true を指定する。 );
ファイルにアクセスできるか確認します。
Bool ok = false; SFBShellSmp shell = SFBShell::GetInstance(); // アプレットの特権レベルを確認します。 // ファイルにアクセスできるか確認します。 ok = shell->CheckPrivLevel(PL_FILE, true);
アプレットをクローズします。
SFBShellSmp shell = SFBShell::GetInstance(); // アプレットをクローズします。 shell->CloseApplet(false);
BREW API ISHELL_CloseApplet | SFBShell::StartApplet | SFBShell::CanStartApplet | SFBShell::ActiveApplet
[ public ] SFCError CreateDialog( ACharConstPtr resFile // リソース ファイル UInt16 id // リソース ID );
[ public ] SFCError CreateDialog( DialogInfo* info // ダイアログ情報の代わりとなる構造体。 );
[ public ] SFCError CreateDialog( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID );
BREW API ISHELL_CreateDialog | DialogInfo | SFBShell::GetActiveDialog | SFBShell::EndDialog | SFBDialog::SetFocus | SFBDialog::GetControl
[ public ] SFCError CreateInstance( AEECLSID clsid // クラス ID SFBBaseSmpPtr handle // スマートポインタのポインタ );
[ public ] SFBBaseSmp CreateInstance( AEECLSID clsid // クラス ID );
[ public ] SFCError DetectType( VoidConstPtr data // データバッファ UInt32Ptr size // データサイズ ACharConstPtr name // オブジェクト名 ACharConstHandle mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError DetectType( SFXBufferConstRef data // データバッファ UInt32Ptr additional // 出力時、型検出のために必要な余分のバイト数。(バッファサイズに自動的に初期化される) ACharConstPtr name // オブジェクト名 ACharConstHandle mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError DetectType( VoidConstPtr data // データバッファ UInt32Ptr size // データサイズ SFXAnsiStringConstRef name // オブジェクト名 SFXAnsiStringPtr mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError DetectType( SFXBufferConstRef data // データバッファ UInt32Ptr additional // 出力時、型検出のために必要な余分のバイト数。(バッファサイズに自動的に初期化される) SFXAnsiStringConstRef name // オブジェクト名 SFXAnsiStringPtr mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError DetectType( VoidConstPtr data // データバッファ UInt32Ptr size // データサイズ SFXAnsiStringPtr mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError DetectType( SFXBufferConstRef data // データバッファ UInt32Ptr additional // 出力時、型検出のために必要な余分のバイト数。(バッファサイズに自動的に初期化される) SFXAnsiStringPtr mime // MIME 文字列を受け取るハンドル );
[ public ] SFCError EndDialog(Void);
BREW API ISHELL_EndDialog | SFBShell::CreateDialog | SFBShell::GetActiveDialog | SFBDialog::SetFocus | SFBDialog::GetControl
[ public ] Void EnumAppletInit(Void);
[ public ] AEECLSID EnumNextApplet( AEEAppInfo* info // 次のアプレット情報を受け取る領域を指すポインタ );
アプレットを列挙し、次のアプレットの情報を取得します。
SFBShellSmp shell = SFBShell::GetInstance();
AEEAppInfo appInfo = {0};
// アプレットの列挙を初期化します。
shell->EnumAppletInit();
// 次のアプレットの情報を取得します。
shell->EnumNextApplet(&appInfo);
[ public ] Bool ForceExit(Void);
[ public ] SFBDialogSmp GetActiveDialog(Void);
BREW API ISHELL_GetActiveDialog | SFBShell::CreateDialog | SFBShell::EndDialog | SFBDialog::SetFocus | SFBDialog::GetControl
[ public ] SInt32 GetAppAuthor( WCharPtr buf // 作成者名を格納するバッファ SInt32 size // バッファサイズ );
[ public ] SInt32 GetAppAuthor( SFXWideStringPtr string // 作成者名を格納するバッファ );
アプレットの作成者名を取得します。
SFBShellSmp shell = SFBShell::GetInstance(); SFXWideString author; // allocate the buffer to receive data author.SetLength(20); // アプレットの作成者名を取得します。 shell->GetAppAuthor(&author); // or shell->GetAppAuthor(author.GetBuffer(), sizeof(WChar) * author.GetLength());
[ public ] SInt32 GetAppCopyright( WCharPtr buf // 著作権文字列を格納するバッファ SInt32 size // バッファサイズ );
[ public ] SInt32 GetAppCopyright( SFXWideStringPtr string // 著作権文字列を格納するバッファ );
アプレットの著作権文字列を取得します。
SFBShellSmp shell = SFBShell::GetInstance(); SFXWideString copyright; // allocate the buffer to receive data copyright.SetLength(30); // アプレットの著作権文字列を取得します。 shell->GetAppCopyright(©right); // or shell->GetAppCopyright(copyright.GetBuffer(), sizeof(WChar) * copyright.GetLength());
[ public ] SInt32 GetAppPrefs( UInt16 version // プリファレンスのバージョン VoidPtr buf // プリファレンスデータ UInt16 size // プリファレンスデータのサイズ );
[ public ] SInt32 GetAppPrefs( UInt16 version // プリファレンスのバージョン SFXBufferPtr buf // null の場合、バッファとそのサイズとして null と 0 が API に渡されます。 );
[ public ] SInt32 GetAppVersion( WCharPtr buf // バージョン文字列を格納するバッファ SInt32 size // バッファサイズ );
[ public ] SInt32 GetAppVersion( SFXWideStringPtr string // バージョン文字列を格納するバッファ );
アプレットのバージョン文字列を取得します。
SFBShellSmp shell = SFBShell::GetInstance(); SFXWideString version; // allocate the buffer to receive data version.SetLength(20); // アプレットのバージョン文字列を取得します。 shell->GetAppVersion(&version); // or shell->GetAppVersion(version..GetBuffer(), sizeof(WChar) * version.GetLength());
この関数は、BREW 2.1 以降でのみ使用可能です。
BREW API ISHELL_GetClassItemID
[ public ] Void GetDeviceInfo( AEEDeviceInfo* info // デバイスの情報を受け取る領域を指すポインタ );
デバイスの情報を取得する関数です。 SophiaFramework では、SFXDevice を使用してデバイスの情報が取得できます。
デバイスの情報を取得します。
SFBShellSmp shell = SFBShell::GetInstance();
AEEDeviceInfo deviceInfo = {0};
// デバイスの情報を取得します。
shell->GetDeviceInfo(&deviceInfo);
[ public ] SFCError GetDeviceInfoEx( AEEDeviceItem item // デバイス項目 ID VoidPtr info // デバイス項目を格納するバッファ SInt32Ptr size // バッファサイズ );
[ public ] SFCError GetDeviceInfoEx( AEEDeviceItem item // デバイス項目 ID SFXBufferPtr info // サイズは自動的に変更される。 );
チップの ID を取得します。
SFBShellSmp shell = SFBShell::GetInstance();
WChar data[32] = {0};
SInt32 size;
// デバイスの情報 (チップ ID) を取得します。
shell->GetDeviceInfoEx(AEE_DEVICEITEM_CHIP_ID, data, &size);
[ public ] AEECLSID GetHandler( AEECLSID type // ハンドラタイプ、または基底クラス ID ACharConstPtr in // 入力文字列 );
[ public ] AEECLSID GetHandler( AEECLSID type // ハンドラタイプ、または基底クラス ID SFXAnsiStringConstRef in // 入力文字列 );
[ public, static ] SFBShellSmp GetInstance(Void);
SFBShell クラスのインスタンスを取得します。
SFBShellSmp shell = SFBShell::GetInstance();
[ public ] Void GetItemStyle( AEEItemType type // 項目タイプ AEEItemStyle* normal // 選択されていない項目のスタイルを受け取る領域を指すポインタ AEEItemStyle* selected // 選択中の項目のスタイルを受け取る領域を指すポインタ );
[ public ] Void GetJulianDate( UInt32 seconds // 1980 年 1 月 6 日からの秒数 JulianType* date // 日付データを受け取る領域を指すポインタ );
BREW API ISHELL_GetJulianDate | JulianType | GET_JULIANDATE | SFBShell::GetTimeMS | SFBShell::GetUpTimeMS | GET_SECONDS | GET_TIMEMS | GETTIMESECONDS | GETTIMEMS
[ public ] SInt32 GetPrefs( AEECLSID clsid // クラス ID UInt16 version // バージョン VoidPtr config // プリファレンス データ UInt16 size // プリファレンス データ サイズ );
[ public ] SInt32 GetPrefs( AEECLSID clsid // クラス ID UInt16 version // バージョン SFXBufferPtr config // null の場合、バッファポインタとそのサイズを null, 0 として API が呼ばれます。 );
[ public ] UInt32 GetResSize( ACharConstPtr file // リソース ファイル UInt16 id // リソース ID ResType type // リソースのタイプ UInt32Ptr size // バッファサイズ );
[ public ] UInt32 GetResSize( SFXAnsiStringConstRef file UInt16 id ResType type UInt32Ptr size );
[ public ] UInt32 GetTimeMS(Void);
[ public ] UInt32 GetTimerExpiration( PFNNOTIFY notify // コールバック関数 VoidPtr data = null // ユーザーデータ );
タイマー満了までの残り時間を取得します。
// タイマー用コールバック関数 static Void OnTimerEntry(VoidPtr arg); SFBShellSmp shell = SFBShell::GetInstance(); UInt32 duration = 0; // タイマー満了までの残り時間を取得します。 duration = shell->GetTimerExpiration(OnTimerEntry, this);
[ public ] UInt32 GetUpTimeMS(Void);
[ public ] Bool HandleEvent( AEEEvent event // AEE イベント UInt16 wParam // イベント固有の 16 ビット値 UInt32 dwParam // イベント固有の 32 ビット値 );
[ public ] Bool HandleEvent( SFXEventConstRef event );
[ public ] Bool IsValidResource( ACharConstPtr file // リソース ファイル UInt16 id // リソース ID ResType resType // リソース タイプ AEEHandlerType handlerType // ハンドラ タイプ );
[ public ] Bool IsValidResource( SFXAnsiStringConstRef file // リソース ファイル UInt16 id // リソース ID ResType resType // リソース タイプ AEEHandlerType handlerType // ハンドラ タイプ );
[ public ] SFBBitmapSmp LoadBitmap( ACharConstPtr file // ファイル名 );
[ public ] SFBBitmapSmp LoadBitmap( SFXAnsiStringConstRef file // ファイル名 );
[ public ] SFBImageSmp LoadBusyImage(Void);
[ public ] SFBImageSmp LoadImage( ACharConstPtr file // 画像ファイル名 );
[ public ] SFBImageSmp LoadImage( SFXAnsiStringConstRef file // 画像ファイル名 );
BREW API ISHELL_LoadImage | SFBShell::LoadResData | SFBShell::LoadResImage | SFBShell::LoadResObject | SFBShell::LoadResSound | SFBShell::LoadResString | SFBShell::LoadSound | SFBShell::FreeResData
[ public ] SFBBitmapSmp LoadResBitmap( ACharConstPtr resFile // リソース ファイル UInt16 id // リソース ID );
[ public ] SFBBitmapSmp LoadResBitmap( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID );
リソース ファイルからビットマップを取得し、 端末画面に表示します。
// リソース ファイルから読み込むビットマップのリソース ID
#define IDB_MY_PICTURE 0x0001
SFBShellSmp shell = SFBShell::GetInstance();
SFBDisplaySmp display = SFBDisplay::NewInstance();
SFBBitmapSmp bmp;
// リソース ファイルからビットマップを取得します。
bmp = shell->LoadResBitmap(MYRESOURCE_RES_FILE, IDB_MY_PICTURE);
if (bmp != null) {
// ビットマップを描画します。
display->BitBlt(SFXRectangle(0, 0, 100, 100), bmp, SFXGrid(0, 0));
// 画面を更新します。
display->Update();
}
[ public ] VoidPtr LoadResData( ACharConstPtr resFile // リソース ファイル UInt16 id // リソース ID ResType type // リソース タイプ );
[ public ] VoidPtr LoadResData( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID ResType type // リソース タイプ );
BREW API ISHELL_LoadResData | ResType | SFBShell::LoadImage | SFBShell::LoadResImage | SFBShell::LoadResObject | SFBShell::LoadResSound | SFBShell::LoadResString | SFBShell::LoadSound | SFBShell::FreeResData
[ public ] VoidPtr LoadResDataEx( ACharConstPtr resFile // リソース ファイル UInt16 id // リソース ID ResType type // リソース タイプ VoidPtr buf // リソース データを格納するバッファ UInt32Ptr size // バッファサイズ );
[ public ] VoidPtr LoadResDataEx( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID ResType type // リソース タイプ VoidPtr buf // リソース データを格納するバッファ UInt32Ptr size // バッファサイズ );
[ public ] VoidPtr LoadResDataEx( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID ResType type // リソース タイプ SFXBufferPtr buf // リソース データを格納するバッファ );
[ public ] SFBImageSmp LoadResImage( ACharConstPtr resFile // リソース ファイル UInt16 id // リソース ID );
[ public ] SFBImageSmp LoadResImage( SFXAnsiStringConstRef resFile // リソース ファイル UInt16 id // リソース ID );
リソース ファイルからビットマップ イメージを取得し、 端末画面に表示します。
// リソース ファイルから読み込むビットマップのリソース ID #define IDB_MY_PICTURE 0x0001 SFBShellSmp shell = SFBShell::GetInstance(); SFBImageSmp image; AEEImageInfo image