【开源】QCPFrame企业版更新日志及特性


  : 260271262              :852374570              :西安


目录

一、概述

二、企业版优势

三、最新特性

四、更新日志

1. QCPF_Model

2. QCPF_ViewModel

3. QCPF_HostView

4. QCPF_HostConsole

5. QCPF_ViewEditor

6. QCPF_PluginManager

7. QCPF_SystemManager

8. QCPF_UserManager

9. QCPF_Logger

10. QCPF_Theme

11. QCPF_Language

12. QCPF_CustomPlot

12. QCPF_Mqtt

五、效果预览


一、概述

        QCPFrame 全称Qt-based Commonly-used Plugin Framework。它是一个开源的基于Qt的跨平台插件开发框架,旨在提高基于PC及Linux平台下工控软件设计的通用性,重用性,高效性,可裁剪性,松耦合性。在QCPFrame中,您可以基于控制台或者服务来运行最小插件系统,也可以通过view editor(也是一个插件)来编辑带有UI的桌面程序。在QCPFrame中,一切皆插件,甚至一个后台功能,菜单项,工具栏项,状态栏项,dock片都可以是一个插件。插件在编辑和配置插件,包括它自己,这一切就像是在搭积木,使得模块开发人员只用专注于本模块的开发,而无需过多关注软件系统最终的集成。

【开源】基于Qt的跨平台插件开发框架QCPFrame

二、企业版优势

  企业版演示程序下载

序号 特征 企业版 开源版
1 授权 企业版只针对企业用户,在获取作者授权后可用于商用目的。 开源版遵循GPL3.0开源协议,仅限于个人学习交流,如果您将其商用而未公开源代码,将视为违规,作者有权对其追究版权责任。
2 性能和版本

企业版在大量实际项目中锻造,各主要模块及插件版本不断升级,使其在稳定性,高效性,灵活性等各个方面不断得到优化。

核心模块:

HostView:v4.0.0.4,

QCPF_Model: v2.1.0.1 ,QCPF_ViewModel:v2.0.0.7

插件版本及核心模块更新详情见“更新日志”节

开源版为QCPFrame初代,版本低且存在Bug,在使用中有安全隐患,但能起到演示,学习,引导思路的作用。

核心模块:

HostView:v2.0.0.1,

QCPF_Model: v2.0.0.4 ,QCPF_ViewModel:v1.0.0.6

3 插件多样化 企业版能够提供更多插件适配,能够大大缩短开发周期,比如基于QCustomPlot开发的波形图插件,基于QtMqtt协议开发的Mqtt插件等。 开源版只包含自带的示例插件。
4 外观 企业版提供QJamWindow一键换肤模块,通过定制的Qss样式文件,使您的企业级软件看上去更为专业和精美。 开源版则比较简陋,只是实现了基本的功能,外观为系统默认样式。
5 多语言 企业版支持一键多语言切换,为您的应用提供国际化支持。 开源版只支持中文。
6 免费升级 企业版可以第一时间得到免费的内核及插件的升级。 开源版升级慢。
7 服务更优 企业版获得授权,也意味着获得了增值服务。能够及时获得技术支持,业务模块定制等服务。从此再也不担心员工流失带来的技术断层问题,更不用担心架构师出走,因为我就在这里。 开源版仅供社区交流。

三、最新特性

        2023.03.07      

        1. 支持自定义消息类型,定制项目专属的InfoType,便于插件内部通讯。

      

        2022.10.24              

        1. 增加了PluginConnect,其在时序上先于OnCoreInitialized
        2. 修改了OnCoreInitialized的时序,使其位于刚收集完所有原始插件,并未安装Sel及Copy之前被调用。
        3. 增加了OnInitialized,其在时序上晚于OnCoreInitialized,并且其是填充完Sel,并进行了信号槽连接之后被调用。
        4. 增加了QCPF_CustomPlot插件,用于快速实现基于qCustomplot波形图表的程序设计,并且支持皮肤切换,效果图见最后一节。
        5. 增加了QCPF_Mqtt插件,用于快速实现基于Mqtt通信的程序设计。

        2022.07.21

        1. 实现了深度的多语言,一键切换语言,翻译内容包含菜单,工具栏,状态栏,Dock窗口,标题栏等。

        2. Dock窗口标题栏可设置隐藏。

        3. Dock堆叠时的Tab方向可设置。

        2022.06.22

        1. 增加了Theme管理,可实现一键换皮肤。

        2. 增加了启动时最大化选项。

        2022.03.24

        1. 全新设计的QJamWindow窗体,易于替代QMainWindow,QWidget,QDialog实现自定义窗体,使得QCPFrame更能满足商用化需求。【简单易用】基于Qt的跨平台自定义标题栏控件QJamWindow

        2. 重新优化了ViewModel,实现了动态在线更新UI,所编辑即所得,并修复了已知bug。

        3. 增加了QCPF_Logger插件,使得任何异常被记录,包括启动时的初始化错误,更便于代码故障排查。

        4. 修复了已知bug。

        2021.07.30

        1. 热插拔,便于系统裁剪。

        2. 插件分类:系统插件/非系统插件,用于划分开发边界。

        3. 插件克隆,便于功能重用。

        4. 插件运行时排序,便于干预运行时逻辑。

        5. 共享内存,便于数据同步。

        6. 基于信号槽的消息通道,便于实现发布/订阅及广播类型通讯模型。

        7. 提供插件间通讯API,便于直接穿透插件壁垒,调到对方的Function。

