我正在写一个插件,将
Delphi IDE Theme Editor
与Rad Studio IDE(当前版本的这个工具作为外部应用程序一起运行),到目前为止,一切都正常工作(见下图),除了我无法想象的事实如何在Delphi IDE中刷新所选语法高亮颜色
让我解释一下,在标准选项中更改语法高亮颜色(Editor Options-> Color),您可以自定义任何元素并分配一个新的前景色和背景色,然后按下.好 .按钮IDE应用更改,IDE编辑器窗口将使用新设置进行更新.
目前,我可以修改和存储新的值,但是我不能指示Delphi IDE应用新的配置,更改只有在重新启动IDE时才可见.
我搜索了ToolsAPI单元,我发现IOTAEditOptions,IOTAHighlighter和IOTAHighlightServices接口,但没有一个似乎包括刷新(重新加载)修改的设置的选项.
此外,我尝试unmangle(使用tdump)并直接调用coreide1XX.bpl文件的功能,但这也不起作用.
00420B94 17411 1F39 Editcolorpage::TEditorColor:: 00422188 17400 1F3A __fastcall Editcolorpage::TEditorColor::ColorClick(System::TObject *) 0042174C 17407 1F3B __fastcall Editcolorpage::TEditorColor::ColorSpeedSettingClick(System::TObject *) 004224BC 17396 1F3C __fastcall Editcolorpage::TEditorColor::DefaultClick(System::TObject *) 00422414 17397 1F3D __fastcall Editcolorpage::TEditorColor::EditorColorBroadcast(System::TObject *,Winapi::Messages::TMessage&) 00421584 17409 1F3E __fastcall Editcolorpage::TEditorColor::EditorColorCreate(System::TObject *) 00421730 17408 1F3F __fastcall Editcolorpage::TEditorColor::EditorColorDestroy(System::TObject *) 004217B0 17406 1F40 __fastcall Editcolorpage::TEditorColor::ElementListClick(System::TObject *) 004222E8 17399 1F41 __fastcall Editcolorpage::TEditorColor::FontClick(System::TObject *) 004225DC 17395 1F42 __fastcall Editcolorpage::TEditorColor::HelpClick(System::TObject *) 00421AE8 17404 1F43 __fastcall Editcolorpage::TEditorColor::InitLineFlags(const System::DelphiInterface<Toolsapi::IOTAHighlighterPreview>) 004219B8 17405 1F44 __fastcall Editcolorpage::TEditorColor::InitSamplePane() 00421BC8 17403 1F45 __fastcall Editcolorpage::TEditorColor::InitSyntaxEditView(const System::DelphiInterface<Toolsapi::IOTAHighlighterPreview>) 0042262C 17393 1F46 __fastcall Editcolorpage::TEditorColor::LoadHighlightPreviews() 004225F4 17394 1F47 __fastcall Editcolorpage::TEditorColor::MarkDirty() 004220E4 17401 1F48 __fastcall Editcolorpage::TEditorColor::SampleClick(System::TObject *) 00422080 17402 1F49 __fastcall Editcolorpage::TEditorColor::SetColorSpeedSetting(Vedopts::TColorSpeedSetting) 0042238C 17398 1F4A __fastcall Editcolorpage::TEditorColor::UpdateSamplePane() 00422814 17392 1F4B __fastcall Editcolorpage::TEditorColor::tbsetPreviewsChange(System::TObject *,int,bool&) 004AA8D4 17390 1F4C __fastcall Editcolorpage::initialization() 00423C38 17413 1F4D __fastcall Editdisplaypage::Finalization()
如何指示Delphi IDE使用OTA(Open Tools API)刷新修改的语法高亮颜色?
如果您需要更多信息或问题不清楚,请告诉我们.