C
Qul::Application Class
class Qul::ApplicationアプリケーションクラスはQt Quick Ultralite を起動するために使用されます。もっと見る...
| Header: | #include <qul/application.h> |
| Since: | Qt Quick Ultralite 1.2 |
パブリック関数
| Application(const Qul::ApplicationConfiguration &applicationConfigs) | |
| void | exec() |
| void | setRootItem(Qul::RootItem *root) |
| Qul::ApplicationSettings & | settings() |
| const Qul::ApplicationSettings & | settings() const |
(since Qt Quick Ultralite 1.8) uint64_t | update() |
静的パブリックメンバー
| void | addFilesystem(Qul::PlatformInterface::Filesystem *filesystem) |
| void | addImageDecoder(Qul::PlatformInterface::ImageDecoder *imagedecoder) |
| void | addImageProvider(const char *providerId, Qul::ImageProvider *provider) |
| void | addMapTileFetcher(Qul::MapTileFetcher *tilefetcher) |
| void | registerGeoPositionSource(Qul::GeoPositionSource *positionSource) |
マクロ
詳細説明
このクラスを構築すると、Qt Quick Ultraliteが初期化されます。通常、main() 関数で構築され、起動時に表示される項目はsetRootItem() で設定され、exec() がイベントループに入るために呼び出されます。ハードウェアはQul::initHardware()または独自のコードで初期化する必要があります。イベントループに入る前に、Qt Quick Ultralite プラットフォームは、Qul::initPlatform() によって初期化されなければなりません。例えば、QMLで定義されたルート項目がMainと呼ばれる場合です:
Qul::initHardware(); // Optional Qul::initPlatform(); Qul::Application app; static struct Main item; app.setRootItem(&item); app.exec();
Qt Quick Ultraliteをアプリケーションで動かすも参照してください 。
メンバ関数ドキュメント
Application::Application(const Qul::ApplicationConfiguration &applicationConfigs)
Qul::ApplicationConfiguration インスタンスを引数に持つ Application クラスの代替コンストラクタです。デフォルトのコンストラクタではなく、このコンストラクタを使用することで、 テキストキャッシュの有効/無効やテキストキャッシュのサイズなどの設定が行われます。
[static] void Application::addFilesystem(Qul::PlatformInterface::Filesystem *filesystem)
file:// url スキームを使用してファイルを開く際に検索するファイルシステムを追加します。
アプリケーションはfilesystem の所有権を取りません。
ファイルシステムの実装と使用の詳細については、ファイルシステムのドキュメントを参照してください。
Qul::PlatformInterface::Filesystemも参照してください 。
[static] void Application::addImageDecoder(Qul::PlatformInterface::ImageDecoder *imagedecoder)
画像を読み込む際に検索する画像デコーダを追加します。
アプリケーションはimagedecoder の所有権を持ちません。
カスタム画像デコーダの実装と使用方法の詳細については、画像デコーダのドキュメントを参照してください。
Qul::PlatformInterface::ImageDecoderも参照してください 。
[static] void Application::addImageProvider(const char *providerId, Qul::ImageProvider *provider)
image:// urlスキームで画像をリクエストする際に使用するprovider を設定します。ホストはproviderId です。
アプリケーションはprovider の所有権を持ちません。
画像プロバイダの実装と使用方法についてはImageProvider のドキュメントを参照してください。QMLソースファイルを読み込む前に、必要な画像プロバイダをすべてエンジンに追加しておく必要があります。
providerId はヌル終端でなければなりません。
[static] void Application::addMapTileFetcher(Qul::MapTileFetcher *tilefetcher)
Map アイテムがマップタイルの画像を要求するときに使用するマップタイルフェッチャーを追加します。
アプリケーションはtilefetcher の所有権を持ちません。
マップタイルフェッチャーの実装の詳細については、マップタイルフェッチャーの統合を参照してください。
Qul::MapTileFetcherも参照してください 。
void Application::exec()
Qt Quick Ultraliteのイベントループに入り、戻らない。
[static] void Application::registerGeoPositionSource(Qul::GeoPositionSource *positionSource)
PositionSource アイテムが位置情報を要求するときに使用するジオポジションソースを登録する。
アプリケーションはpositionSource の所有権を持たない。
ジオポジションソースの実装の詳細については、ジオポジションソースの統合を参照してください。
Qul::GeoPositionSourceも参照してください 。
void Application::setRootItem(Qul::RootItem *root)
アプリケーション起動時に表示される項目をroot に設定する。アイテムはQMLで定義され、それらをC++で表現する構造体は生成されたヘッダで定義されます。
Qul::ApplicationSettings &Application::settings()
Application を設定するための便利なApplicationSettings オブジェクトを返します。
const Qul::ApplicationSettings &Application::settings() const
これはオーバーロードされた関数である。
[since Qt Quick Ultralite 1.8] uint64_t Application::update()
Qt Quick Ultraliteコアエンジンを更新
アプリケーションコード内でメインループを実装する場合、この関数を使用してQt Quick Ultralite コアエンジンを更新します。Qt Quick Ultraliteコアエンジンが次回呼び出される予定のタイムスタンプを返します。現在のタイムスタンプよりも小さいタイムスタンプ、または0であっても、できるだけ早くupdate()を呼び出す必要があります。現在のタイムスタンプよりも大きなタイムスタンプ値は、プラットフォーム実装が指定された時間にupdate()を呼び出す必要があることを意味します。スケジュールされた時刻まで、デバイスはスリープ・モードに入る可能性がある。
exec() を使用する場合、この機能は必要ない。
Qul::initHardware(); Qul::initPlatform(); Qul::Application app; static MainScreen item; app.setRootItem(&item); while (true) { uint64_t now = Qul::Platform::getPlatformInstance()->currentTimestamp(); // <handle timers> uint64_t nextUpdate = app.update(); if (nextUpdate > now) { // Device can go to sleep until next update is due // enterLowPowerMode(nextUpdate - now); } }
この関数はQt Quick Ultralite 1.8 で導入された。
exec()も参照のこと 。
マクロ・ドキュメント
APP_DEFAULT_UILANGUAGE
生成されたエントリポイントを使用するときのアプリケーションのデフォルトのユーザーインターフェイス言語を設定します。
target_compile_definitions(<target> PRIVATE APP_DEFAULT_UILANGUAGE="fi_FI")
qul_add_targetおよび Qt Quick Ultralite による国際化とローカライズも参照してください 。
APP_SAFE_RENDERER
生成されたエントリポイントを使用する場合、SRB (Safe Renderer Bitmap) デコーダを有効にする。SRB デコーダーは、SafeImage やSafeText などのセーフティクリティカルアイテムを使用するアプリケーションに必要です。
target_compile_definitions(<target> PRIVATE APP_SAFE_RENDERER)
qul_add_targetも参照してください 、 Qt Quick Ultralite Safe Renderer QML TypesおよびQt Quick セーフティクリティカルアイテムを使用する Ultralite アプリケーションも参照してください。
特定の Qt ライセンスの下で利用可能です。
詳細を確認してください。