对相关数据源的同时显示进行同步的方法和系统的制作方法

文档序号:2634603阅读:219来源:国知局
专利名称:对相关数据源的同时显示进行同步的方法和系统的制作方法
相关数据源可存储在独立的文件中。它们也可以是同一文件的一部分,具有表示在该文件中的相关数据源的某些手段,例如被包括在该文件中的表示每一相关数据源内容的指示代码,或者表示每一相关数据源在文件中的位置的文件标题。
已经开发了许多计算机程序来显示同一数据源的两个同步样式。美国专利第4428065号(Duvall等人)公开了在正在另一窗口中被显示的文本的一个窗口中显示放大的样式的技术。Wordperfect文本处理程序可以划分计算机显示屏幕,使得在一个窗口中显示格式化的文本而在另一个窗口中显示同一文本的同步样式,但所有的控制代码已被显露。在Wordperfect的“显露代码”的显示中,一个窗口中的光标自动地跟在第二个窗口中的光标之后。
实现对来自不同的但相关的数据源的同步显示的最简单方法就是使用独立的文本编辑程序或者对每一个相关的数据源使用不同的在窗口中显示数据的方法。但是,这需要用户在某一窗口的显示位置被改变时手动同步在每个窗口中的显示位置。这就可能涉及到将当前显示的数据中的光标移到另一位置或者将数据的另一部分卷入窗口。当用户不能迅速地识别在一个窗口中的当前位置是如何与正在另一窗口中被显示的数据相关联时,这样做就会很困难并且容易出错。
美国专利第5091876号(Kumano等人)公开了作为自动语言翻译系统的一部分的对被单个程序控制的两个窗口的显示位置进行同步的方法。Kumano使用了在原始文本和翻译文本中对每个句子都显示开始位置的一个表。根据该表就能够确定在窗口中的当前光标位置的句子编号以及在另一窗口中的相应句子的开始位置。这就使程序能够保持两个窗口的文本显示和光标位置同步。
Kumano的技术在许多方面受到限制。它只适用于被单个程序控制的窗口或文本显示-该程序包含句子开始位置表。另外,该技术只对这样的数据起作用,在这样的数据中,每个数据源的句子之间存在一对一的对应关系。
本发明的目的是提供对在被多个计算机程序、任务或过程控制的多个窗口中的显示位置进行同步的灵活方法。
本发明的另一目的是为不同的但相关的数据源提供这种同步。
这些目的是通过利用例如共享的存储器或过程之间的通信装置这样的通信装置在每个窗口控制任务和同步控制任务之间传递信息而实现的。当窗口控制任务被首先启动时,它发送信息给同步控制任务,该同步控制任务就寄存了它。
一旦显示位置改变到在窗口中被显示的数据的新的区域或部分,新的位置的区域名(根据数据中的显示符来确定)就由窗口控制任务在信息中传送给同步控制任务。每一窗口控制任务然后就更新与它们有关的将要被定位在相应于在它们的数据源中的区域名的位置处的所有窗口。
可以容易地看出刚刚所述的技术在被多个任务控制的任何个数的窗口之间提供了同步。该技术不要求所有同步的窗口被同一个程序或任务所控制。
还可以容易地看出刚刚所述的技术要求包含在数据中的重复的区域名提供了对不同的但相关的数据源显示的同步。如果使用了使在一文件中的区域名与在另一文件中的相关的区域名相同的方法,区域名甚至不必一个字母一个字母地重复。例如,英文《圣经》中的名字John可等同于德文《圣经》中的名字Johaness。这种文件之间区域名的等同可以根据区域名表来获得,或者根据由扫描各种文件的区域名产生自动的相互引用或建立区域名表格的任何其它方法来获得。
区域名的这一使用允许例如一个窗口定位于附注标记处而同步的窗口定位于附注的正文处。还允许一个窗口位于英文原文之内的一位置处而同步的窗口位于外文翻译中的相应区域,不管原文和译文在该区域中是否具有相同数目的字符或句子。
参看附图以及以下对这些附图和本发明当前最佳实施例的详述将更加清楚本发明的上述和其它特点。


