2011-01-11 5 views
3

My Qtベースのアプリケーションは、プラグイン(http://doc.qt.io/archives/4.6/plugins-howto.html#the-lower-level-api-extending-qt-applications)で拡張可能です。Qt:プラグインパラメータのC++動的パラメータGUI

これらのプラグインは独自のパラメータを持つことができます。(int型、ダブル、文字列、enumerations..etc)

私が何をしたいXMLでこのパラメータを定義し、で、XMLを解析することによって、動的にGUIを生成ファイル。

私はここでやや同様のアーキテクチャた - http://www.slicer.org/slicerWiki/index.php/Slicer3:Execution_Model_Documentation#Slicer3_GUI_Generation

を私はthis.OrのためのQtを使用することができます任意のライブラリ/フレームワークがあり、私は手動で地図にXML、マッピングパラメータを解析から、自分自身のコードを記述する必要があります、 XML要素をチェックするGUIを生成するなど...

ヒント?

+0

問題が一般的であり、プラグインに固有のものではないので、あなたは、あなたの質問を言い換えるする場合があります。 –

答えて

4

私は1年ほど前と同様のことをする必要がありました。それを簡単かつ迅速にするためのものは何も見つかりませんでした(link)。それを共有することはできません私は恐れています。あなた自身の役割。

明らかに、私はデザイナーアプリケーションによって生成されたXMLをリバースエンジニアリングし、いくつかのインターフェースでXMLの共通ブロックを再生成しました。 Qtのそれ以降のリリースではXMLが変更される可能性があり、私自身のXMLを検証するための単体テストが有効であったことに注意してください。

+0

これです。私は悲しいことに、私も共有することはできません同様の何かをしなければならなかった。 – badgerr

1

Qtとそのプラグインシステムを使用している場合は、プラグインからUI要素を返す関数を定義できるはずです。その要素を表示するだけで、その要素自体を処理する必要がありますが、プラグインの設定を処理することができます。すべてを指定するためにXMLインターフェイスを使うよりも簡単です。

4

あなたは、プログラムXML schemaを参照してください、*.uiファイルを作成することができます。その後、QtUiToolsを使ってそれらを即座にレンダリングできます。

1

QMLをご覧ください。

0

また、QScriptを使用して、UIと必要なものを制御できます。

3

チューリップはC++/Qtに基づいています:http://tulip.labri.fr/TulipDrupal/ デベロッパーチームは、プラグインの引数を渡すQVariantを置き換える独自の型を定義していると思います。彼らは様々な主要なタイプ、デフォルト引数、プラグインの様々なタイプを、サポートすることができ ...

ソースコードは次の場所にあります。http://sourceforge.net/projects/auber/files/

関連する問題