基于视频的撤销和重做操作的制作方法与工艺

文档序号:13085603阅读:173来源:国知局
基于视频的撤销和重做操作的制作方法与工艺
基于视频的撤销和重做操作

背景技术:
本文描述的实施例总地涉及操作计算机程序,且更具体地涉及跟踪和修改与计算机程序的用户交互。很多已知的计算机程序包括擦除对文档做出的最后一次改变的“撤销”命令。这个命令使文档返回到较老的状态。类似地,很多已知的计算机程序包括通过例如使文档的缓冲区前进到更当前的状态来使前面的撤销命令逆转的“重做”命令。然而,当使用撤销命令时,至少一些已知的计算机程序不给用户关于已被撤销的确切命令的足够反馈。例如,当使用至少一些已知的计算机程序时,文档恢复到以前的状态,而不提供实际上改变了什么的暗示或指示。当重复地使用撤销命令时,这样的限制变得特别成问题。至少一些已知的计算机程序试图使用撤销/重做日志来减轻这个问题,撤销/重做日志提供可被撤销或重做的行动的部分列表。用户可从该列表选择要撤销的行动,且通常该行动和该行动之前的所有行动被返回。然而,即使这种方法也向用户提供太少的反馈,当相同或非常类似的行动重复时尤其如此。

