计算机软件的操作处理方法及装置、计算机可读介质制造方法及图纸

技术编号:32738291 阅读:15 留言:0更新日期:2022-03-20 08:44
本发明专利技术提供一种计算机软件的操作处理方法及装置、计算机可读介质。方法包括:当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使变更处理函数生成对应的操作记录,将操作记录存储到操作队列中,将当前操作下标加1;当接收到用户发起的撤销操作请求后,从操作队列中取出倒数第二条操作记录作为第一操作记录;将第一操作记录中的变更后的值赋值给变更数据对象的变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之前的状态;将当前操作下标更改为第一操作记录对应的下标。本发明专利技术中每条操作记录的数据量达到最小,节省内存占用。在撤销处理过程中仅改变变更后的值,使得数据变化量达到最小,可以提高响应速度。可以提高响应速度。可以提高响应速度。

【技术实现步骤摘要】
计算机软件的操作处理方法及装置、计算机可读介质


[0001]本说明书一个或多个实施例涉及计算机软件
,一种计算机软件的操作处理方法及装置、计算机可读介质。

技术介绍

[0002]在计算机信息处理软件(例如,图像/图形设计)中,撤销、重做功能必不可少,给使用者改正错误操作的能力。撤销、重做功能在程序设计上的方案一般为:在每个操作函数中调用记录操作函数,需要记录“操作名称”、“当前数据快照”等信息,保存到操作记录队列中。在每个操作函数中都加入额外处理,大大增加了程序设计者的工作量,若有遗漏还会导致撤销重做功能失灵。当使用者调用撤销/重做时,将操作队列中对应的操作记录取出,将其中记录的数据状态应用到当前数据上;在数据量大的情况下,每次读取、写入快照数据的消耗IO资源较高,并会拖慢程序响应速度。

技术实现思路