四、更新日志

1. QCPF_Model

【版本】2.1.0.1
【日期】2022.03.07
【内容】

 1. 增加错误输出信息。
 2. 优化了系统插件和非系统插件加载间隔时间,确保系统组件完全加载完成。
 3. 优化了插件的收集,默认只在本工程目录下收集相对路径的插件。
 4. 增加了InfoType扩展数据读取getInfoTypeId(),集中管理扩展消息ID
 5. 优化了系统资源的销毁。
 6. 增加了PluginConnect,其在时序上先于OnCoreInitialized。
 7. 修改了OnCoreInitialized的时序,使其位于刚收集完所有原始插件,并未安装Sel及Copy之前被调用。
 8. 增加了OnInitialized,其在时序上晚于OnCoreInitialized,并且其是填充完Sel,并进行了信号槽连接之后被调用。
 9. 优化了pluginInstance函数。

【版本】2.0.0.4
【日期】2022.05.24
【内容】
 1. 优化了整个生命周期内的调用逻辑。
 2. 优化了插件加载。

【版本】2.0.0.3
【日期】2022.05.19
【内容】
 1. 增加了基于控制台和基于QMainWindow的Application接口。
 2. 增加了slot_PreInitialize,用于在Core构造完成就调用插件功能,即提供界面没绘制前的功能调用,而slot_Initialize用于在Loading界面显示时进行的调用。

【版本】2.0.0.2
【日期】2022.03.24
【内容】
  1. 优化了初始化时多次installConfig导致的问题。
  2. 优化了InfoType,增加了INFT_EXT_BASE

【版本】2.0.0.1
【日期】2021.07.30
【内容】
  1. 进一步优化了热拔功能

【版本】1.0.0.9
【日期】2021.07.10
【内容】
  1. 优化了热插拔功能
  2. 增加了热插拔配置项,当处于调试状态时,请禁用热插拔,发布时可以开启热插

2. QCPF_ViewModel

【版本】2.0.0.7
【日期】2022.08.24
【内容】
 1. 增加了_isMainWindowShown属性,代表主窗口是否已经显示
 2. 增加了removeDockWidgets方法,用于隐藏那些已经失效的组件中的widget

【版本】2.0.0.6
【日期】2022.07.28
【内容】
 1. 配合Language插件,增加了对多语言的支持。
 2. 增加了_dock_ShowTitlebar属性。
 3. 增加了_dock_TabDirection属性。
 4. 优化了菜单栏绘制,使其背景色适配Qss。

【版本】2.0.0.5
【日期】2022.06.20
【内容】 

 1. 优化了action相关代码。
 2. 优化了DockWidget样式,进一步适配QSS。
 3. 增加了启动时最大化的选项。

【版本】2.0.0.4
【日期】2022.04.15
【内容】
  1. 优化了工作区存储,修复了有时工作区勾选了某些widget却不显示的bug。

【版本】2.0.0.3
【日期】2021.07.27
【内容】
  1. 优化了维护模式,修复了维护模式选择组件后,崩溃的bug.

【版本】2.0.0.2
【日期】2021.07.13
【内容】
 1. 优化了Dock Floatable,Moveable,Closeable的实时设置。
 2. 优化了Save

【版本】2.0.0.1
【日期】2021.07.10
【内容】
 1. 实现了动态更新UI

3. QCPF_HostView

【版本】4.0.0.4
【日期】2023.03.07
【内容】
 1. 优化了内核及视图模型冗余代码。
 2. 优化了运行时相关内容。
 3. 更新了对于2.1.0.1版本QCPF_Model的支持。
 4. 更新了对于2.0.0.7版本QCPF_ViewModel的支持。

【版本】4.0.0.3
【日期】2022.07.20
【内容】
 1. 优化了对多语言的支持。
 2. 优化了初始化界面。

