クロスプラットフォームのテキスト エディターである Sublime Text 2 のファンとして、私はそれがどのように開発されたかについて調査を行ってきました。開発者は、Linux 用の GTK を使用した 99% の C++ であり、「Sublime GUI」と呼ばれるカスタム UI ツールキットを使用していると述べています。これは開発者からの引用です
Sublime Text 2 自体はカスタム UI ツールキットを使用しています。これが意味をなさないアプリはたくさんありますが、ツールキットに関係なく多くの UI コントロールをカスタムにする必要があることを常に知っていた Sublime Text にとっては、それほど不合理な選択ではありません (たとえば、テキスト コントロールとタブ コントロール)。UI ツールキットはクロス プラットフォームの抽象化レイヤーの上に置かれます。これは、最小公分母ではなく、プラットフォーム機能の結合です。
私の質問は、クロスプラットフォームの抽象化レイヤーのオプションは何ですか? これは、GTK、QT、SDL よりも低いレベルにあると思います。クロス プラットフォームで、コードを 1 回だけ記述する必要があるカスタム UI ツールキットを作成する方法を理解しようとしています。
UI Toolkit のメリットはありがたいのですが、Windows、Linux、Mac で自分のアプリケーションをサポートしたい場合、どこから始めればよいかわかりません。