[0003]本说明书一个或多个实施例描述了一种计算机软件的操作处理方法及装置、计算机可读介质。
[0004]根据第一方面,提供了一种计算机软件的操作处理方法,包括:
[0005]当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并将当前操作下标加1,以实现对当前操作下标的更新;其中,所述操作记录包括变更数据对象、变更属性名称和变更后的值;所述Proxy对象为根据场景内对应的数据对象预先生成,所述Proxy对象用于对对应的数据对象是否发生变更进行监听,并在监听到发生变更时触发预先注册的变更处理函数;
[0006]当接收到用户发起的撤销操作请求后,从所述操作队列中取出倒数第二条操作记录,将取出的操作记录记为第一操作记录;将所述第一操作记录中的所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之前的状态;将所述当前操作下标更改为所述第一操作记录对应的下标。
[0007]根据第一方面,提供了一种计算机软件的操作处理装置,包括:
[0008]操作记录模块,用于当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并将当前操作下标加1,以实现对当前操作下标的更新;其中,所述操作记录包括变更数据对象、变更属性名称和变更后的值;所述Proxy对象为根据场景内对应的数据对象预先生成,所述Proxy对象用于对对应的数据对象是否发生变更进行监听,并在监听到发生变更时触发预先注册的变更处理函数;
[0009]撤销处理模块,用于当接收到用户发起的撤销操作请求后,从所述操作队列中取出倒数第二条操作记录,将取出的操作记录记为第一操作记录;将所述第一操作记录中的
所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之前的状态;将所述当前操作下标更改为所述第一操作记录对应的下标。
[0010]根据第三方面,提供了一种计算机软件的操作处理装置,包括:至少一个存储器和至少一个处理器;
[0011]所述至少一个存储器,用于存储机器可读程序;
[0012]所述至少一个处理器,用于调用所述机器可读程序,执行第一方面提供的方法。
[0013]根据第四方面,提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面中提供的方法。
[0014]本专利技术实施例提供的计算机软件的操作处理方法及装置、计算机可读介质,用Proxy对象监听到场景内对应的数据对象是否发生变更,在监听到法神变更时触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并对当前操作下标的更新。当用户发起的撤销操作请求后,从所述操作队列中取出倒数第二条操作记录,将取出的操作记录中的所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之前的状态,将所述当前操作下标更改为所述第一操作记录对应的下标。可见本专利技术实施例中的操作记录只有三条内容,且不包含数据快照等信息,用尽可能小的数据量占用实现信息编辑软件的操作记录,即每条操作记录的数据量达到最小,节省内存占用。在撤销处理过程中仅改变变更后的值,使得数据变化量达到最小,可以提高响应速度;通过Proxy对象和变更处理函数,对数据对象进行监听和处理,不易遗漏、时间成本降低。
附图说明
[0015]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1是本说明书一个实施例中计算机软件的操作处理方法的流程示意图。
具体实施方式
[0017]下面结合附图,对本说明书提供的方案进行描述。
[0018]第一方面,本专利技术实施例提供一种计算机软件的操作处理方法,如图1所示,该方法包括如下步骤S110~S120:
[0019]S110、当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并将当前操作下标加1,以实现对当前操作下标的更新;
[0020]其中,所述操作记录包括变更数据对象、变更属性名称和变更后的值;所述Proxy对象为根据场景内对应的数据对象预先生成,所述Proxy对象用于对对应的数据对象是否发生变更进行监听,并在监听到发生变更时触发预先注册的变更处理函数。
[0021]可理解的是,所谓的数据对象是指在计算机软件的操作界面中的各个元素。首先
对场景内的数据对象进行初始化,即将每一个数据对象转化为对应的ES6的Proxy对象,同时注册统一的变更处理函数。Proxy对象能够对场景中对应的数据对象进行监听,当一个数据对象发生变化时(即用户对一个数据对象进行某种操作时),对应的Proxy对象就会监听到,进而会触发变更处理函数。这个变更处理函数便会将变更数据对象、变更属性名称和变更后的值形成一条操作记录,记录到操作队列中,然后对当前操作下标进行更新。
[0022]可理解的是,这里通过Proxy对象和变更处理函数实现在场景内数据对象发生变化时生成对应的操作记录,而且只需要记录变更数据对象、变更属性名称和变更后的值这三项内容,这样每一条操作记录中的数据量达到最小,可以节省内存占用。
[0023]其中,变更数据对象是指发生变更的数据对象,通常数据对象是一个索引地址,变更属性名称是数据对象的多个属性中的一个属性的名称,因为在用户进行操作时,一个数据对象并不是所有的属性都会发生变化,这里只记载发生变化的属性的名称即可。变更后的值是指发生变更的属性在变更后的值。
[0024]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机软件的操作处理方法,其特征在于,包括:当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并将当前操作下标加1,以实现对当前操作下标的更新;其中,所述操作记录包括变更数据对象、变更属性名称和变更后的值;所述Proxy对象为根据场景内对应的数据对象预先生成,所述Proxy对象用于对对应的数据对象是否发生变更进行监听,并在监听到发生变更时触发预先注册的变更处理函数;当接收到用户发起的撤销操作请求后,从所述操作队列中取出倒数第二条操作记录,将取出的操作记录记为第一操作记录;将所述第一操作记录中的所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之前的状态;将所述当前操作下标更改为所述第一操作记录对应的下标。2.根据权利要求1所述的方法,其特征在于,还包括:当针对所述撤销操作请求处理完毕后,若接收到用户发起的重做操作请求,则从所述操作队列中取出当前操作下标加1对应的操作记录,将取出的操作记录记为第二操作记录;将所述第二操作记录中的所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到最后一次操作发生之后的状态;将所述当前操作下标更改为所述第二操作记录对应的下标。3.根据权利要求1所述的方法,其特征在于,还包括:当接收到用户发起的恢复到预定操作的请求后,从所述操作队列中取出所述预定操作对应的操作记录,将取出的操作记录记为第三操作记录;将所述第三操作记录中的所述变更后的值赋值给所述变更数据对象的所述变更属性名称对应的属性上,以使场景状态变更到所述预定操作发生之后的状态;将所述当前操作下标更改为所述第三操作记录对应的下标。4.根据权利要求3所述的方法,其特征在于,还包括:当针对所述撤销操作请求或恢复请求处理完毕后,若所述Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,将当前操作下标加1,以实现对当前操作下标的更新;并将所述操作队列中所述当前操作下标之后位置上的数据清空。5.一种计算机软件的操作处理装置,其特征在于,包括:操作记录模块,用于当Proxy对象监听到场景内对应的数据对象发生变更时,触发变更处理函数,以使所述变更处理函数生成对应的操作记录,将所述操作记录存储到操作队列中,并将当前操作下标加1,以实...

【专利技术属性】
技术研发人员:佟鑫周祥国田尚杰朱少帅
申请(专利权)人:山东浪潮通软信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1