【版本】4.0.0.2
【日期】2022.07.05
【内容】
 1. 更新了对于2.0.0.4版本的QCPF_Model的支持。
 2. 优化了刚启动时的显示位置。
 3. 更新了对于2.0.0.6版本的QCPF_ViewModel的支持。
 4. 优化了进入维护模式的两种方式。
 5. 优化了多语言时载入面板的显示。

【版本】4.0.0.1
【日期】2022.05.17
【内容】
 1. 更新了对于2.0.0.3版本的QCPF_Model的支持。

【版本】3.1.0.1
【日期】2022.03.18
【内容】
 1. 为Load面板绘制了边线,按钮颜色与标题栏适配。

【版本】3.0.0.1
【日期】2022.03.18
【内容】
 1. 采用了QJamWindow界面库
 2. 优化了程序,修复了部分bug。

【版本】2.0.1.6
【日期】2022.03.16
【内容】
 1. 优化了标题栏高度热区响应。
 2. 增加了启动日志缓存,等connect到logger插件后先写到日志里。

【版本】2.0.1.4
【日期】2021.07.27
【内容】
 1. 增加了密码框回车响应。

【版本】2.0.1.3
【日期】2021.07.26
【内容】
 1. 将该维护模式代码从UserManager挪到HostView中,因为一旦扫描不到插件,就无法进入维护模式。

【版本】2.0.1.2
【日期】2021.07.13
【内容】
 1. 增加了Load按F1强制进入用户登录模式。
 2. 增加了主界面按F1强制调出菜单栏。

【版本】2.0.1.1
【日期】2021.07.10
【内容】
 1. 优化了layout存储恢复。
 2. 优化了维护模式,jamie/19820901进入维护模式。

4. QCPF_HostConsole

【版本】1.1.0.1
【日期】2023.03.07
【内容】
 1. 优化了系统信息的中文显示
 2. 优化了输入信息显示。
 3. 更新了对于2.1.0.1版本QCPF_Model的支持。

【版本】1.0.0.1
【日期】2020.09.17
【内容】
  1. 实现了基本的控制台功能。

5. QCPF_ViewEditor

【版本】1.2.0.8
【日期】2022.08.24
【内容】
 1. 增加了对INFT_CORE_CONFIG_CHANGED的及时响应,当用户取消勾选某些插件之后,其对 应的Widget也会消失。
 2. 修正了图片文件夹路径,Images->Image。
 3. 优化了菜单翻译文件的读写。

【版本】1.2.0.7
【日期】2022.07.01
【内容】
 1. 增加了对多语言的支持。
 2. 适配2.0.0.6版本的QCPF_ViewModel
 3. 优化了递归删除item的逻辑
 4. 优化了快捷键设置。
 5. 优化了对菜单树的双击编辑逻辑。
 6. 增加了_dock_ShowTitlebar属性设置。
 7. 对布局进行了优化。

【版本】1.2.0.6
【日期】2022.06.21
【内容】
 1. 优化了action相关代码。
 2. 适配2.0.0.5版本的QCPF_ViewModel

【版本】1.2.0.5
【日期】2022.04.27
【内容】
 1. 优化了Ok和Apply功能。
 2. 适配2.0.0.4版QCPF_ViewModel
 3. 修正了Widget Viewer选项卡的显示。

【版本】1.2.0.4
【日期】2022.03.23
【内容】
 1. 优化了ActionViewer和WidgetViewer。
 2. 调整了UI。
 3. 优化了在ubuntu下的显示。
 4. 修正了OK按钮的功能。

【版本】1.2.0.3
【日期】2022.03.21
【内容】
 1. 增加了对QJamWindow的支持,风格与宿主保持一致。

【版本】1.2.0.2
【日期】2021.07.13
【内容】
 1. ShowMenuBar与实际显示进行绑定。

【版本】1.2.0.1
【日期】2021.07.10
【内容】
 1. 优化了layout存储恢复。
 2. 增加了应用按钮,便于预览View的变化。
 3. Dock复选框与实际显示进行绑定。

6. QCPF_PluginManager

【版本】1.0.0.9
【日期】2022.08.25
【内容】
 1. 优化了插件选择及取消。
 2. 调整了排序按钮位置。
 3. 取消了路径警告提示框,默认在当前路径下查找插件。

【版本】1.0.0.8
【日期】2022.03.23
【内容】
 1. 增加了对QJamWindow的支持,风格与宿主保持一致。
 2. 优化了在ubuntu下的显示。

【版本】1.0.0.7
【日期】2021.07.30
【内容】
 1. 优化了组件列表行数。

【版本】1.0.0.6
【日期】2021.07.30
【内容】
 1. 优化了热插拔功能。

【版本】1.0.0.5
【日期】2021.07.13
【内容】
 1. 优化了Focus.

