[发明专利]一种撤销和/或重做的实现方法和装置有效
申请号: | 201310472634.2 | 申请日: | 2013-10-11 |
公开(公告)号: | CN104572034B | 公开(公告)日: | 2019-04-02 |
发明(设计)人: | 郭映辉;刘微微;赵亚凌 | 申请(专利权)人: | 北京西门子西伯乐斯电子有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/36 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 李慧 |
地址: | 100094 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 重做 队列 撤销 方法和装置 调用信息 函数指针 类对象 容纳 多个模板 放入容器 数据操作 相关函数 应用环境 用户触发 用户执行 操作符 创建 联合 | ||
本发明实施方式公开了一种撤销和/或重做的实现方法和装置。方法包括:建立包含撤销队列和/或重做队列的容器,该撤销队列和/或重做队列用于容纳一个或多个模板类的对象,该模板类包含与待撤销和/或待重做操作相关的函数指针的联合(UNION)以及相关函数调用信息;基于用户执行的操作创建相应的模板类的对象,并将所创建的模板类的对象放入容器中的相应撤销队列和/或重做队列;当用户触发撤销和/或重做动作时,从撤销队列和/或重做队列中弹出相应的模板类的对象,并利用模板类对象中的调用信息执行模板类对象中的函数指针所指的函数。采用模板类作为撤销和/或重做的操作符,可以容纳各种类型的类,并不涉及数据操作,适用于各种应用环境。
技术领域
本发明涉及计算机技术领域,特别是涉及一种撤销和/或重做的实现方法和装置。
背景技术
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作和生活效率
软件框架(Software framework),通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。软件框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。
在很多情况下,程序开发人员和使用者都期望开发出的程序具有UNDO/REDO(撤销/重做)的功能。撤销功能用于撤销之前的操作,重做功能用于恢复之前的操作。无论是何种计算机语言环境之下,对于撤销/重做功能都有明确的需求。
然而,在现有技术中,需要在软件开发阶段,针对每个模块、每个步骤和每个函数分别设计撤销/重做功能,而这会占用大量的设计时间,并且显著增加了开发成本。
发明内容
本发明实施方式提出一种撤销和/或重做的实现方法,以降低设计时间。
本发明实施方式提出一种撤销和/或重做的实现装置,以降低设计时间。
本发明实施方式的技术方案如下:
一种撤销和/或重做的实现方法,该方法包括:
建立包含撤销队列和/或重做队列的容器,该撤销队列和/或重做队列用于容纳一个或多个模板类的对象,该模板类包含与待撤销和/或待重做操作相关的函数指针的联合(UNION)以及相关函数调用信息;
基于用户执行的操作创建相应的所述模板类的对象,并将所创建的模板类的对象放入所述容器中的相应撤销队列和/或重做队列;
当用户触发撤销和/或重做动作时,从所述撤销队列和/或重做队列中弹出相应的所述模板类的对象,并利用所述模板类对象中的调用信息执行所述模板类对象中的函数指针所指的函数。
所述函数调用信息包括函数调用参数和调用对象。
所述模板类具有联合体声明和联合体变量定义,在该联合体声明中包含有所述与撤销和/或重做操作相关的函数指针的列表。
所述与撤销和/或重做操作相关的函数指针包括指向下列中的至少一个操作的函数指针:
添加现场设备图标;删除现场设备图标;移动现场设备图标;修改现场设备参数。
所述撤销队列与重做队列具有相同的队列长度,而且所述撤销队列与重做队列共享队列指针。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京西门子西伯乐斯电子有限公司,未经北京西门子西伯乐斯电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310472634.2/2.html,转载请声明来源钻瓜专利网。