はじめに
Qt 4.
表1 Qt 4.
リリース日 | バージョン |
---|---|
2009/ | Qt 4. |
2009/ | Qt 4. |
2009/ | Qt 4. |
リリースされてすでに半年以上が過ぎていますので,
Qt 4. 5の改善と新機能の概要
Qt 4.
Qt WebKitインテグレーション
Qt WebKitインテグレーションはQt 4.
- ACID3スコアが100/
100になり, Web標準をクリアしたWebブラウザがQtで利用できるようになりました。 イメージとフォントのフルページズーミング
イメージとフォントの両方,あるいはどちらか片方のズーミングができます。 CSSベースの図形変換とアニメーション
JavaScriptエンジンの速度改善
NetscapeプラグインAPI
(NPAPI)
UNIX/Linux X11, Mac OS X, Windowsで使用できます。残念なことですが, これら以外のプラットフォームへの対応予定はロードマップにありません。Flash Playerプラグインなどが使え, YouTubeのFLV動画再生ができます。SWFも, Linuxでは32ビットと64ビットで共に使えます。しかし, Mac OS Xでは, SWFはマウス操作もキー操作もできないため, SWFは扱えませんでした。同じようにWebKitを使っているSafariでは問題なくSWFを使えます。 Phononインテグレーション
HTML 5のオーディオとビデオの各エレメントによる音声と動画がサポートされています。クライアントサイドデータベースストレージ
QtとのインターフェースのためにQWebDatabaseが追加され, QWebSettingsにsetOfflineStoragePath(), offlineStoragePath(), setOfflineStorageDefaultQuota(), offlineStorageDefaultQuota()などのメソッドが追加されています。
パフォーマンス改善
X11でのMIT-SHM
(MIT Shared Memory Extension) の利用
昨年の特集記事で触れたように,MIT-SHMを利用することで, イメージデータがメモり共有され, X11 のクライアントとサーバ間での一番のボトルネックが解消され, イメージの回転や拡大縮小表示で, 劇的な描画速度改善がされています。次項のラスターグラフィックスエンジンを指定すると, MIT-SHMが有効になります。 ラスターグラフィックスシステム
描画エンジンがプラグイン化され,ラスター, OpenGL, プラットフォーム固有のものから, 目的に合ったものを選択できるようになりました。コマンドラインオプション-graphicssystemでraster, opengl, nativeを指定するか, QApplication::setGraphicsSystem (const QString& system) で, グラフィックシステムを切り替えられます。 QTestLibへのベンチマーク機能の追加
実時間,CPUクロックカウント, Valgrind/ Callgrind, イベントカウントなどの計測機能があります。 OpenGL ES 2.
0ベースの描画エンジン
OpenGL描画エンジンとしてOpenGL ESも使えるようになりました。
Mac OS X Cocoa サポート
Qt/
configureのデフォルトはCarbonで,
表2 Qt/
オプション | 結果 |
---|---|
-cocoa | 32ビット Cocoa |
-arch x86_ | 64ビット Cocoa |
-arch "x86 x86_ | 32ビットと64ビット Cocoa |
今後のリリースではCocoaがデフォルトになり,
QMacCocoaViewContainerとQMacNativeWidgetの2つのクラスが追加され,
また,
Cocoaサポートとは関係がありませんが,
Windows CEサポート
Windows CEでPhononとWebKitが利用可能になりました。
QtXmlPatternsでXSLTサポート
XQueryとXPathをサポートしているQtXmlPatternsで,
Qtスクリプトデバッガ
QtのECMAScript
OpenDocumentファイルフォーマットの出力
PostScriptやPDFに加えて,
この機能の説明とサンプルコードは,
ネットワークプロキシーサポートの改善
Qt DesignerとQt Linguistの改良
これについては別項で詳しく説明します。
グラフィック機能の改善
トップレベルウィンドウの透過度設定
(Qt 4. 5: QWidget Class Reference)
ウィンドウ属性Qt::WA_TranslucentBackgroundが追加され, トップレベルウィンドウに, ピクセル単位で透過度を設定できるようになりました。X11とWindowsでは, ウィンドウフラグQt::FramelessWindowHintの設定が必要で, 以下の使用条件があります。 X11…ARGBビジュアルとコンポジットウィンドウマネージャがサポートされたXサーバが必要
Windows…Windows 2000以降
マウスイベントが効くかどうかが透明度で決まり,
スタイルシート
Mac OS Xでもスタイルシートがウィジェットで使えるようになりました。