1

コードブロックにオプションを入力できるようにしたいです。私がやりたいようにgcc -P test.c。これを行うにはどうすればよいですか?基本的には、コード ブロックがprompt boxコンパイルするたびに を提供して、そのボックスにオプションを入力できるようにしたいと考えています。その機能はコード ブロックで利用できますか?

4

1 に答える 1

2

更新された回答で必要な動作は、Code::Blocks では利用できません。

ただし、そのためのプラグインを作成する時間を投資すれば、この動作を得ることができるはずです (wxWidgets のスキルに応じて、1 時間以内である必要があります。ダイアログをポップアップする GUI ビットがおそらく最も難しいでしょう)。

スクリプト プラグインを作成します (これが最も簡単で迅速な方法と言われていますが、私はそれを行ったことがないため、確かなことは言えません) -- を見てshare/codeblocks/scripts/sample_plugin.script、それを適応できるかどうかを確認してください -- または、C++ で適切なプラグインを作成します。 .
編集: script plugin に関するいくつかのまばらなドキュメント

たとえば、src/plugins/autosave/autosave.[h|cpp](最も原始的なプラグインの 1 つです) を見て、これがどのように行われるかを学んでください。このようなものが動作するはずです:

  • からクラスを派生させ、cbPluginすべての純粋な仮想を次のように実装します{}(それらは必要ありません)。
  • namespace { PluginRegistrant<YourClassName> reg(_T("Readable Plugin Name")); }ソースファイルにaを入れます
  • ブロックEVT_COMMAND(cbEVT_COMPILER_STARTED...)内に登録します。BEGIN_EVENT_TABLE/END_EVENT_TABLE
  • イベント ハンドラーで、ダイアログをポップアップし、テキスト ボックスを読み上げ、必要な設定を変更します。コンパイラの設定を変更するか、イベントに含まれるプロジェクトへのポインターを使用して、プロジェクトの設定とターゲットに独自の設定でアクセスできるようにします。
  • おそらく、変更を元に戻したいと思うでしょう。についても同じことcbEVT_COMPILER_FINISHEDを行い、元の設定を復元します

別の方法として、 cbProject::ShowOptions()(結局、イベントは へのポインターを提供するcbProjectので、それを使用しないでcbEVT_COMPILER_STARTEDください) を受信したときに呼び出すこともできます。これにより、組み込みのオプション ダイアログが表示されます。

于 2012-10-19T10:04:22.037 に答える