Table of Contents
Delphi 12の 12 × 12の新機能
RAD Studio 12には、C++Builder向けにいくつかの優れた改善点が含まれており、リリースウェビナーやブログなどのオンラインコンテンツでもその点をを強調しています。しかしながら、Delphi開発者にとっても素晴らしいリリースとなっております。Delphi 12.0で行われた12の改善点をそれぞれ12個の項目にまとめました。つまり、Delphi 12の12の改善点のリストではありません。12×12 = 144 個の改善点のリストに、ネイティブ Windows向けの 6 個の改善点を加えると、合計はなんと150個になります。このブログでは、Delphi サイドの改善点を強調したいため、C++Builder向けに行われた改善点はすべて除きます。(ただし、以下の紹介する項目は、実際にはDelphi/C++Builder両方で利用可能な機能です)
- 第1回「Delphi 12における3 x 12 VCLの機能強化」
- 第2回「Delphi 12における3 x 12 FireMonkeyとAndroidの機能強化」
- 第3回「Delphi 12における3 x 12 データ、インターネット、RTLの機能強化」
- シリーズ最後となる今回は、IDE、インストーラ、Delphi言語に関するそれぞれの分野で12個ずつの新機能、さらにWindows API統合に関する6個の追加機能を紹介いたします。なお今回のブログを含む全4回のDelphiの新機能を全て合わせると合計150個になります。
IDE
- ファイルの検索ダイアログに「サブディレクトリの除外マスク」オプションを追加
- エラーインサイトのヒント、ナビゲーションツールバー、コールスタックに構文の強調表示を追加
- 構造ビューでは、メソッドと型が強調表示され、構造ペインのエラーインサイトのメッセージにも構文の強調表示を追加
- [オプション…|IDE|保存とリカバリ]のページに、エディタの状態を保存するための新しいチェックボックスを追加
- IDEのテーマを変更するとMarkdownウィンドウの色も変更される
- ウェルカムページがスムーズなマウスホイールスクロールに対応
- GDIのビットマップ数は、1分以上使用されなかった場合、画像が休止状態になり、IDE全体で減少するように対応
- Delphi LSPベースのコード補完で、コードテンプレートと言語キーワードを表示するように変更
- コード補完機能に配列のかっこ [ ] が配列型に追加され、、中にキャレットが配置されるように変更
- すべてのプラットフォームの単一アイコンウィザード
- PAServer メッセージ(ヒントを含む)が、IDE メッセージ ペインに表示されるように変更
- 新しいToolsAPI、IOTARawEditReaderインターフェイス
GetItとインストーラー
- プラットフォームマネージャから機能マネージャへ名称の変更
- 機能マネージャは、標準のVCLコントロールとスタイルで構築され、UIを刷新
- 機能マネージャでは、インストールする機能やオプションはすべて1つの画面で表示
- 機能マネージャでは、インストールする言語とプラットフォームを分割
- 機能マネージャでは、デスクトップやモバイルなどの一般的なシナリオのためのプリセット構成を提供
- 機能マネージャに新しい「エラー」ボタンが追加され、インストールエラーが直接表示されるようになり、エラーログファイルへの直接リンクを追加
- GetItCmd コマンドラインツールが GetItInstall.log ファイルにログを記録するように変更
- GetIt パッケージ マネージャに”複数のパッケージを読み込む”機能が追加され、1 回の操作で複数のローカル GetIt パッケージの読み込みが可能
- バンドルされているDUnitXバージョンの更新
- バンドルされているIndyバージョンの更新
- 長い間非推奨となっていたVCLトランスレーションツールがコア機能から削除(別途インストールが必要)
- IDEに必ずインストールされていたモデリングサポートは非常に古い機能のため今後は廃止予定。12.0ではインストール時に機能マネージャからオプションとして選択可能
Delphi言語
- 255文字以上の長い文字列リテラル
- 複数行の文字列リテラル
- 複数行の文字列の改行形式を指定するTEXTBLOCKディレクティブ
- プラットフォームによってIntegerまたはInt64にマップされる型であるNativeIntは、弱い型エイリアスに変更
- ジェネリッククラスにおける警告の改善
- 全てのLLVMベースのDelphiコンパイラで定義された新しいLLVMシンボル
- GraphVizファイルへの利用グラフのエクスポートオプション(-graphviz)
- GraphVizファイルからユニットのファミリーを除外する機能 (-graphviz-exclude)
- IEEE の要件による NaN 比較のサポート
- 除数が定数の場合の div 演算用に生成されるコードの最適化
- Systemユニットに2つの新しい関数、GetCompilerVersionとGetRTLVersionを追加
- すべてのプラットフォームで浮動小数点例外がデフォルトで無効
Windows プラットフォーム
- WinMD Microsoft メタデータに基づく新しい WinAPI 定義 (311 個のヘッダーファイルと 41 MB の Delphi コード)
- WinRT APIとWebView 2コントロールAPIが最新バージョンへ更新
- Edgeブラウザ: UserAgentはICoreWebView2Settingsで利用可能。ICoreWebView2Profile2にはClearBrowsingData、ClearBrowsingDataAll、ClearBrowsingDataInTimeRangeの各メソッド、TEdgeBrowser OnDownloadStartingイベント、NavigateWithWebResourceRequestメソッド、Printメソッド、ShowPrintUIメソッドを追加
- Windows 11の新しいスタイル
- Windows 11向けの TForm クラス: EnableImmersiveDarkMode メソッドと RoundedCorners プロパティ
- タイトルバーがWindows 11 スナップレイアウトをサポート
RAD Studio 12 Athensの詳細については、以下のリンクをご確認してください。