2401编辑器,好插件

原文

CScintillaCtrl,CScintillaView和CScintillaDocv1.82
Scintilla编辑控件的免费MFC和ATL/WTL包装类

这些类为Scintilla编辑控件(http://www.scintilla.org)提供MFC和ATL/WTL包装.此控件提供开源跨平台编辑控件.

部分功能包括语法高亮,调用提示,括号高亮,风格,边距和标记等等.提供的包装类使其更容易在窗口的MFC/WTL项目中的控件中包含.

特征

1,实现Scintillav5.4.1提供的所有功能.

2,CScintillaCtrl包装类,与在MFC的"CEdit"包装类相同语义.此类还可不依赖MFC,与ATL/WTL一起使用.

3,自动使用Scintilla提供的直接访问功能提高性能.

4,CScintillaView和CScintillaDoc类提供完整的,可放入现有项目中,而不是内置的MFC富编辑或编辑控件类的文档/视图实现.

5,内置MFC持久性支持.

6,使用WM_NOTIFY和WM_COMMAND发送的所有通知都映射到视图包装类中,以方便使用C++虚函数.

7,CScintillaView类,提供默认折叠实现.

8,包括普通Scintilla提供表达支持的完整"查找和替换"支持.为此,从标准MFC"CFindReplaceDialog"类继承来实现的"CScintillaFindReplaceDlg"类.

9,包括CScintillaView中的完整MFC打印实现.

10,完全支持标准页设置对话框和打印页边距.

11,包括打印页眉和页脚的框架.

12,包括对所有标准MFC菜单项的支持,如剪切,复制,粘贴等.

13,示例演示了如何转发顶级消息到Scintilla控件.

14,示例还演示了如何实现自动补全,并在代码中调用提示.

15,这些类隐藏了Scintilla自身不支持窗口的Unicode(又名UTF16)的事实.Scintilla通过UTF8支持Unicode,"CScintillaCtrl"包装类负责,安装Scintilla的Unicode代码页及UTF8之间的转换串.

如果你查看"ScintillaCtrl.h"头文件,在Scintilla中,会看见涉及串参数,及函数的宽字符的串版本等.在"_UNICODE"的#ifdef预处理器中包装这些宽符串函数.

16在内部,这些函数执行在窗口Unicode和Scintilla的UTF8间的转换.注意,要执行此转换,代码使用WideCharToMultiByte和MultiByteToWideChar提供的UTF8翻译功能.

用法

要在代码中使用该类,只需在你的模块中包含ScintillaCtrl.h和ScintillaCtrl.cpp,并#include ScintillaCtrl.h.

如果要使用文档/视图包装器,则还包括ScintillaDocView.h及ScintillaDocView.cpp.

如果用mfc,则代码需要静态或动态包含MFC.否则,仅使用ATL/WTL.

如果要动态链接到Scintilla,在"Scintilla.dll"和"Lexilla.dll"上,启动应用时,应调用LoadLibrary.

如果静态包含控件代码,则需要自己注册Scintilla窗口类.另见Scintilla/Lexilla网站上的说明1,2.

要查看各种类运行情况,请查看"ScintillaDemoView.cpp"模块和示例中的"ScintillaDemo.cpp".

版权

产品以二进制形式发布时,可在产品(商业,共享软件,免费软件或其他)中使用.

可你想要的方式修改源码,但不能修改每个模块顶部的版权细节.

如果想用应用分发源码,则只允许分发作者发布的版本.来维护源码的单个分发点.

相关推荐
Solange__20 小时前
图片转3D导出GLB、FBX还是OBJ?按5类任务比较材质、动画与可编辑性
人工智能·3d·ai·自然语言处理·编辑器·blender·材质
ThatMonth1 天前
vscode 编辑器怎么打开多页签,而不是覆盖已有的页签
编辑器
广东帝工2 天前
双预警防线,筑牢智慧航道水上安全屏障
编辑器
sunshine22 girl2 天前
copilot vscode 使用技巧
人工智能·vscode·编辑器
Frag0ut2 天前
Notepad++ 零基础入门:从记事本到代码编辑器的平滑过渡(2026最新版)
python·编辑器·html·json·notepad++·markdown·记事本
行走的陀螺仪2 天前
Claude Code 从入门到实战(三):Hooks、Skills、SubAgents 高级扩展
linux·编辑器·vim
Dovis(誓平步青云)2 天前
拖动关键帧角色就抽动,动画编辑器怎样补齐中间状态
开发语言·前端·javascript·机器学习·编辑器
vjmap2 天前
AI 地图动画-以真实地图为画布的 AI 视频编辑器-唯杰 AI 地图动画正式上线
人工智能·编辑器·音视频·gis·cad
我要见SA姐13 天前
Chrome 内存泄漏诊断指南:从现象定位到根因排查
ide·vscode·python·自动化·编辑器
香芋芋圆4 天前
iD-editor 详解|OSM官方在线编辑器,基于D3.js的轻量地图编辑器
开发语言·javascript·编辑器