专利名称:可动态配置的虚拟窗口管理器的制作方法
技术领域:
本发明涉及计算机系统领域,具体地说,涉及具有可动态配置的活动区的虚拟窗口管理器。
常规的虚拟窗口管理器提供对应于比计算机显示设备的显示区大的显示布局的活动区或“虚拟桌面”。活动区容纳当前活动应用程序的窗口、图标和控件,下文将它们称之为“对象”。提供控制以允许用户相对于活动区定位显示区。还位于活动区中显示区内的活动区对象根据显示区到该对象在活动区内位置的映射显示在显示设备上。这样,用户可通过相对于较大活动区移动较小显示区来查看整个活动区。
通常,活动区的大小和形状开始时是固定的,且不能动态配置。如果用户超出固定活动区的空间,用户通常会将窗口彼此叠放,正如将纸张和书籍堆叠在桌面上一样。这种在桌面上堆叠物件的模拟是术语“虚拟桌面”的基础。与此模拟一致,为便于处理和显示,常规窗口、显示区和活动区基本上限制为矩形。
计算机系统的厂家和供应商一直在寻找提供“产品差异性”的特征,即使一家的产品区别于竞争对手的产品的特征。虚拟窗口管理器通常是用户在查看新的计算机系统或新的操作系统或新的窗口管理应用程序时所看见的第一特征。但是,例行使用矩形显示对象和结构已造成相对有限的、一定程度上令人讨厌的一组显示选项。通过窗口管理器区分一个厂家产品与其他厂家产品的多数尝试涉及创造性地使用颜色、字体、背景图像或动画光标和菜单。
随着计算机系统变得非常普及,可以预计,这些系统的用户会因用于组织和显示其计算机屏幕上对象的一组有限选项而不满意。还可以预计,有艺术感和创新感的用户会欢迎实际看起来不像堆叠书籍或纸张的桌面的窗口管理器。
因此本发明旨在提供一种新颖用于管理虚拟窗口的有用范式,这种范式允许动态地重新配置虚拟窗口管理器的活动区。本发明的另一目的是提供具有任意形状和可任意重新配置的活动区的虚拟窗口管理器。本发明的再一目的是提供设有可区分用户界面的虚拟窗口管理器。
这些目的以及其他目的通过提供具有基本上不受限制活动区的虚拟窗口管理器来实现。用户可选择从此“无限制”活动区中“划出”用于放置对象的区域。所划出的区域或“通道”为用户提供了随后导航回到所放置的每个对象的路径。这些通道具有由用户随意确定的任意形状和大小,这些形状是所放置对象的形状。利用通道模拟,访问控制可以用每个通道的大小或形状来具体实现,其中,各用户具有不同的洞穴研究能力。利用不同的颜色或纹理来区分所划出的区域和未涉及的活动区,选定区域的显示可提供有趣的可视效果,并且允许在用户计算机系统上以创新方式显示窗口和图标。因为用户可选择在无限制活动区中划出放置对象所需的区域,就可以避免在有限区域中使对象堆叠的常规技术。
本发明通过示例并参照附图作更详细的说明,附图中
图1说明根据本发明的虚拟窗口管理器中,具有为放置对象而划出的区域的任意形状活动区的示例。
图2说明根据本发明的、再现与图1相对应的活动区的选定显示区的计算机系统显示屏的示例。
图3说明具有根据本发明的可动态配置虚拟窗口管理器的计算机系统的例示框图。
图4说明在根据本发明,在可动态配置虚拟窗口管理器的活动区中划分区域的例示流程图。
在所有这些附图中,相同的参考标号表示类似或相应的特征或功能。
图1说明在根据本发明的虚拟窗口管理器中,具有为放置对象120、130而划出的区域110的任意形状活动区100的示例。出于说明目的,将活动区100描绘成具有边界101。根据本发明,边界101本身并不存在,因为用户希望区域100扩展多远区域100就可扩展多远。即,本发明的窗口管理器允许在放置对象及随后在“任何地方”查看和访问对象时无需考虑原始边界101,这与常规窗口管理器相反,常规窗口管理器在每个方向上受一定范围限制,不允许访问或查看放置在这些范围以外的部分窗口或其他对象。
在本发明的优选实施例中,活动区100类似于大块固体材料,用户可获得工具,用于在此固体材料内“划出”通道110或封锁区、创建孔洞115等用于放置对象120、130。
如图1所示,显示区150包括活动区100的一部分。此显示区150确定要在显示设备上再现的活动区100的一部分(图2中的200)。正如在常规系统中,显示区150的形状最好与显示设备的屏幕形状相对应,并且它包括的区域的大小取决于相对于活动区100显示设备200的选定的比例或分辨率。而且,与常规系统中一样,为系统用户提供了有助于使显示区150相对于活动区100移动的控件。如上所述,之所以存在边界101是出于说明目的;根据本发明,显示区150可以放置在“任何地方”,但仍将在活动区100中。因为显示区150可以在不受限制的活动区100内到处移动,可能发生不能辨别方向,因此系统最好还包括将显示区150复位到活动区100内预定位置的“复位”或“返回原位”控件及其他利于导航通过不受限制活动区100的工具。在优选实施例中,可以在显示区150中按比例缩小(移离目标)活动区100以便显示,进而便于通过指明当前显示区150位于活动区100内何处进行导航。
图2说明根据本发明的、再现与图1相对应的活动区100的选定显示区150的计算机系统显示屏200的示例。可以看出,从活动区的背景105划出的区域110的存在呈现出基本上不同于常规窗口管理系统的矩形活动区显示的显示图像。同样,从图1的整个活动区100中划出的通道110的总体结构提供了一种在所述窗口管理系统内组织对象120、130的创新方法,而常规方法是在矩形活动区内排列图标和堆叠窗口。
根据本发明的优选实施例,为用户提供了一个选项,允许用户选择通过只是将对象120、130移入活动区100的实心区域而自动地从活动区100划出区域110、115。例如,利用这种选项,当用户利用常规的“拖曳”技术或其他移动控制将对象120、130移到靠着显示区150的边缘151时,显示区150移位,仿佛对象120、130推压边缘151,使显示区150沿“推”的方向移动。随着对象120、130移入活动区的实心区域105中,就从该实心区域中划出了通道110,用于容纳对象120、130。为了进一步增加艺术性,通道110的宽度还可以由用户控制,以便例如对象120、130的移动形成狭窄的通道,而在选定位置上“放下”对象120、130形成大得足以容纳对象120、130的孔洞。
在本发明的优选实施例中,用户还可在“挖掘”模式和“洞穴探索”模式之间进行选择。挖掘模式允许用户如上所述那样创建或修改通道和孔洞。在洞穴探索模式下,与通道和孔洞的模拟一致,用户受到约束,只可沿着现有的通道110行进,并且只可在现有孔洞115中存放对象120、130。在约束较少的洞穴探索模式下,用户的行进不受约束,但只可将对象120、130存放到现有孔洞115中。这样,所形成的通道110和孔洞115的网络不会只因移动对象120、130而在无意中被改动。本发明的优选实施例还提供了一种将窗口管理器“锁定”在洞穴探索模式下的方法,从而限制访问挖掘模式。此选项尤其适用于创建不同模式的通道110和孔洞115,并希望利用此模式来区分他们的产品或者识别产品来源(类似于为产品打上商标)的系统提供者。此外,此选项可用作安全机制,其中,处于挖掘模式下的用户可以通过“填充”现有通道而消除用于选择对象的访问路径,于是只有在活动区中该区域上具有“挖掘权”的用户随后才可以访问这些对象。本专业的普通技术人员容易理解,可以围绕这种“通道”模拟创建各种各样的有趣规则和方案,包括有可能实现三维挖掘和导航、定义方向相关的导航功能(“向上”比“向下”更困难)、创建坑或门、或门/屋顶系统、或其他通向特定区域的入口111,以防止进行未经授权浏览及可选地查看活动区,如此等等。
为了进一步增强艺术性设计选项,本发明的优选实施例容许常规的矩形窗口120a以及非矩形窗口120b、120c。非矩形窗口可由应用程序提供者设计,或者用户可以配置每个应用程序或应用程序类或特定数据集,以便缺省为预定义的或定制设计的形状。
图3说明具有根据本发明的可动态配置虚拟窗口管理器350的计算机系统300的例示框图。窗口管理器350分别通过应用程序接口310和用户界面320与应用程序和系统用户交互。窗口管理器350利用这些接口310、320提供的指示来管理活动区地图360。根据本发明的一个方面,图1的活动区100是不受限制的。为了容纳虚拟的无限区域100,活动区地图360配置为利用动态坐标存储对象、通道、孔洞等的位置。例如,在多字坐标中,可以保留每个字中的某一位用于指示该字是否是坐标中的最后一个字,或者其后是否还有一个或多个形成坐标的字。利用对象定义330和显示定义340,窗口管理器350根据图1所示的当前显示区150,在显示缓冲区370中创建活动区地图360的选定段的位图表示。显示缓冲区370的大小最好较显示区150的位图大小大一些,以便可以快速实现相对于活动区100的显示区150的重定位(即“摇摄”活动区100)。在优选实施例中,窗口管理器350配置为在重定位显示区150时将更新显示缓冲区370作为“背景任务”,以便显示缓冲区370持续包含大于显示区150的部分活动区100的位图表示,从而允许连续快速摇摄。
对象定义330由应用程序接口310直接创建,或通过应用程序接口和用户界面利用窗口管理器350来创建。这些对象包括这样的参数,例如图1所示每个对象120、130的形状和大小、以及对其他对象的引用(如对象中所用图或图标的位图表示)、与包含在对象中的控件(如按钮或选择子)相关的控制过程的链接。为方便起见,本发明的通道和孔洞还可以表示为对象定义330中的对象。窗口管理器350可以配置为直接再现每个对象,或者对象可只需要来自窗口管理器350的含显示缓冲区370中目标位置的实例化命令而自己执行。显示定义340包括这样的参数,例如特定显示器200的分辨率、显示区150与活动区100的比例以及显示区150在活动区100内的当前位置等在本专业中常用的参数。
可以向用户提供任意不同的方法和工具,用于动态配置图1所示的活动区100,尤其是用于从活动区中划出用于放置对象的区域。在简单的实施例中,用户可利用“画图工具”,只画期望的通道和孔洞的布局。在优选实施例中,通道和孔洞的创建与窗口管理操作(如在显示区内移动窗口和图标)相集成,并不需要单独的“通道建立”任务。
图4说明根据本发明,在可动态配置虚拟窗口管理器的活动区中划分区域的例示流程图。在步骤410,当用户或应用程序要求移动对象时,在步骤420,窗口管理器确定对象是否在当前显示区的边缘。如果对象在显示区的边缘,则在步骤430,使显示区相对于活动区移动,以使对象在显示区内移动。如上所述,最好提供大于对应显示区的显示缓冲区(图3中的370),从而可以迅速使显示区移动。
在步骤440,使对象移动。活动区地图360和显示缓冲区370均加以更新,以反映此重定位。在步骤450,按照需要清除通往该对象的路径。如上所述,在优选实施例中,活动区地图包括每个通道和孔洞的位置,为方便起见,通道和孔洞可以表示为图3所示对象定义330中的对象。
在优选实施例中,通道对象包括借助于用相对于通道起始处的一序列坐标表示的通道路径或形状的标识和一个或多个与此序列相关的宽度。当对象开始移入尚未清除活动区100的图1所示区域105中时,一个新的通道就开始了;随着对象移动,相应形成一系列坐标。当对象放置在其期望的目的地,或者当它重新进入现有通道时,最好利用常规的线条平滑技术将一序列坐标“平滑掉”,以便使表示通道路径所需的坐标数最少,并使“锯齿形”路径也最少。该减少的坐标数作为通道路径保存在实例化的通道对象中。如上所述,可以为每个通道分配访问权。在简单的实施例中,用户可选择为每个通道分配口令,随后只可通过提供正确的口令才准许访问通道。在备选实施例中,通道方向用于控制访问,其中,例如每个用户具有爬“上”通道的相关“技能等级”,或者每个用户具有限制用户可以行进多远的“生命线”,不同用户具有不同长度的生命线。参考本公开内容,本专业的普通技术人员容易发现其他访问控制方案,例如根据通道的直径限制导航通过通道、根据连接通道的直径限制从孔洞中删除对象,如此等等。
孔洞可以与通道一样的方式来表示,或者为了便于处理,在优选实施例中将孔洞表示为环形区域、或具有固定宽高比(椭圆率)的椭圆形区域。这样,只需要保存每个实例化孔洞对象的位置和半径参数。在优选实施例中,提供作为通道缺省宽度的参数,并且自动确定每个孔洞的宽度,使之与包含放置在该孔洞中的对象所需大小相同。可以为每个孔洞分配访问权,以限制对孔洞内放置的所有对象的访问。
注意,因为本发明优选实施例中的活动区是不受限制的,所以图4所示流程图无需进行边界检查、修剪(truncation)等操作,但常规窗口管理系统中对象移动过程通常要进行这些操作。
前述说明仅仅阐明了本发明的原理。因此应理解,本专业的技术人员可设计出各种配置,这些配置虽然未在本说明书中明确说明或显示,但体现了本发明原理,因此在所附权利要求书的精神和范围之内。
权利要求
1.一种计算机系统,包括-显示缓冲区,配置成便于在显示设备上再现显示区域,以及-窗口管理器,操作时与所述显示缓冲区相连,具有大于所述显示区域的活动区,配置成便于通过将所述显示区映射到所述活动区中对象的位置上而在所述显示区中显示对象,-其中,所述活动区可通过用户输入进行动态配置。
2.如权利要求1所述的计算机系统,其特征在于,所述活动区的形状是任意的。
3.如权利要求1所述的计算机系统,其特征在于,所述活动区包括一个或多个相连的区域,这些相连区域通过相对于所述活动区使所述显示区重定位而有助于导航到并访问所述对象。
4.如权利要求3所述的计算机系统,其特征在于,所述活动区还包括一个或多个限制导航到并访问所述对象的封锁区。
5.如权利要求4所述的计算机系统,其特征在于,所述一个或多个相连区域在所述显示区中被描绘成通过所述一个或多个封锁区的通道。
6.如权利要求5所述的计算机系统,其特征在于,用于动态重构所述活动区的用户输入包括对所述通道的修改。
7.如权利要求6所述的计算机系统,其特征在于,对所述通道的所述修改是通过将所述对象之一移动到所述一个或多个封锁区来实现的。
8.如权利要求3所述的计算机系统,其特征在于,选择性地控制对所述相连区域中一个或多个区域的访问。
9.如权利要求8所述的计算机系统,其特征在于,根据至少下列条件之一来选择性地控制所述访问-所述区域的大小;-所述区域的入口;-所述区域的形状,以及-所述区域的朝向。
10.如权利要求1所述的计算机系统,其特征在于,所述窗口管理器还配置为向所述显示缓冲区提供所述活动区的较大一部分的表示,以便于相对于所述活动区移动所述显示区。
11.一种窗口管理系统的用户界面,包括作为所述窗口管理系统的活动区子集的显示区的可视表示,其中,所述活动区子集表示为便于导航到并访问所述活动区内的对象的多个相连通道。
12.如权利要求11所述的用户界面,其特征在于还包括一个或多个便于创建和修改包括所述多个相连通道的通道的用户可控工具。
13.如权利要求12是的用户界面,其特征在于,所述一个或多个用户可控工具包括画图工具和对象移动工具。
14.如权利要求11所述的用户界面,其特征在于,所述相连通道中的一个或多个通道包括限制导航到并访问所述活动区内所述对象的相关访问控制参数。
15.如权利要求14所述的用户界面,其特征在于,所述访问控制参数基于下列参数之一-所述一个或多个通道的大小;-所述一个或多个通道的入口;-所述一个或多个通道的形状,以及-所述一个或多个通道的朝向。
16.一种用于动态配置窗口管理系统的活动区的方法,包括-显示所述活动区的子集的可视表示,其中,所述活动区子集可视地表示为便于导航到并访问所述窗口管理系统的对象的多个通道,以及-提供一个或多个工具以利于接收用于修改所述多个通道的用户输入,以及-相应于所述用户输入来修改所述活动区子集的可视表示。
17.如权利要求16所述的方法,其特征在于,所述一个或多个工具包括画图工具和对象移动工具。
18.如权利要求16所述的方法,其特征在于还包括选择性地防止用户访问用于修改所述多个通道的所述一个或多个工具。
19.如权利要求16所述的方法,其特征在于还包括根据所述多个通道的相关特征来限制导航到并访问所述对象。
20.一种窗口管理系统,包括-用户界面,以及-窗口管理器,工作时与所述用户界面相连,它配置为-从所述用户界面接收用于控制活动区内对象放置以及所述对象访问通道放置的用户输入,以及-维护对应于所述对象放置情况和所述访问通道放置情况的活动区地图,-其中,所述活动区地图配置为不受限制的,从而允许根据所述对象和所述访问通道的放置情况来动态配置所述活动区地图。
21.如权利要求20所述的窗口管理系统,其特征在于,所述窗口管理系统还配置为在所述活动区地图和对应于所述活动区地图子集的显示区之间提供映射,以在显示缓冲区中生成所述显示区的位像。
22.如权利要求21所述的窗口管理系统,其特征在于,所述窗口管理器还配置为根据一组对象定义向所述显示缓冲区提供所述对象的位像。
23.如权利要求20所述的窗口管理系统,其特征在于,所述窗口管理器还配置为根据所述访问通道的放置情况来限制随后访问所述对象。
全文摘要
提供具有基本上无约束活动区域的虚拟窗口管理器,用于管理窗口和图标对象。用户可选择从此“无限制”活动区域中“划出”用于放置对象的区域。所划出的区域或“通道”为用户提供了随后导航回到所放置的每个对象的路径。这些通道具有由用户随意确定的任意形状和尺寸,这些形状是所放置对象的形状。利用通道模拟,访问控制可以用每个通道的尺寸或形状来具体实现,其中,各用户具有不同的洞穴研究能力。利用不同的颜色或纹理来区分所划出的区域和未涉及的活动区域,选定区域的显示可提供有趣的可视效果,允许在用户计算机系统上以创新方式显示窗口和图标。因为用户可选择在无限制活动区域中划出放置对象所需的区域,就可以避免在有限区域中使对象堆叠的常规技术。
文档编号G09G5/14GK1636224SQ02822564
公开日2005年7月6日 申请日期2002年11月13日 优先权日2001年11月16日
发明者G·罗洛夫斯 申请人:皇家飞利浦电子股份有限公司