我希望能够在代码块中输入选项。就像我想做的那样gcc -P test.c
。我该怎么做呢?基本上,我希望代码块在prompt box
每次编译时都给出一个,以便我可以在该框中输入选项。该功能在代码块中可用吗?
问问题
352 次
1 回答
2
Code::Blocks 中没有您希望在更新答案中出现的行为。
但是,如果您花时间为此编写插件,您应该能够获得这种行为(应该不到一个小时,取决于您的 wxWidgets 技能,弹出对话框的 GUI 位可能是最难的事情)。
要么写一个脚本插件(据说这是最简单和最快的方法,虽然我从来没有这样做过,所以不能确定)——看看share/codeblocks/scripts/sample_plugin.script
,看看你是否可以适应——或者用 C++ 写一个合适的插件.
编辑:脚本插件上的一些稀疏文档。
例如查看src/plugins/autosave/autosave.[h|cpp]
(这是最原始的插件之一)以了解这是如何完成的。像这样的东西应该工作:
- 从 派生一个类
cbPlugin
,将所有纯虚拟实现为{}
(不需要它们) - 将 a
namespace { PluginRegistrant<YourClassName> reg(_T("Readable Plugin Name")); }
放入源文件 EVT_COMMAND(cbEVT_COMPILER_STARTED...)
在您的街区内注册BEGIN_EVENT_TABLE/END_EVENT_TABLE
。- 在您的事件处理程序中,弹出对话框,读出文本框,然后修改您想要的任何设置。修改编译器的设置,或者使用事件中包含的指向项目的指针,这使您可以使用自己的设置访问项目设置和目标
- 您可能也想撤消您的更改。做同样的事情
cbEVT_COMPILER_FINISHED
,恢复原始设置
或者,一个人可能只是在收到时调用cbProject::ShowOptions()
(毕竟,该事件为您提供了一个指向 a 的指针cbProject
,所以为什么不直接使用它)cbEVT_COMPILER_STARTED
,这应该会调出内置选项对话框。
于 2012-10-19T10:04:22.037 回答