【版本】1.0.0.4
【日期】2021.07.10
【内容】
 1. 优化了热插拔功能

7. QCPF_SystemManager

【版本】1.0.1.0
【日期】2022.10.14
【内容】
 1. 优化了插件选择及取消。
 2. 调整了排序按钮位置。
 3. 增加了To Github链接。
 4. 取消了路径警告提示框,默认在当前路径下查找插件。
 5. 将日期时间wdt更换为运行时间。

【版本】1.0.0.9
【日期】2022.06.24
【内容】
 1. 优化了WindowTitle设置。

【版本】1.0.0.8
【日期】2022.03.23
【内容】
 1. 增加了对QJamWindow的支持,风格与宿主保持一致。
 2. 优化了在ubuntu下的显示。

【版本】1.0.0.7
【日期】2021.07.30
【内容】
 1. 优化了组件列表行数。

【版本】1.0.0.6
【日期】2021.07.30
【内容】
 1. 优化了热插拔功能。

【版本】1.0.0.5
【日期】2021.07.13
【内容】
 1. 增加了WindowTitle动态设置。

【版本】1.0.0.4
【日期】2021.07.10
【内容】
 1. 优化了热插拔功能
 2. 增加了热插拔配置项,当处于调试状态时,请禁用热插拔,发布时可以开启热插拔。

8. QCPF_UserManager

【版本】1.0.0.5
【日期】2022.03.23
【内容】
 1. 增加了对QJamWindow的支持,风格与宿主保持一致。
 2. 优化了在ubuntu下的显示。

【版本】1.0.0.4
【日期】2021.07.26
【内容】
 1. 将该维护模式代码从UserManager挪到HostView中,因为一旦扫描不到插件,就无法进入维护模式。

【版本】1.0.0.3
【日期】2021.07.10
【内容】
 1. 增加了AT_ORIGINATOR

9. QCPF_Logger

【版本】1.0.0.1
【日期】2022.03.22
【内容】
 1. 实现了基本的写日志功能,将INFT_STATUS_INFO的消息追加到Log文件夹下yy_MM_dd.log文 件中。

10. QCPF_Theme

【版本】1.0.0.2
【日期】2022.10.21
【内容】
 1. 忽略文件名大小写,用来优化皮肤文件的选取。
 2. 将配置文件挪到Config文件夹下。
 3. 增加了对ThemeChanged扩展消息的支持,以便通过tagOutputInfo发送主题名称和qss给订阅者;

【版本】1.0.0.1
【日期】2022.05.17
【内容】
 1. 通过Action实现了基本的换肤功能。

11. QCPF_Language

【版本】1.2.0.1
【日期】2022.07.19
【内容】
 1. 增加了对菜单多语言的支持。
 2. 增加了对DockWidget窗口多语言的支持。
 3. 将配置文件挪到Config文件夹下。

【版本】1.2.0.0
【日期】2022.07.19
【内容】
 1. 增加了对菜单多语言的支持。
 2. 增加了对DockWidget窗口多语言的支持。

【版本】1.0.0.1
【日期】2022.05.17
【内容】
 1. 通过Action实现了基本的多语言功能。

12. QCPF_CustomPlot

【版本】1.1.0.3
【日期】2022.10.21
【内容】
1. 增加了对ThemeChanged消息的响应。

【版本】1.1.0.2
【日期】2022.10.11
【内容】
1. 增加了GraphChannelSelect方法,可以通过代码选择要绘制的通道
2. 增加了菜单项,用以显示或隐藏legend

【版本】1.1.0.1
【日期】2022.09.23
【内容】
1. 优化了多图表功能。
2. 增加了多个插件API,分别是GraphAddData,GraphScrollData,GraphSetDataLst,GraphAddDataLst,PlotCtrlCanOpt,GetGraphInfo。

【版本】1.0.0.2
【日期】2022.08.19
【内容】
1. 添加OpenGl的支持,使绘图更流畅。
2. 增加了抗锯齿使能(不抗锯齿会更流畅)。

【版本】1.0.0.1
【日期】2022.08.17
【内容】
1. 实现了基本功能,在图例中添加预置波形样式,其他插件只需要调用Function_GraphAddData就可以把数据推到指定的波形中去。
2. 实现了自动量程。
3. 实现了图例右键菜单,可选则显示或隐藏。

12. QCPF_Mqtt

【版本】1.0.0.1
【日期】2022.09.11
【内容】
1. 实现了Mqtt连接,订阅和发布。

五、效果预览

    2022.10.24

                                            QCPFrame 完美适配国产麒麟操作系统

    2022.06.22    

    2022.03.24  

猜你喜欢

转载自blog.csdn.net/jam12315/article/details/123416299