图1表示具有四个同步窗口的计算机显示,各窗口的数据来自不同的但相关的数据源。
图2是具有三个窗口控制任务、同步控制任务以及在这些任务之间进行通信的装置的方框图。
图1表示具有四个窗口102、103、104和105的计算机显示101。每个窗口能够在计算机显示101上独立于任何其它窗口以文本或图形的形式显示信息。每个窗口被某些任务控制,例如文本编辑程序、文件格式化程序、图形显示程序或其它窗口控制任务。图2表示图1的四个窗口102、103、104和105以及它们的窗口控制任务。窗口102被窗口控制任务202控制,窗口103被窗口控制任务203控制,而两个窗口104和105被窗口控制任务204控制。
此处所用的任务是作为独立的实体运行的独立应用程序或子程序。换句话说,数字计算机将构成一个或多个任务的一组机器指令存储在它的存储器中并能够独立于可在该数字计算机上运行的任何其它任务的指令和状态而执行某个任务的指令。数字计算机具有执行机器指令的装置并将其与存储那些指令的装置连接。存储装置包括各种存储器系统,例如随机存取读一写存储器(RAM)、只读存储器(ROM)、软盘、硬盘、光盘只读存储器(CD-ROM)和磁带。
每一窗口控制任务能够显示来自规定的数据源的信息,并能够根据通过键盘或鼠标以光标移动的方式观察数据的用户的命令改变其显示位置,上移或下移一定量(例如一页)的卷动命令,移到规定项目位置的搜索命令,或者将当前显示改变到被包括在显示的信息中的连接程序部分中规定的位置的超文本命令。根据显示位置中的这些用户规定的改变,窗口控制任务就能够确定其在被显示的信息中的位置。
窗口控制任务根据利用某一通信装置从同步控制任务201发送的请求也能够改变其显示位置。在图2中,通信装置分别由在同步控制任务201和窗口控制任务202、203和204之间的链路212、213和214示意性地表示。这样的通信装置可利用适合于在其上实现本发明的特定的计算机和窗口系统的过程之间的通信装置或者允许两个任务交换信息的任何其它技术来实现。这样的过程之间的通信装置包括在过程之间共享的存储单元、在任务之间转移信息的操作系统调用,或者网络通信的实施。
为了说明同步系统的基本功能,假设用户已经改变了正在窗口102中被显示的信息的显示位置。新的显示位置将由窗口控制任务202来确定,包含描述新的显示位置的信息将利用通信链路212传送给同步控制任务201。
当该信息表明窗口控制任务202的新的显示位置已被同步控制任务201接收时,同步控制任务201就查阅包含对所有窗口控制任务的标识的表。利用窗口控制任务和同步控制任务的通信动态地保存该表。每当启动一窗口控制任务,该窗口控制任务就给同步控制任务201传送表示它正在运行并需要接收合适的同步信息的信息。这就使同步控制任务201将描述启动窗口控制任务的条目记入它的窗口控制任务的表中。每当终止一窗口控制任务,它就给同步控制任务201传送表示它已终止的信息,使同步控制任务201从它的窗口控制任务的表中取消该窗口控制任务。
每当同步控制任务201从窗口控制任务接收了表示显示位置变化的信息(例如这一例子中的从窗口控制任务202接收上述信息),它就在它的表中给所有窗口控制任务(发送表示显示位置变化的初始信息的窗口控制任务可除外)传送信息,告诉那些窗口控制任务将它们的显示位置改变到在该信息中指出的位置。在该例子中,同步控制任务201将给窗口控制任务203和204传送显示位置改变请求信息,它们分别改变在窗口103以及在窗口104和105中的显示。
根据上述描述可容易地看出上述系统提供了将在一个窗口中的显示位置的变化通过在所有其它窗口中的显示位置的变化反映出来的一般手段。这种显示位置变化的效果取决于在上述信息中传送的显示位置信息的性质。
如果所有的窗口都在显示同样的信息,例如同一文件的文本信息,显示位置信息就可以是从该文件的开始到当前显示或光标位置的字符数。这就导致所有的窗口在相同的位置显示同样的文本信息和它们的光标,不管改变了哪个窗口的光标位置。
因为保持窗口同步不依赖于单个程序而是利用了一些被通信装置链接在一起的任务,所以本发明不仅能同步在单一显示上的窗口,而且能够同步在多个计算机上显示的窗口。通信装置将是在多个计算机之间的网络连接或其它链路。可以在多个计算机的任一个上运行同步控制任务。这就使若干用户在不同的机器上观看同一文件,相同的文件信息被显示在每台机器的窗口中,光标位于相同的位置。
当显示位置信息比文件中的简单字符位置复杂并且当多个窗口在显示来自不同的但相关的数据源的信息时,另一操作模式是可能的。例如,如果显示位置信息是与当前光标位置表示的文件的起始有关的句子数目,一个窗口将外语文本作为其数据源而另一窗口将该外语文本的逐句英文翻译作为其数据源,那么本发明将以类似于在上述的Kumano等人专利中描述的方式显示信息。
但是,要注意产生显示的机理在两系统之间是明显不同的。在Kumano等人的专利中有两个被单个程序控制的窗口。在本发明中有任意个数的被多个窗口控制任务控制的窗口,所有窗口控制任务都与同步控制任务通信。
如果显示位置信息基于分段的或上下文的信息而不是基于字符位置或句子数目,则更复杂的显示控制也是可能的。例如,假定显示位置信息是文件的某一部分(题目、作者、摘要、绪言、第一段、第二段等)并且数据还来自外语文本和它的英文翻译。在这一情形中,即使两个数据源中的相应部分没有具有相同数目的字符和句子,两个窗口将仍是同步的。
作为另一个例子,如果分段的信息基于在文件中的附注标记,一个窗口就显示文件而另一个窗口显示同步于第一个窗口的附注。
虽然在本发明的许多实施例中,显示位置信息中的区域名与在数据源中的区域名的比较是简单的字符串比较,也可使用其它技术,这没有脱离本发明的精神。一种这样的技术是通过利用在比较之前表示等同的区域名的区域等同表,用等同的区域名来代替接收的区域名。这就能够支持、例如以不同的语言表示的区域名。这一代替可以由窗口控制任务或同步控制任务来完成。
显然,如果显示位置信息基于在数据源内的区域名,窗口控制任务就必须具有识别区域名的手段,当前显示位置位于该区域名处,还必须具有将它的显示位置改变到被某一区域名表示的位置的手段。
这样的识别区域名的手段可以涉及到向后扫描数据源,该数据源的显示位置已改变以便寻找新的显示位置信息的某一区域名,改变显示位置的手段可以涉及到扫描其它窗口的数据源以便找到相应的区域名。
识别区域名的手段和改变显示位置的手段还可以使用文本信息检索通用的技术来使它们的性能优于扫描数据源的性能,例如预索引文本信息,然后利用该索引信息来迅速地找到由被包含的区域名区分的某一位置。这种技术对信息检索领域的技术人员来说是熟知的,在此将不再详述。这种技术的使用在本发明的精神之内,不超出本发明的范围。
显然,为了最好地实现本发明,来自多个不同的数据源的信息应当包含相同的区域名(或者等同区域名,如果区域等同表或提供等同的区域名的其它手段在被使用的话),尽管它们不必以相同的次序出现。但是,在本发明的最佳实施例中,每当对新的显示位置的请求被窗口控制任务接收就进行专门的处理,在该请求中的区域名不出现在被该窗口控制任务控制的窗口的数据源中。
在最佳实施例中,窗口控制任务可处于两种模式中的一种隐蔽模式和邻近模式。在隐蔽模式中,如果窗口控制任务接收了包含不出现于它的窗口的数据源中的区域名的显示位置请求,该窗口控制任务就利用合适的窗口管理程序请求使窗口在屏幕上消失。当窗口控制任务后来接收了包含出现于数据源中的区域名的显示位置请求时,它就又使窗口可见并将信息定位到合适的位置。
隐蔽模式是有用的,例如,当正在窗口显示的信息不在正在被显示的整个主要文件中出现时,例如图形或附注。当文件的文本的相应部分正在被显示时它显示合适的附注或图形,当什么也不显示时它使图形或附注窗口消失。
在第二种模式即邻近模式中,当窗口控制任务找不到被请求的区域名时,它就通过同步控制任务给该窗口控制任务传送进行再寻找的请求,要求它提供另一区域名-可能会在数据源中出现的区域名。当找到在两个相关的数据源中的区域名时,显示位置就被定到该位置。
最佳实施例的进一步改进是允许窗口控制任务规定它是指定组的一部分。这时,同步控制任务只能与作出最初请求的窗口控制任务在同一组的那些窗口控制任务传送显示位置改变请求。它也允许从主窗口控制任务启动一系列窗口控制任务,表明每一个启动的窗口控制任务的数据源。它还能够通过同步控制任务给在一组中的所有窗口控制任务传送信息以便请求将它们终止。
说明书所附带的缩微胶片附录包含了说明本发明一最佳实施例的一种实施方案的计算机源代码。为了简便起见,只包括描述了创造性的概念的那部分计算机源代码。缩微胶片附录在此被作为参考文献,它所揭示的内容被认为在说明书主体的范围之内。
当然,上述实施例只是可构成发明原理的应用的无数其它实施例的说明而已。本领域的技术人员不脱离本发明的精神或范围能够容易地提出其它的实施例,这些实施例应被认为在本发明的范围之内。
权利要求
1.同步在数字计算机显示器上的数据显示的系统,其特征在于包括多个窗口控制任务,每个所述窗口控制任务能够控制至少一个显示窗口;同步控制任务;以及在所述同步控制任务和所述多个窗口控制任务之间进行通信的装置。
2.如权利要求1所述的系统,其特征在于所述多个窗口控制任务的至少一个包括通过所述通信装置将表示显示位置变化的信息传送给所述同步控制任务的手段。
3.如权利要求1所述的系统,其特征在于所述同步控制任务包括通过所述通信装置将请求显示位置变化的信息传送给所述多个窗口控制任务的至少一个的手段。
4.如权利要求1所述的系统,其特征在于所述通信装置是过程之间的通信装置。
5.如权利要求1所述的系统,其特征在于所述通信装置是共享的存储器。
6.如权利要求2所述的系统,其特征在于所述表示显示位置变化的信息包含区域名。
7.如权利要求3所述的系统,其特征在于所述请求显示位置变化的信息包含区域名。
8.如权利要求7所述的系统,其特征在于所述窗口控制任务包括当在所述请求显示位置变化的信息中的所述区域名不出现时就使它们的被使用的显示窗口消失的手段。
9.如权利要求1所述的系统,其特征在于被一个所述窗口控制任务控制的一个所述显示窗口显示第一数据源的第一信息,被另一个窗口控制任务控制的另一个所述显示窗口显示相关的第二数据源的第二信息。
10.如权利要求9所述的系统,其特征在于所述第一信息包含一种语言的文本,所述第二信息包含另一种语言的相应文本。
11.如权利要求9所述的系统,其特征在于所述第一信息包含文本,所述第二信息包含相应的附注。
12.如权利要求9所述的系统,其特征在于所述第一信息包含来自只读存储器的信息,所述第二信息包含对所述第一信息的修改或校正。
13.同步在数字计算机显示器上的数据显示的设备,其特征在于包括一个或多个数字计算机;多个窗口控制任务,每一个所述窗口控制任务控制至少一个显示窗口,每一个窗口控制任务在所述一个或多个数字计算机的一个上被执行;以及在所述同步控制任务和所述多个窗口控制任务之间进行通信的装置。
14.如权利要求13所述的设备,其特征在于所述多个窗口控制任务的一个包括通过所述通信装置将表示显示位置变化的信息传送给所述同步控制任务的手段。
15.如权利要求14所述的设备,其特征在于所述同步控制任务包括通过所述通信装置将请求显示位置变化的信息传送给所述多个窗口控制任务的至少一个的手段。
16.如权利要求13所述的设备,其特征在于所述通信装置是过程之间的通信装置。
17.如权利要求13所述的设备,其特征在于所述通信装置是共享的存储器。
18.如权利要求13所述的设备,其特征在于所述通信装置是网络连接。
19.如权利要求14所述的设备,其特征在于所述表示显示位置变化的信息包含区域名。
20.如权利要求15所述的设备,其特征在于所述请求显示位置变化的信息包含区域名。
21.如权利要求20所述的设备,其特征在于所述窗口控制任务包括当在所述请求显示位置变化的信息中的所述区域名不出现时就使它们的被使用的显示窗口消失的手段。
22.如权利要求13所述的设备,其特征在于被一个所述窗口控制任务控制的一个所述显示窗口显示第一数据源的第一信息,被另一个窗口控制任务控制的另一个所述显示窗口显示相关的第二数据源的第二信息。
23.如权利要求22所述的设备,其特征在于所述第一信息包含一种语言的文本,所述第二信息包含另一种语言的相应文本。
24.如权利要求22所述的设备,其特征在于所述第一信息包含文本,所述第二信息包含相应的附注。
25.如权利要求22所述的设备,其特征在于所述第一信息包含来自只读存储器的信息,所述第二信息包含对所述第一信息的修改或校正。
26.可在数字计算机上被执行的用于同步在数字计算机显示器上的数据显示的过程,其特征在于包括以下步骤通过与第一显示窗口相关的第一窗口控制任务识别在所述第一显示窗口中的显示位置变化;从所述第一窗口控制任务将表示在所述第一显示窗口中的显示位置变化的第一信息传送给同步控制任务;响应被所述同步控制任务接收的所述第一信息从所述同步控制任务将第二信息至少传送给第二窗口控制任务;以及响应所述第二信息修改与所述第二窗口控制任务相关的至少一个显示窗口的显示位置。
27.如权利要求26所述的过程,其特征在于,其中所述第一信息包含区域名,所述第二信息包含所述第一信息的所述区域名。
28.如权利要求27所述的过程,其特征在于还包括如果所述区域名不出现就使与所述第二窗口控制任务相关的所述至少一个显示窗口消失的步骤。
29.如权利要求27所述的过程,其特征在于还包括根据表示等同的区域名的区域等同表用等同的区域名来代替所述区域名的步骤。
30.一种产品,其特征在于包括机器指令,以及存储所述机器指令的装置;其中所述机器指令可在数字计算机上被执行,所述存储装置与数字计算机连接,所述机器指令能够通过与第一显示窗口相关的第一窗口控制任务识别在所述第一显示窗口中的显示位置变化;从所述第一窗口控制任务将表示在所述第一显示窗口中的显示位置变化的第一信息传送给同步控制任务;响应被所述同步控制任务接收的所述第一信息从所述同步控制任务将第二信息至少传送给第二窗口控制任务;以及响应所述第二信息修改与所述第二窗口控制任务相关的至少一个显示窗口的显示位置。
全文摘要
对来自不同的但相关的数据源的数据在计算机显示器各个窗口中的显示进行同步的系统。利用在被同步的每一个数据源中的重复区域名定位数据。即使在每一个数据源中的区域名是一样的,但该区域的内容可以是不同的、独立的并且不相关的。一个数据源在不同窗口中的多个显示能够被同步,显示了在每一个数据源中的来自多个不同位置的数据。这就允许作者和文摘专家同时显示来自具有逻辑联系的不相同的数据源的数据。
文档编号G09G5/14GK1091537SQ93121070
公开日1994年8月31日 申请日期1993年11月9日 优先权日1992年11月9日
发明者蒙特F·谢利, 詹姆斯S·罗森沃尔 申请人:布莱恩·杨大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1