技术实现要素:
在一个方面中,计算机实现的方法包括创建与计算机程序的用户交互的视频记录,并显示配置成接收倒回用户命令和前进用户命令的控制区。响应于接收到倒回用户命令,计算机程序返回到在至少一个所记录的用户交互之前的第一状态。响应于接收到前进用户命令,计算机程序前进到在第一状态和计算机程序的最后已知的状态之间的第二状态。在另一方面中,计算机包括显示设备、输入设备和配置成存储与计算机程序的用户交互的视频记录的存储区。计算机还包括耦合到显示设备、输入设备和存储区的处理器。处理器配置成使显示设备显示控制区。响应于经由输入设备接收到倒回用户命令,处理器使显示设备返回到在至少一个所记录的用户交互之前的计算机程序的第一状态。响应于经由输入设备接收到前进用户命令,处理器使显示设备前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态。在另一方面中,计算机程序产品包括一个或多个非临时计算机可读存储介质,其具有在其上的计算机可执行部件。所述部件包括当被处理器执行时使处理器将与在计算机程序的用户交互的视频记录存储在存储区内的记录部件,和使处理器从输入设备接收表示用户输入的信号的输入识别部件。所述部件还包括使处理器将表示控制区的信号发送到显示设备的控制部件。响应于经由输入设备接收到倒回用户命令,控制部件使处理器将表示返回到在至少一个所记录的用户交互之前的计算机程序的第一状态的信号发送到显示设备。响应于经由输入设备接收到前进用户命令,控制部件使处理器将表示前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态的信号发送到显示设备。附图说明在附图和接下来的描述中阐述了本发明的一个或多个实施例的细节。从这些描述和附图中以及从权利要求中本发明的其它特征、目的和优点将变得明显。图1是示例性计算机实现的方法的流程图。图2A和2B是可与图1所示的计算机实现的方法一起使用的控制区的一个实施例的示例性图示。图3和4是示出计算机程序中的控制区的示例性实现的图。图5是可与图1所示的计算机实现的方法一起使用的示例性计算机架构的示意性方框图。图6是可与图1所示的计算机实现的方法一起使用的示例性计算机系统的示意性方框图。具体实施方式本文描述了用于在计算机程序接口内实现撤销和重做操作的系统、方法、装置和计算机程序产品的示例性实施例。本文所述的实施例使用户能够利用在计算机程序内已使用什么操作的可视和暂时记忆。通常,用户想撤销的交互是在最近过去的,例如在过去几秒或几分钟期间。用户可能具有那些行动的过程的可视记忆。通过有效地倒回作了什么的影像描述来撤销或重做改变的能力比当前方法直观得多,并且也更准确,导致更少的用户错误。本文描述的系统、方法、装置和计算机程序产品的示例性技术效果包括下列项中的至少一个:(a)使用计算机架构创建与计算机程序的用户交互的视频记录;(b)将视频记录存储在存储区中;(c)显示配置成接收倒回用户命令和前进用户命令的控制区;(d)响应于接收到倒回用户命令而返回到在至少一个所记录的用户交互之前的第一状态;以及(e)响应于接收到前进用户命令而前进到在第一状态和计算机程序的最后已知的状态之间的第二状态。图1是用于在计算机程序接口内实现撤销和重做操作的示例性计算机实现的方法的流程图100。在示例性实施例中,与计算机程序的用户交互是在本领域中已知的。计算机程序可以是字处理程序、电子表格程序、报告程序、视频游戏、图像处理程序或能够接收并跟踪用户交互的任何其它计算机程序。在示例性实施例中,计算机程序创建(102)软件显示和用户交互的视频记录。可以使用记录计算机屏幕的任何已知的方法来创建视频记录。示例性视频记录软件(其相似物可在计算机程序内被使用或结合计算机程序来使用)包括但不限于CamStudioTM、Camtasia或DemoCreator(CamStudio从CamStudio.org可得到;CamtasiaStudio可在市场上从美国密西根州Okemos的TechSmith公司买到;DemoCreator可在市场上从中国的WondershareSoftware有限公司买到)。然而,应理解,可使用任何视频记录软件。可选地,可使用以特定的速率捕获的静止帧或实现软件显示和用户交互的视频的重放的任何其它方法来创建视频记录。在示例性实施例中,视频记录存储(104)在存储区中。如下面更详细地描述的,存储区可容纳在计算机内、附接到计算机但在计算机外部,或可以远离计算机(例如网络驱动器)。在一些实施例中,用户能够指定视频记录被存储的位置。而且,在示例性实施例中,计算机程序正运行的计算机探测(106)用户交互。术语“用户交互”包括但不仅限于仅仅包括文本输入或修改交互、菜单选择、格式化交互、图像输入或药物交互、或可由计算机或计算机程序跟踪的任何其它用户交互。当视频记录存储在存储区中时,或更具体地,当用户交互存储在存储区中时,计算机对每个用户交互施加(108)时间戳和唯一标识符。这使计算机能够更有粒度地跟踪用户交互。在一些实施例中,计算机将执行一个或多个视频记录文件的尺寸调整,使得只有某个数量的用户交互是用户可获得的,或使得只有在视频记录内的某个数量的时间是用户可获得的。在示例性实施例中,计算机显示(110)使用户能够撤销或重做与计算机程序的用户交互的控制区。控制区可沿着例如计算机程序的窗口边界被定位。可选地,控制区可以是在计算机程序的窗口内或在计算机程序的窗口外部的浮动样式对话。在一些实施例中,用户可通过将控制区拖到期望位置来重新定位控制区。在示例性实施例中,计算机在控制区内指示(112)所记录的用户交互的至少一部分的时间位置。当导航时,计算机向用户显示计算程序改变的状态,好像用户正观看对计算机程序做出的改变的视频一样。在计算机程序的操作期间,计算机接收(114)与撤销或重做一个或多个特定的用户交互有关的用户输入。如在下面更详细描述的,用户输入可以是通过使用鼠标沿着时间线拖光标图标、通过箭头按钮、向上翻页和向下翻页按钮、手势或任何其它适当的输入方法。当用户释放光标时,计算机程序恢复到其在选定时间点处的状态。无论是何种输入方法,用户输入将是倒回用户命令或前进用户命令。而且,用户将重新定位光标,使得它擦除过去选择的用户交互指示符,以便影响撤销命令。可选地,用户将重新定位光标,使得以前撤销的用户交互指示符再次被显示,以便影响重做命令。如果用户输入是倒回用户命令,计算机返回到在被取消、删除或撤销的用户交互之前的计算机程序的第一状态。例如,计算机确定(116)当光标经过相关的指示符时每个用户交互的时间戳。计算机还返回(118)计算机程序的显示以反映恰好在被取消、删除或撤销的用户交互的原始探测之前的时间处的计算机程序的状态。如果用户输入是前进用户命令,则计算机前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态。例如,计算机确定(120)当光标经过相关的指示符时每个用户交互的时间戳。为了重做以前被取消、删除或撤销的用户交互,计算机前进(122)到如在恰好在现在恢复的用户交互之后的时间处的视频记录中所示的计算机程序的状态。图2A和2B是控制区200的一个实施例的示例性图示。具体地,图2A示出在光标204被用户操纵之前的计算机程序的状态,而图2B示出在光标204被用户操纵之后的计算机程序的状态。如图2A和2B所示,控制区200包括时间线202和光标204。而且,控制区200包括多个用户交互指示符206,每个用户交互指示符相关于与计算机程序的特定用户交互。如上所述,用户交互可以是文本输入或修改交互、菜单选择、格式化交互、图像输入或药物交互、或可由计算机或计算机程序跟踪的任何其它用户交互。当用户移动光标204经过特定的指示符206(例如第一指示符208)时,第一指示符208从控制区200移除,如在图2A和2B之间的差异所示的。而且,当用户在时间上向后移动光标204(即,到图2A和2B中的左边)时,计算机程序改变以显示被取消、删除或撤销的每个用户交互。当用户停止在时间上向后移动光标204时,例如在经过第一指示符208之后,计算机程序反映在至少与第一指示符208关联的用户交互之前的第一状态。相反,当用户在相反的方向上移动光标204时,指示符206在控制区200内重新显示。例如,当用户在时间上向前移动光标204(即,到图2A和2B中的右边)时,计算机程序向用户显示被重复或重做的每个用户交互。当用户停止在时间上向前移动光标204时,计算机程序反映在第一状态和计算机程序的最后已知的状态之间的第二状态。这个功能的例子是将光标204从其在图2B中的位置移动到其在图2A中的位置,从而恢复第一指示符208。图3和4是示出在计算机程序中的控制区200的示例性实现的图。具体地,图3示出在报告程序中的控制区200的使用,而图4示出在字处理程序中的控制区200的使用。如图3所示,用户经由例如本领域已知的用户交互产生很多文本和形状项目。图3所示的控制区200包括沿着时间线202的光标204和用户交互指示符206。每个指示符206在存储区中与特定的用户交互相关。当用户移动光标204经过特定的指示符206(例如第一指示符208)时,第一指示符208从控制区200移除。而且,当用户在时间上向后移动光标204(即,到图3中的左边)时,报告程序改变以显示被取消、删除或撤销的每个用户交互。当用户停止在时间上向后移动光标204时,例如在经过第一指示符208之后,报告程序反映在至少与第一指示符208关联的用户交互之前的第一状态。相反,当用户在相反的方向上移动光标204时,指示符206在控制区200内重新显示。例如,当用户在时间上向前移动光标204(即,到图3中的右边)时,报告程序向用户显示被重复或重做的每个用户交互。当用户停止在时间上向前移动光标204时,报告程序反映在第一状态和计算机程序的最后已知的状态之间的第二状态。图4示出当使用字处理程序时的类似例子。如图4所示,用户经由例如本领域已知的用户交互产生很多文本项目。图4所示的控制区200包括沿着时间线202的光标204和用户交互指示符206。每个指示符206在存储区中与特定的用户交互相关。当用户移动光标204经过特定的指示符206(例如第一指示符208)时,第一指示符208从控制区200移除。而且,当用户在时间上向后移动光标204(即,到图4中的左边)时,字处理程序改变以显示被取消、删除或撤销的每个用户交互。当用户停止在时间上向后移动光标204时,例如在经过第一指示符208之后,字处理程序反映在至少与第一指示符208关联的用户交互之前的第一状态。相反,当用户在相反的方向上移动光标204时,指示符206在控制区200内重新显示。例如,当用户在时间上向前移动光标204(即,到图4中的右边)时,字处理程序向用户显示被重复或重做的每个用户交互。当用户停止在时间上向前移动光标204时,字处理程序反映在第一状态和计算机程序的最后已知的状态之间的第二状态。图5是用于在计算机程序接口内实现撤消和重做操作的示例性计算机架构500的示意性方框图。图5的计算机架构500可与服务器系统和/或客户端系统(都在下面被更详细地描述并在图6中示出)一起使用。在示例性实施例中,计算机架构500包括执行上面描述的过程和/或可与上面描述的那些过程有关的任何额外的过程的一个或多个处理器502(CPU)。应理解,术语“处理器”通常指包括系统和处理器、精简指令集电路(RISC)、专用集成电路(ASIC)、可编程逻辑电路的任何可编程系统、和/或能够执行本文所述的功能的任何其它电路或处理器。上述例子仅仅是示例性的,且因此不意图以任何方式限制术语“处理器”的定义和/或含义。上面描述的过程和/或可与上面描述的那些过程有关的任何额外的过程的步骤可例如在通过系统总线506可操作地和/或通信地耦合到处理器502的存储区504中被存储为计算机可执行指令。如本文使用的“存储区”通常指存储一个或多个处理器可执行的非临时程序代码和指令以帮助在计算机程序接口内实现撤消和重做操作和/或用于执行上面描述的过程和/或用于执行可与上面描述的那些过程有关的任何额外的过程的任何装置。存储区504可包括一种或多于一种形式的存储器。例如,存储区504可包括随机存取存储器(RAM)508,其可包括非易失性RAM、磁性RAM、铁电RAM和/或其它形式的RAM。存储区504还可包括只读存储器(ROM)510和/或闪存和/或电可编程只读存储器(EEPROM)。任何其它适当的磁性、光学和/或半导体存储器(例如硬盘驱动器(HDD)512)可单独地或与其它形式的存储器结合地被包括在存储区504中。HDD512也可耦合到用于将消息发送到处理器502并从处理器502接收消息的磁盘控制器514。此外,存储区504还可以或可包括可拆下的或可移除的存储器516,例如适当的盒式磁盘、CD-ROM、DVD或USB存储器。上述例子仅仅是示例性的,且因此不意图以任何方式限制术语“存储区”的定义和/或含义。计算机架构500还包括耦合到(例如操作性地耦合到)显示控制器520的显示设备518。显示控制器520经由系统总线506接收数据用于由显示设备518显示。显示设备518可以没有限制地是监视器、电视显示器、等离子体显示器、液晶显示器(LCD)、基于发光二极管(LED)的显示器、基于有机LED的显示器(OLED)、基于聚合物LED的显示器、基于表面传导电子发射器的显示器、包括投影和/或反射的图像的显示器、或任何其它适当的电子设备或显示机构。而且,显示设备518可包括具有相关的触摸屏控制器520的触摸屏。上述例子仅仅是示例性的,且因此不意图以任何方式限制术语“显示设备”的定义和/或含义。此外,计算机架构500包括用于与网络(在图5中未示出)通信的网络接口522。而且,计算机架构500包括一个或多个输入设备,例如键盘524和/或指示设备526,例如滚动球、鼠标、触摸板等。输入设备耦合到输入/输出(I/O)接口528并由输入/输出(I/O)接口528控制,输入/输出(I/O)接口528进一步耦合到系统总线506。为了简洁起见,在本文省略了显示设备518、键盘524、指示设备526以及显示控制器520、磁盘控制器514、网络接口522和I/O接口528的一般特征和功能的描述,因为这些特征是已知的。在操作期间,处理器502使用计算机程序创建计算机程序显示和用户交互的视频记录。可使用记录计算机屏幕的任何已知的方法创建视频记录。可选地,处理器502可通过以指定的速率捕获静止帧来创建视频记录。在示例性实施例中,处理器502将视频记录存储在存储区504中。在一些实施例中,用户能够指定视频记录被存储的位置。负责执行计算机程序的处理器502还探测用户交互。术语“用户交互”包括但不限于仅仅包括文本输入或修改交互、菜单选择、格式化交互、图像输入或药物交互、或可由计算机或计算机程序跟踪的任何其它用户交互。当视频记录存储在存储区504中时,处理器502对每个用户交互施加时间戳和唯一标识符,并将与相应的用户交互相关的每个项存储在存储区中。这使计算机架构500能够更有粒度地跟踪用户交互。在一些实施例中,处理器502将执行一个或多个视频记录文件的尺寸调整,使得只有某个数量的用户交互是用户可获得的,或使得只有在视频记录内的某个数量的时间是用户可获得的。在示例性实施例中,处理器502使显示设备518能够显示控制区,例如使用户能够撤消或重做与计算机程序的用户交互的控制区200(在图2A、2B、3和4中示出)。控制区200可沿着例如计算机程序的窗口边界被定位。可选地,控制区200可以是在计算机程序的窗口内或计算机程序的窗口外部的浮动样式对话。在一些实施例中,用户可通过将控制区200拖到期望位置来重新定位控制区200。在示例性实施例中,处理器502还使显示设备518显示指示符,例如在控制区200内的指示符206(在图2A、2B、3和4中示出),以便向用户指示所记录的用户交互的至少一部分的时间位置。当移动光标204(在图2A、2B、3和4中示出)时,显示设备518向用户显示计算程序改变的状态,好像用户正观看对计算机程序做出的改变的视频一样。在计算机程序的连续使用期间,处理器502经由键盘524和/或指示设备526接收用户输入,其中用户输入与撤消或重做一个或多个特定的用户交互有关。用户输入可以是通过使用指示设备526沿着时间线拖光标、通过键盘524上的箭头按钮或向上翻页和向下翻页按钮、在触摸屏的情况下通过指示设备526输入或经由显示设备518接收的手势、或任何其它适当的输入方法。当用户释放光标时,计算机程序恢复到其在选定时间点处的状态。无论何种输入方法,用户输入将是倒回用户命令或前进用户命令。而且,用户将重新定位光标,使得它擦除过去选择的用户交互指示符,以便影响撤销命令。可选地,用户将重新定位光标,使得以前撤销的用户交互指示符再次被显示,以便影响重做命令。如果用户输入是倒回用户命令,处理器502返回到在被取消、删除或撤销的用户交互之前的计算机程序的第一状态。此外,处理器502使显示设备518显示计算机程序到第一状态的返回。例如,处理器502通过例如搜索存储区504来确定当光标经过相关的指示符时每个用户交互的时间戳。处理器502还使显示设备518显示恰好在被取消、删除或撤销的用户交互的原始探测之前的时间处的计算机程序的状态。如果用户输入是前进用户命令,则处理器502前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态。此外,处理器502使显示设备518显示在第一状态和第二状态之间的计算机程序的前进。例如,处理器502通过例如搜索存储区504来确定当光标经过相关的指示符时每个用户交互的时间戳。为了重做以前被取消、删除或撤销的用户交互,处理器502前进到如在恰好在现在恢复的用户交互之后的时间处的视频记录中所示的计算机程序的状态。图6是用于在计算机程序接口内实现撤消和重做操作和/或用于执行上面描述的过程和/或可与上面描述的那些过程有关的任何额外的过程的示例性计算机系统600的示意性方框图。在示例性实施例中,存储区602包括用于存储数据的一个或多个存储设备604,该数据例如是使用计算机程序创建的文件、当创建这样的文件和/或使用这样的计算机程序时跟踪的用户交互记录、以及与这样的计算机程序的用户交互的视频记录。在一些实施例中,存储区602经由网络610耦合到服务器系统606,其又耦合到客户端系统608(例如管理员系统和/或用户系统)。存储设备604可被体现为一个或多个数据库,可位于单个或多个地理位置处,或可与服务器系统606集成。如可被认识到的,网络610可以是公共网络(例如互联网)、或专用网络(例如LAN或WAN网络)、或其任何组合,并且也可包括PSTN或ISDN子网络。网络610也可以是有线的,例如以太网,或可以是无线的,例如蜂窝网络,包括EDGE、3G和4G无线蜂窝系统。无线网络也可以是WiFi、蓝牙或所已知的任何其它无线形式的通信。因此,网络610仅仅是示例性的,且决不限制当前进步的范围。客户端系统608可以是任何适当的计算机架构,例如上面参考图5描述的计算机架构500,或已知的任何其它计算架构。而且,应理解,服务器系统606配置成执行上面描述的过程和/或可与上面描述的那些过程有关的任何额外的过程。服务器系统606存储计算机可读指令以执行上面描述的过程,并经由网络610将这些指令提供到客户端系统608。此外,服务器系统606还可根据需要将来自存储区602的数据提供到客户端系统608,使得客户端系统608执行上面描述的过程。这样,图6包括计算机系统600经由云计算、分布式计算等的实现。在操作期间,客户端系统608和/或服务器系统606创建用户交互的视频记录。可使用记录计算机屏幕的任何已知的方法来创建视频记录。可选地,客户端系统608和/或服务器系统606可通过以指定的速率捕获静止帧来创建视频记录。在示例性实施例中,服务器系统606将视频记录存储在存储区602中。在一些实施例中,用户能够指定视频记录被存储的位置。负责执行计算机程序的客户端系统608还探测用户交互。可选地,在客户端系统608是瘦客户端的场合,服务器系统606可探测用户交互。术语“用户交互”包括但不限于仅仅包括文本输入或修改交互、菜单选择、格式化交互、图像输入或药物交互、或可由计算机或计算机程序跟踪的任何其它用户交互。当视频记录存储在存储区602中时,服务器系统606对每个用户交互施加时间戳和唯一标识符,并将与相应的用户交互相关的每个项存储在存储区中。这使计算机系统600能够更有粒度地跟踪用户交互。在一些实施例中,服务器系统606将执行一个或多个视频记录文件的尺寸调整,使得只有某个数量的用户交互是用户可获得的,或使得只有在视频记录内的某个数量的时间是用户可获得的。在示例性实施例中,客户端系统608显示控制区,例如使用户能够撤销或重做与计算机程序的用户交互的控制区200(在图2A、2B、3和4中示出)。控制区200可沿着例如计算机程序的窗口边界被定位。可选地,控制区200可以是在计算机程序的窗口内或在计算机程序的窗口外部的浮动样式对话。在一些实施例中,用户可通过将控制区200拖到期望位置来重新定位控制区200。在示例性实施例中,客户端系统608也在控制区200内显示指示符,例如指示符206(在图2A、2B、3和4中示出),以便向用户指示所记录的用户交互的至少一部分的时间位置。当移动光标204(在图2A、2B、3和4中示出)时,客户端系统608向用户显示计算程序改变的状态,好像用户正观看对计算机程序做出的改变的视频一样。在计算机程序的连续使用期间,客户端系统608和/或服务器系统606经由输入设备接收用户输入,其中用户输入与撤消或重做一个或多个特定的用户交互有关。用户输入可以是通过沿着时间线拖光标、通过箭头按钮或向上翻页和向下翻页按钮、手势输入、或任何其它适当的输入方法。当用户释放光标时,计算机程序恢复到其在选定时间点处的状态。无论何种输入方法,用户输入将是倒回用户命令或前进用户命令。而且,用户将重新定位光标,使得它擦除过去选择的用户交互指示符,以便影响撤销命令。可选地,用户将重新定位光标,使得以前撤销的用户交互指示符再次被显示,以便影响重做命令。如果用户输入是倒回用户命令,服务器系统606返回到在被取消、删除或撤销的用户交互之前的计算机程序的第一状态。此外,客户端系统608显示计算机程序到第一状态的返回。例如,服务器系统606通过例如搜索存储区602来确定当光标经过相关的指示符时每个用户交互的时间戳。客户端系统608显示恰好在被取消、删除或撤销的用户交互的原始探测之前的时间处的计算机程序的状态。如果用户输入是前进用户命令,则服务器系统606前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态。此外,客户端系统608显示在第一状态和第二状态之间的计算机程序的前进。例如,服务器系统606通过例如搜索存储区602来确定当光标经过相关的指示符时每个用户交互的时间戳。为了重做以前被取消、删除或撤销的用户交互,客户端系统608显示到如在恰好在现在恢复的用户交互之后的时间处的视频记录中所示的计算机程序的状态的前进。上面详细描述了用于在计算机程序接口内实现撤消和重做操作的系统、方法、装置和计算机程序产品的示例性实施例。系统、方法、装置和计算机程序产品不限于本文描述的特定实施例,相反,方法的操作和/或系统和/或装置的部件可与本文所述的其它操作和/或部件独立地和分开地被利用。此外,所述操作和/或部件也可结合其它系统、方法和/或装置来被定义或使用,且不限于只用如本文所述的系统、方法和存储介质进行的实践。计算机(例如本文所述的客户端系统和服务器系统)包括至少一个处理器或处理单元和系统存储器。计算机一般具有至少某种形式的计算机可读介质。作为例子而不是限制,计算机可读介质包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,其用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息。通信介质一般将计算机可读指令、数据结构、程序模块或其它数据体现在经调制的数据信号(例如载波或其它传输机制)中,并包括任何信息输送介质。本领域中的技术人员熟悉经调制的数据信号,其具有其特征集中的一个或多个,或被改变以便对信号中的信息编码。任何上述项的组合也包括在计算机可读介质的范围内。可在由一个或多个计算机或其它设备执行的计算机可执行指令(例如程序部件或模块)的一般上下文中描述本发明的实施例。可使用任何数量和组织的部件或模块实现本发明的方面。例如,本发明的方面不限于在附图中示出和本文描述的特定的计算机可执行指令或特定的部件或模块。本发明的可选实施例可包括具有比本文所示和所述的更多或更少的功能的不同的计算机可执行指令或部件。本发明的实施例包括计算机程序产品,计算机程序产品包括具有计算机可执行部件的一个或多个非临时计算机可读存储介质。这样的计算机可执行部件包括例如记录部件、输入识别部件和控制部件。在示例性实施例中,记录部件使例如处理器502(在图5中示出)和/或服务器系统606(在图6中示出)的处理器在例如存储区504(在图5中示出)或存储区602(在图6中示出)的存储区内存储与计算机程序的用户交互的视频记录。输入识别部件使处理器从例如键盘524、指示设备526和/或显示设备518(每个设备在图5中示出)的输入设备接收表示用户输入的信号。控制部件使处理器将表示例如控制区200(在图2-4中示出)的控制区的信号发送到显示设备。响应于经由输入设备接收到倒回用户命令,控制部件使处理器将表示返回到在至少一个所记录的用户交互之前的计算机程序的第一状态的信号发送到显示设备。响应于经由输入设备接收到前进用户命令,控制部件使处理器将表示前进到在第一状态和计算机程序的最后已知的状态之间的计算机程序的第二状态的信号发送到显示设备。在一些实施例中,控制部件使处理器将表示所记录的用户交互的至少一部分的视频记录中的相应位置的、要显示在控制区内的指示符的信号发送到显示设备。而且,在一些实施例中,响应于接收到倒回用户命令,控制部件还使处理器将表示在第一状态之后出现的至少一个所记录的用户交互的指示符的移除的信号发送到显示设备。此外,在一些实施例中,记录部件使处理器在存储区中存储与计算机程序的用户交互,其中每个用户交互包括行动标识符和时间戳。在一些实施例中,响应于接收到倒回用户命令,控制部件使处理器将视频记录设置到与选定的用户交互的时间戳相关的时间,并将表示返回到在选定的用户交互的时间戳之前或等于选定的用户交互的时间戳的时间处的计算机程序的状态的信号发送到显示设备。此外,在一些实施例中,响应于接收到前进用户命令,控制部件还使处理器将视频记录设置到与选定的用户交互的时间戳相关的时间,并将表示前进到在等于选定的用户交互的时间戳或在选定的用户交互的时间戳之后的时间处的计算机程序的状态的信号发送到显示设备。在一些实施例中,输入识别部件使处理器经由按钮选择、位置指示符的拖动运动和菜单选择中的至少一个来接收倒回用户输入和前进用户输入。除非另有规定,否则在本文所示和所述的本发明的实施例中的操作的执行或施行的顺序不是必不可少的。也就是说,除非另有规定,否则这些操作可以按任何顺序执行,且本发明的实施例可包括额外的操作或比本文所公开的操作少的操作。例如,设想在另一操作之前、与另一操作同时或在另一操作之后执行或施行特定的操作是在本发明的方面的范围内的。当介绍本发明或其实施例的方面的元件时,冠词“一”(“a”、“an”)、“所述”(“the”和“said”)用来意指有所述元件中的一个或多个。术语“包括”、“包含”和“具有”被规定为是包含性的,且意味着可以有除了所列出的元件以外的额外元件。本书面描述使用例子来公开本发明,包括最佳模式,并且也使本领域中的技术人员能够实践本发明,包括制造和使用任何设备或系统并执行任何并入的方法。本发明的可专利范围由权利要求限定,并可包括本领域中的技术人员想到的其它例子。如果这样的其它例子具有不与权利要求的字面意义的语言不同的结构元件,或如果它们包括与权利要求的字面意义的语言有非实质的差异的等效结构元件,那么这样的其它例子被规定为在权利要求的范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1