Z-次序带的制作方法

文档序号:6441539阅读:156来源:国知局
专利名称:Z-次序带的制作方法
技术领域
本主题公开涉及计算系统显示管理,且更具体地涉及建立便于针对与计算显示相关的图形项目的可见性控制。
背景技术
计算系统利用各种输出机制将信息传递(relay)到系统用户。例如计算设备利用显示屏再现图形元素,例如窗口、文本、按钮和/或其他控制元素等,以用于用户可视图形元素。常规地,诸如窗口之类的图形元素被配置具有一组坐标(例如X和y坐标),该坐标指定要显示所述元素所在的显示器的区域。此外,窗口和其他图形元素常规地由z次序栈和/或控制在发生重叠时显示图形的次序的其他类似机制来管理。例如,如果两个窗口占用二维显示空间中的共同区域,则z次序栈可以用于确定哪个窗口在另一个窗口前面显示,由此使得在重叠点处最上面(topmost)的窗口可见且最下面的窗口不可见。在传统的显示管理系统中,各窗口共享相同的z次序栈。然而,当由于图形元素之间的对栈的上面(top)的位置的竞争多个窗口或其他图形元素期望处于Z次序的上面时,该单个栈造成了困难。此外,常规显示管理机制没有提供相对Z次序定位可以针对不同窗口或其他图形保持的手段,因为图形元素在单个栈内自由移动。而且,在常规系统中缺乏Z次序控制导致在保护用户体验的部分以及将开窗口规则应用到窗口子集方面的显著困难。因此,将会期望实现提供改进的Z次序控制的显示管理系统。当今的计算系统和资源管理技术的上述缺陷仅仅旨在提供常规系统的一些问题的综述,并且不旨在是穷举的。一旦回顾了下面的描述,常规系统的其他问题和本文所述的各种非限制性实施例的对应 的益处可以变得进一步清楚明白。

发明内容
本文提供一种有助于实现对随后在更详细的描述和附图中的示范性、非限制性实施例的各个方面的基本或一般的理解。然而,该发明内容不旨在作为广泛或穷举的综述。取而代之,该发明内容的唯一目的是以简化形式提出作为下面的各种实施例的更详细描述的序言的与一些示范性非限制性实施例相关的一些概念。在一个或多个实施例中,窗口和其他显示元素经由多个z次序栈来管理。一个或多个本文中被称为z次序带的z次序栈的相应集合被用于对应于相应应用类型布置窗口和其他图形。此外,显示管理系统控制那些窗口和/或其他图形元素可以进入并退出每个带。在一个实例中,给定带内的图形元素可以另外服从(subject)按带属性,例如对应于该带的开窗口规则、格式属性等。此外或可替代地,图形到z次序带的分配和/或z次序带内图形的配置可以至少部分地基于用户输入而被控制。在本文的其他实施例中,z次序带和/或其他适当机制被用于促进用于计算环境的注册水印。计算环境的一个或多个受许可元素(例如应用、操作系统等)可以利用验证和/或以另外方式注册对应于计算环境的受许可元素的许可证(一个或多个)的许可证注册过程。此外,计算环境可以管理如上概括描述的窗口和/或其他显示元素的再现。一旦确定了计算环境的受许可元素尚未被成功注册(例如,一旦满足其他条件,例如经过了预定量的时间等),计算系统在显示屏上再现注册水印显示。该注册水印显示被分配Z次序带,这实现了它显示在与计算系统相关联的所有其他图形元素之上。此外,计算系统防止任何其他图形元素进入与注册水印显示相关联的Z次序带和干扰其可见性。这些和其他实施例在下文中更详细地描述。


各种非限制性实施例进一步参照附图而被描述,在附图中:
图1是示出根据一个或多个实施例的显示管理系统的简化视图的框 图2-5是示范性窗口层次的说明性视 图6是示出根据一个或多个实施例的z次序显示带控制系统的框 图7是根据一个或多个实施例的z次序带功能的说明性视 图8是根据一个或多个实施例的示范性z次序带的说明性视 图9是示出根据一个或多个实施例的示范性z次序带管理组件的框 图10是示出根据一个或多个实施例的按带显示排序系统的框 图11是示出根据一个或多个实施例的基于注册的水印系统的框 图12是图示用于z次序显示管理的示范性非限制性过程的流程 图13是图示用于计算机显示器的注册水印的示范性非限制性过程的另一个流程图;图14是表示其中可以实现本文描述的各种实施例的示范性非限制性联网环境的框图;以及
图15是表示其中可以实现本文描述的各种实施例的一个或多个方面的示范性非限制性计算系统或操作环境的框图。
具体实施方式
综述
通过引言,计算系统在显示屏和/或其他显示设备上再现诸如窗口、文本、按钮和/或其他控制元素之类的图形项目。窗口和其他图形被配置成具有(x,y)坐标和/或指定它们占用的显示区域的其他手段。此外,窗口和/或其他图形项目进一步被配置成具有确定图形项目是否要在其他图形项目前面或后面显示的一个或多个参数,例如定义图形项目的Z维次序(或Z次序)。例如,在两个窗口重叠的事件中,窗口的Z次序被用于确定哪个窗口显示在其他窗口前面。常规地,计算环境中的窗口利用共同的Z次序栈。然而,这导致窗口之间的对所述栈中的上面的位置的竞争。此外,单个栈配置没有提供可以针对不同窗口或其他图形保持相对Z次序定位的手段,因为窗口和其他图形在单个栈内自由移动。而且,单个z次序栈的使用导致在保护全部用户体验部分的特定部分以及将开窗口规则应用到窗口的子集方面的困难。鉴于常规显示管理系统的至少上述缺点,经由z次序带的使用根据本文的各种实施例来管理窗口和其他显示元素,这实现Z次序分离成多个Z次序栈。在一个实例中,Z次序带被用于对应于相应的应用和/或应用技术(例如可访问性、媒体回放、文字处理等)布置窗口和其他图形。策略引擎和/或其他机制被用于控制进入每个带和/或在带之间的移动,从而减少窗口之间的对Z次序带内的Z次序位置的竞争并且改进用户体验。而且,由于Z次序带可以用于分离应用技术,缓和了相应技术的应用对Z次序内的位置的竞争,从而增加系统性能。在本文的一些实施例中,z次序带可以与各种属性相关联,这些属性又可以被分配到带的窗口和/或其他图形利用。例如,与Z次序带相关联的窗口和其他图形可以被给予对应于所述带的诸如开窗口规则、格式属性等之类的显示属性。在另一个实例中,按带排序规则被实现成提供用于特定带内的Z次序控制的其他间隔尺寸(granularity)。在本文所提供的其他实例中,例如图形分配到z次序带、z次序带内图形的配置等之类的操作可以至少部分地基于用户偏好和/或其他用户输入来执行。在本文提供的又一个实例中,z次序带利用实现带的添加、移除和/或重排和/或其他适当操作的模块化结构。在本文所述的其他实施例中,用于计算环境的许可证注册水印通过使用z次序带或其他适当机制来实现。在计算环境(例如应用、操作系统等)的一个或多个受许可元素利用验证、激活和/或另外地注册对应于计算环境的受许可元素的许可证(一个或多个)的许可证注册过程的事件中,该计算系统可以验证许可证(一个或多个)是否已被成功注册。响应于确定计算环境的受许可元素尚未成功注册(例如一旦满足其他条件,例如经过预定量的时间等),在显示屏上再现注册水印显示。该注册水印显示被分配z次序带,这实现了其在与计算系统相关联的所有其他图形元素之上的显示。此外,计算系统防止任何其他图形元素进入与注册水印显示相关联的z次序带且干扰其可见性。在一个实例中,注册水印显示可以用于遮掩(obscure)与计算系统相关联的其他图形,从而防止计算系统的受许可元素的未授权或未受许可使用。通过利用如上文概述的z次序带,用户体验的相应部分可以得到保护。例如,通过使得不同带用于不同应用类型,第一应用类型的窗口可以被配置成使得它们可能从不侵入(intrude)第二应用类型的窗口的上面。而且,各个带可以用于使窗口保持与其他窗口的相对位置。例如,在系统中,各带可以用于确保可访问性窗口显示在所有其他窗口上面。此外或可替代地,分离的各带可以用于不同的技术,其实现经由它们的对应于的具有对其他技术最小影响的带而进行的技术的添加和/或移除以及促进对应于不同技术的窗口和/或其他图形的不同处理。在另一个实例中,各带可以用于提供一种应用并强制用于一组窗口和/或其他图形的行为的机制。例如,带可以被配置成确保带内的所有窗口和/或其他图形遵守特定风格向导、窗口大小和位置向导等。在一个实施例中,如本文所述的图形显示管理系统包括带管理组件,其被配置成:定义Z次序带组,将相对的Z次序范围与这组Z次序带的Z次序带相关联,将显示元素分配到这组Z次序带的相应Z次序带,以及生成Z次序带的线性次序以使得被分配到所述Z次序带组的、与第一 Z次序范围相关联的第一 Z次序带的第一显示元素被显示在被分配到所述Z次序带组的、与第二 Z次序范围相关联的第二 Z次序带的显示元素前面,该第二 Z次序范围比第一 Z次序范围更深。该系统进一步包括被配置成根据所述Z次序带的线性次序再现显示元素的显示组件。在一个实例中,所述z次序带分别对应于各应用类型。在其他实例中,所述带管理系组件包括策略引擎组件,其被配置成保持由带管理组件利用的一组策略将显示元素分配到所述Z次序带组的相应Z次序带。该策略引擎组件可以进一步被配置成保持一组进入策略和一组退出策略,它们分别控制显示元素进入和退出所述Z次序带组的相应Z次序带。此外或可替代地,该策略引擎组件可以被配置成保持一组强制策略,该强制策略控制显示元素在所述Z次序带组的各Z次序带之间的移动。在一些实现方式中,相应的z次序带被配置成具有显示属性并且所述显示组件进一步被配置成按照显示属性来再现显示元素,利用所述显示属性,它们分别分配的Z次序带得以配置。所述显示属性可以包括例如显示格式属性、开窗口规则、全屏显示属性或图形元素大小。在另一个实例中,所述带管理组件被进一步配置成至少部分地基于用户偏好将显示元素分配给所述Z次序带组的相应Z次序带。在其他实现方式中,所述带管理组件包括带创建组件,其被配置成:创建至少一个z次序带,将所述至少一个z次序带分配给至少一个对应的z次序范围,以及将所述至少一个Z次序带与所述Z次序带组相关联。此外或可替代地,所述带管理组件可以包括带重新排序组件,其被配置成改变Z次序范围,所述Z次序带组的相应Z次序带与所述Z次序范围相关联。在一个实例中,该带重新排序组件可以进一步被配置成至少部分地基于用户输入改变Z次序范围,所述Z次序带组的相应Z次序带与所述Z次序范围相关联。在附加的实现方式中,所述系统可以进一步包括按带(per-band)排序组件,其被配置成将Z次序位置与分配给所述Z次序带组的Z次序带的显示元素相关联。因此,该显示组件可以进一步被配置成根据相应的Z次序位置再现分配给所述Z次序带组的所述Z次序带的显示元素,使得与第一 Z次序位置相关联的显示元素被显示在被分配给比第一 Z次序位置更深的第二 Z次序位置的显示元素前面。仍旧在其他实现方式中,所述系统可以包括注册组件,其被配置成促进与显示元素相关联的计算环境的注册。在这种实例中,所述带管理组件可以进一步被配置成:如果与该系统相关联的计算环境尚未被注册组件注册,则生成未注册显示带并且将未注册图形显示与该未注册显示带相关联。而且,所述显示组件可以进一步被配置成:如果与该系统相关联的计算环境尚未被注册组件注册,则在显示元素前面再现与未注册显示带相关联的未注册图形显示。在另一个实施例中,一种用于管理计算机显示器的方法包括:将一组z次序显示带与相应的深度范围和应用类型相关联;根据与图形元素相关联的应用类型将图形元素分配给相应的Z次序显示带;对Z次序显示带进行排序,以使得分配给与第一深度范围相关联的第一 Z次序显示带的第一组图形元素被显示在第二组图形元素之上,第二组图形元素被分配给与第二深度范围相关联的第二 Z次序显示带,所述第二深度范围在Z维上比第一深度范围更深;以及根据所述排序显示图形元素。在一个实例中,至少部分地基于一组带管理策略将图形元素分配给所述z次序显示带组的相应z次序显示带。例如,该分配可以包括:至少部分地基于一组带进入策略控制图形元素进入相应Z次序显示带;至少部分地基于一组带退出策略控制图形元素退出所述Z次序显示带组的相应Z次序显示带;和/或至少部分地基于一组带强制策略控制图形元素在Z次序显示带之间的移动。在另一个实例中,所述方法可以附加地包括将z次序显示带与相应的显示属性相关联,该显示属性包括例如显示格式属性、开窗口规则、全屏显示属性和/或图形元素大小。然后,根据与图形元素被分配到的Z次序显示带相关联的显示属性来显示该图形元素。在另一个实例中,至少部分地基于用户偏好将图形元素分配给相应的Z次序显示带。在另一个实例中,所述方法另外包括经由下述操作中的至少一个修改所述z次序显示带组:将一个或多个Z次序显示带添加到所述Z次序显示带组;从所述Z次序显示带组移除一个或多个Z次序显示带;组合所述Z次序显示带组的一个或多个Z次序显示带;或者对与所述Z次序显示带组的一个或多个Z次序显示带相关联的深度范围重新排序。在附加实施例中,促进图形显示的系统包括注册组件,其被配置成促进计算系统的至少一个受许可元素的许可证的注册。该系统进一步包括带管理组件,其被配置成将注册显示与注册显示带相关联并且将该计算系统的相应图形与至少一个系统显示带相关联。该系统另外包括显示组件,其被配置成:再现相应的图形;以及在尚未经由该注册组件注册许可证的情况下,在相应的图形前面再现与注册显示带相关联的注册显示并且防止相应的图形在注册显示前面移动。这里,上文已经提出了用于实现计算系统显示管理的一些实施例的综述。作为下文内容的路标,用于分布式事务管理的各种示范性、非限制性实施例和特征被更详细地描述。然后,给出用于附加说明的一些非限制性实现方式和实例,随后是可以实现这样的实施例和/或特征的代表性网络和计算环境。z次序带
通过关于进行z次序管理的一个或多个非限制性方式的进一步描述,图1概括性地图示了示范性显示管理系统的框图。在实施例中,窗口、文本、图形和/或其他显示元素可以根据例如位置坐标(例如,X和I坐标)和z次序参数在输出显示器上再现。如本文所使用的,z次序是指深度(例如,z维)并且指定哪些像素将在多个显示元素重叠的情况下被显示。用另一种方式陈述,z次序被用于指定在发生重叠的情况下哪个图形元素被再现在其他图形元素前面。常规地,所有窗口和/或其他图形共享相同的z次序栈。然而,如上面所记录,单个栈的使用出现了源自图形项目针对该栈的上面的位置的竞争的困难。进一步如上文所记录,常规地无法保持不同图形项目的相对z次序定位,因为这些图形项目在该单个栈中自由来回移动。另外作为上文所记录,通常不存在容易可用的方式将开窗口规则应用于窗口子集。因此,图1所示的系统可以实现z次序带110,其是一个或多个z次序栈的集合。如本文所使用的术语“Z次序栈”是指促进计算环境的图形元素的Z维排序的概念栈。在一个实例中,带管理组件100和/或其他适当机制可以获得与要被再现的显示元素(一个或多个)相关的信息并且基于如本文进一步详细描述的各种标准而将所述显示元素(一个或多个)分配给相应的z次序带110。在实施例中,z次序带110由相应的z次序栈集合构成,这些z次序栈促进窗口和/或对应于不同应用、应用类型、技术和/或任何其他适当分组(grouping)的其他图形之间的分离。一旦相应的显示元素被分配给z次序带110,则显示元素可以由显示组件120和/或其他适当装置根据它们的分配的z次序带110或其他属性来再现。在一个实施例中,z次序带110用作将窗口和/或其他图形的集合限制在z次序中的区(zone)。因此z次序带110可以用于一组图形显示项目,而不改变这些项目的物理维数(例如,基于X和y坐标和/或其他机制定义)。在实施例中,如本文所述的z次序带可以用于向显示窗口层次提供附加功能。例如,图2图示了与桌面200相关联的示范性窗口层次,在本文中其被定义为与计算系统相关联的整个显示区域。该桌面与一个或多个子窗口 210相关联。如本文所使用的,相对于桌面200的子窗口 210也被称为上面水平(top-level)的窗口。该子窗口 210可以与一个或多个窗口属性(attribute) 220相关联,例如最大化和/或最小化按钮、滚动条等等。如图2进一步所示,子窗口 210本身可以与一个或多个子窗口相关联,所述子窗口在本文中被称为次子(subchild)窗口 230。次子窗口 230可以包括例如对应于在对应的子窗口 210中运行的应用的控制窗口、对话框、文本等。在一个实例中,与显示环境相关联的相应窗口可以影响(leverage)相关的窗口排序以设置在z次序中窗口的相应位置。例如,如图3中所示,桌面300可以与一个或多个窗口 310-320相关联,这些窗口中每一个又可以与一个或多个次子窗口 330相关联。如图3进一步所示,窗口 310-320的排序可以根据各种标准执行。例如,“最上面”窗口风格可以被使用,以便将窗口 310-320分离成最上面的窗口 310和标准窗口 320,使得最上面的窗口 310占用z次序中比标准窗口 320更高的位置。在一个实例中,可以通过设置与窗口相关联的标签(flag)和/或其他适当指示符来使得该窗口成为最上面的窗口 310。根据一个方面,相应的最上面的窗口 310可以被配置成显示在标准窗口 320的上面。而且,要被标识为最上面的窗口 310的最后一个窗口可以被显示在其他最上面的窗口 310的上面。以此方式,最上面的窗口 310可以被概念化为在标准栈上面的第二窗口栈,任何窗口可以进入第二窗口栈,并且对于第二窗口栈任何窗口可以竞争上面的位置。在常规的显示管理系统中,没有提供防止窗口与最上面的窗口风格相关联的机制。因此,常规显示管理系统中的窗口竞争在z次序栈中的上面的位置,这在一些情况下可能导致干扰期望的最上面的窗口的不期望窗口。因此,如本文所述的显示管理系统可以使用z次序带来根据它们的应用类型分组(group)这些窗口。可以经由使用z次序带得到促进的分类的实例由图4图示。如图4所示,表示为应用类型A、B和C的不同应用类型的相应窗口 400-420可以与相应的z次序带相关联,使得在相应的窗口 400-420之间的z次序定位被调节以防止不同应用类型的窗口 400-420之间的对z次序位置的竞争。在一个实例中,可以将z次序带与每个应用类型相关联,例如第一 z次序带可以与应用类型A相关联,第二 z次序带可以与应用类型B相关联,第三z次序带可以与应用类型C相关联等等。然而,可以理解,应用类型与z次序带之间的任何适当映射可以被利用并且除非另外地明确声明,本文所述的主题不旨在被限于任何特定映射。在实施例中,使用z次序带的显示管理系统可以实施强制窗口 400-420进入相应z次序带和/或窗口 400-420在z次序带之间移动的一个或多个策略,从而创建具体定义的用于不同应用类型的窗口的z次序范围。在另一个实例中,给定z次序带内的窗口和/或其他图形可以根据任何适当的机制(一个或多个)排序。例如,上述最上面的窗口风格可以应用到一个或多个z次序带,如通过对应于应用类型C的最上面的窗口 410和标准窗口 400所示。在另一个由图5图示的实例中,应用类型可以进一步被划分为子类型,这可以对应于z次序带或子带(例如嵌套z次序带)和/或针对对应于该应用类型的窗口 500的优先级排序。
接下来转到图6,图示了根据一个实施例的示范性z次序显示带控制系统的框图。该系统包括带管理组件600,其可以如本文概括描述地操作以将显示元素分配到相应的z次序带620。在实施例中,为了防止显示元素与不适当的z次序带620相关联,带管理组件600可以利用策略引擎组件610和/或其他适当机制进行和强制将显示元素分配到相应的z次序带620。如图6中所示,策略引擎组件610可以实现进入策略612、强制策略614和/或控制显示元素与z次序带620的关联且防止显示元素与将导致干扰其他显示元素的z次序带620相关联的任何其他适当策略。在一个实例中,进入策略612可以用于控制进入相应z次序带620。例如,基于一组进入策略612,带管理组件600可以分析相应的窗口或其他图形元素和/或与相应的窗口或其他图形元素相关联的应用以确定哪个z次序带620分配到这些元素。在另一个实例中,强制策略614可以用于强制现有z次序带针对相应显示元素的分配。因此,例如带管理组件600可以利用一组强制策略614来防止显示元素在未授权的情况下改变其分配的z次序带620。如图6中进一步所示,带管理组件600可以进一步至少部分地基于用户偏好616和/或其他用户输入操作。例如,用户可以指定可以由带管理组件600在将显示元素分配到z次序带620的过程中利用的z次序配置(例如,消息窗口被置于媒体回放窗口前面,文字处理窗口被置于web浏览窗口前面,等等)。在一个实施例中,用户偏好616可以指定应用的设置或“区”,其然后基于计算系统的状态而被给予更高或更低的z次序优先级。通过特定实例,媒体、游戏和娱乐应用在“播放区”是活动的时可以被给予更高的z次序优先级,而文字处理、电子表格和学术应用在“工作区”是活动的时被给予更高的z次序优先级。在另一个实例中,用户偏好616可以被用于隔离单个应用,使得只有对应于期望的应用的图形项目相对于桌面是可见的。此外或可替代地,带管理组件600可以根据默认排序操作以保护一个或多个应用类型或技术的显示项目免受来自其他应用类型或技术的显示项目的干扰。在一个实例中,用户偏好616可以促进默认排序的完全或部分修改。如图6进一步所示,z次序带620可以与显示属性622相关联,该显示属性可以包括风格向导、窗口大小/位置向导和/或与z次序带620相关联的显示元素的其他适当属性。可能与z次序带620相关联的显示属性622的实例包括但不限于,全屏显示偏好、开窗口规则、显示风格(例如指定要在带中的窗口和/或其他图形项目内使用的颜色、字体、风格等)等等。在一个实例中,策略引擎组件610 (例如经由强制策略614)可以用于确保给定z次序带620内的所有显示元素遵守所述带的显示属性622。在另一个实例中,显示属性622可以至少部分地基于用户偏好616而设置。在一个实施例中,显示属性622可以在不同的z次序带620之间改变以适应对应于z次序带620的特定应用类型(例如,文字处理、媒体回放、web浏览、即时消息等)。在另一个实施例中,除了或取代整个z次序带620,由策略引擎组件610实现的策略可以对分配到z次序带620的显示元素的子集进行操作。如本文所述,z次序带可以用于强制用于z次序栈中的相应位置的策略。例如,图7中的示意图700示出包括一组图形元素的实例z次序栈。如图700所示,在缺乏可实施的z次序策略时,图形元素可以在z次序栈内自由移动。然而,通过实现示意图710所示的Z次序带,图形元素可以被限制于由所述Z次序带限定的Z次序栈的段712-714。通过这样做,Z次序带可以用于通过控制什么视觉地再现于显示器的处于上面的水平来强制什么可以什么不可以在显示屏上看到。尽管Z次序带在示意图7中被示为由一组“壁”限定,但是应当理解所述带可以是透明实现的,使得来自较低z次序带的图形在缺乏在相同位置的更高z次序带中的其他图形时是可见的。如本文进一步所述,z次序带还可以用于有效地确立对应于不同应用类型的项目的显示的属性。例如,如图8中的示意图800所示,z次序栈可以被划分为一组z次序带,其中每一个带对应于一个或多个应用类型。因此,z次序带可以确立关于显示具有比其他技术和/或应用类型更高的优先级的某些技术和/或应用类型,从而确立显示的“架子”。在另一个实例中,将相应应用类型分配到不同的z次序带可以用于使窗口保持与其他窗口的相对位置。通过特定的非限制实例,各带可以用于确保可访问性窗口被显示在系统中所有其他窗口上面。接下来转到图9,根据一个或多个实施例图示了示范性带管理组件900。如上所述,对应于图形显示系统的Z次序栈可以被划分成一组Z次序带。在一个实例中,这些Z次序带可以以模块化方式定义,以实现新带的创建、带的移除、带的重新排序和/或其他适当的操作。例如,带管理组件900可以包括:用于创建一个或多个新z次序带的带创建组件902 ;用于重新排序相应的z次序带的带重新排序组件904 ;和/或用于管理一组z次序带的任何其他适当机制。在实施例中,分离的带可以用于不同的技术。因此,带管理组件900可以(例如经由带创建组件902、带重新排序组件904和/或其他机制)添加、移除或重新排序一个或多个带,而对剩余带影响最小。在另一个实施例中,可以在一个或多个z次序带内提供其他排序粒度。例如,如图10所示,被分配给z次序带1000的显示元素可以进一步由按带排序组件1010和/或其他适当机制来处理,这可以在由显示组件1020再现之前对带内的显示元素进行排序。按带排序组件1010可以根据任何适当的标准(例如应用或应用类型、用户输入或偏好等等)来操作。在另一个实施例中,如本文所述的z次序带可以进一步用于提供许可证注册水印功能。例如,如图11所示,计算环境的一个或多个受许可元素(例如应用、操作系统等)可以利用许可证注册过程,通过该过程对应于计算环境的受许可元素的许可证(一个或多个)得以验证和/或以另外方式(例如经由注册组件1100)注册。此外,计算环境可以利用带管理组件1100和/或其他适当机制来管理根据本文的各种实施例描述的窗口和/或其他显示元素的再现。在实施例中,带管理组件1100可以保持注册水印显示在注册显示带1112上。该注册水印显示可以包括例如用于注册受许可计算系统元素(一个或多个)的指令或其他信息和/或任何其他适当信息或图形项目。一旦确定了计算环境的受许可元素尚未被成功注册(例如一旦满足其他条件,例如经过预定量的时间等),带管理组件1110可以将与注册显示带1112相关联的显示连同一个或多个系统显示带1114上的其他显示元素提供到显示组件1120以供再现。注册显示带1112被配置成使得实现其显示在与系统显示带1114相关联的所有显示元素之上。此外,带管理组件1110可以被配置成防止(例如经由策略引擎组件和/或任何其他适当机制)任何其他显示元素进入注册显示带1112且干扰其可见性。在一个实例中,一旦注册了计算系统的受许可元素(一个或多个),则注册显示带1112可以被禁止(disabled),使得注册水印显示不再干扰系统显示带1114的可见性。图12是图示用于z次序显示管理的示范性非限制性过程的流程图。在1200处,一组z次序显示带与相应的深度范围和应用类型相关联。在1210处,图形元素根据与该图形元素相关联的应用类型而被分配给相应的z次序显示带。在1220处,z次序显示带被排序,使得与更高(例如,更浅)深度范围的z次序显示带相关联的图形元素被显示在与更低(例如,更深)深度范围的z次序显示带相关联的图形元素之上。在1230处,图形元素根据在1220处执行的排序显示。图13是图示用于计算机显示器的注册水印的示范性非限制性过程的另一个流程图。在1300处,计算环境的至少一个受许可元素(例如操作系统、应用等)被识别。在1310处,获得涉及与计算环境相关联的图形的信息。在1320处,在显示器上再现与计算环境相关联的图形。在1330处,确定与受许可的应用(一个或多个)相关联的许可证是否已被注册。如果该许可证已被注册,则正常操作继续。否则,在1340处,在与计算环境相关联的图形前面再现不可改变的注册水印。示范性的联网和分布式环境
本领域技术人员可以理解,本文所述的显示管理系统和方法的各种实施例可以结合可以部署为计算机网络的一部分或部署在分布式计算环境中的任何计算机或其他客户端或服务器设备来实现。就这一点而言,本文所述的各种实施例可以在具有任意数量存储器或存储单元、以及跨任意数量的存储单元发生的任意数量的应用和过程的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储装置的网络环境或分布式计算环境中的服务器计算机和客户端计算机的环境。分布式计算提供了通过在计算设备和系统之间的通信交换共享计算机资源和服务。这些资源和服务包括信息交换、针对对象(例如文件)的盘存储装置和高速缓存。这些资源和服务还包括跨用于加载平衡的多个处理单元共享处理能力、资源扩展、处理专门化等等。分布式计算利用网络连接的优势,从而允许客户端影响它们的集体力量以有益于整个企业。就这一点而言,多种设备可以具有可以参与针对主题公开的各种实施例描述的显示管理机制中的应用、对象或资源。图14提供了示范性联网或分布式计算环境的示意图。该分布式计算环境包括计算对象1410、1412等和计算对象或设备1420、1422、1424、1426、1428等,其可以包括由应用1430、1432、1434、1436、1438表示的程序、方法、数据存储、可编程逻辑等。可以理解,计算对象1410、1412等和计算对象或设备1420、1422、1424、1426、1428等可以包括不同的设备,例如个人数字助理(PDA)、音频/视频设备、移动电话、MP3播放器、个人计算机、膝上型计算机
坐寸ο每个计算对象1410、1412等和计算对象或设备1420、1422、1424、1426、1428等可以与一个或多个其他计算对象1410、1412等和计算对象或设备1420、1422、1424、1426、1428等通过通信网络1440直接或间接地通信。即使在图14中图示为单个元件,通信网络1440可以包括向图14的系统提供服务的其他计算对象和计算设备,并且/或者可以表示未示出的多个互连网络。每个计算对象1410、1412等或计算对象或设备1420、1422、1424、1426,1428等还可以包含可能利用API或其他对象、软件、固件和/或硬件的应用(例如应用1430、1432、1434、1436、1438),所述API或其他对象、软件、固件和/或硬件适用于与根据本主题公开的各种实施例提供的显示管理技术通信或实现该显示管理技术。
存在支持分布式计算环境的多种系统、组件和网络配置。例如,计算系统可以通过有线或无线系统、通过本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合到因特网,这为广泛分布的计算提供基础设施并且包含许多不同的网络,但是任何网络基础设施可以用于示范性的通信易于发生于如各种实施例中所述的显示管理系统。因此,网络拓扑和网络基础设施的主机,例如客户端/服务器、对等或混合架构,可以被利用。“客户端”是类或组的成员,其使用与其无关的另一类或另一组的服务。客户端可以是请求由另一个程序或过程提供的服务的过程,即粗略地为一组指令或任务。客户端过程利用所请求的服务,而不必“知道”关于其他程序或该服务本身的任何工作细节。在客户端/服务器架构中,特别是联网的系统中,客户端通常是访问由另一个计算机(例如服务器)提供的共享网络资源的计算机。在图14的图示中,作为非限制性实例,计算对象或设备1420、1422、1424、1426、1428等可以被看作是客户端,且计算对象1410、1412等可以被看作是服务器,其中充当服务器的计算对象1410、1412等提供数据服务(例如从客户端计算对象或设备1420、1422、1424、1426、1428等接收数据、存储数据、处理数据、将数据传送到客户端计算对象或设备1420、1422、1424、1426、1428等),但是依赖于情况,任何计算机可被看作是客户端、服务器或二者。服务器典型地是可通过远程或本地网络访问的远程计算机系统,所述网络例如因特网或无线网络基础设施。该客户端过程在第一计算机系统中可以是活动的,并且该服务器过程在第二计算机系统中可以是活动的,它们通过通信介质彼此进行通信,从而提供分布式功能并允许多个客户端利用服务器的信息收集能力。依照本文所述技术利用的任何软件对象可以被独立地提供或跨多个计算设备或对象分布。在通信网络1440或总线例如是因特网的网络环境中,计算对象1410、1412等可以是其他计算对象或设备1420、1422、1424、1426、1428等经由多个已知的协议(例如超文本传输协议(HTTP))的任意一个与其通信的Web服务器。充当服务器的计算对象1410、1412等还可以用作客户端,例如计算对象或设备1420、1422、1424、1426、1428等,这可以是分布式计算环境的特性。示范性计算设备
如上文所述,有利地,在期望执行计算系统中的显示管理的情况下,本文所述的技术可以应用于任何设备。因此,可以理解,手持式、便携式和其他计算设备和所有种类的计算对象被设想结合各种实施例使用,即可以利用计算系统显示设备的任何地方。因此,下文的图15中所述的以下通用远程计算机仅仅是计算设备的一个实例。尽管没要要求,但是实施例可以部分地经由设备或对象的服务开发者所使用的和/或包括在执行本文所述的各种实施例的一个或多个功能方面的应用软件内的操作系统实现。软件可以在由一个或多个计算机(例如客户端工作站、服务器或其他设备)执行的计算机可执行指令(例如程序模块)的一般背景下描述。本领域技术人员将会理解,计算机系统具有可以用于传送数据的多种配置和协议,并且因此没有特定配置或协议应当被认为是限制性的。图15因此图示了适当的计算系统环境1500的实例,其中本文所述的实施例的一个或其各方面可以在其中实现,尽管如通过上文变得清楚的,计算系统环境1500仅仅是适当的计算环境的一个实例并且不旨在暗示关于用途或功能范围的任何限制。计算系统环境1500不应当被解释为具有与示范性计算系统环境1500中图示的组件的任意一个或组合相关的任何依赖性或要求。参照图15,用于实现一个或多个实施例的示范性远程设备包括计算机1510形式的通用计算设备。计算机1510的组件可以包括但不限于处理单元1520、系统存储器1530和将包括系统存储器的各种系统组件耦合到处理单元1520的系统总线1522。计算机1510典型地包括多种计算机可读介质并且可以是可被计算机1510访问的任何可用介质。系统存储器1530可以包括易失性和/或非易失性存储器形式的计算机存储介质,例如只读存储器(ROM)和/或随机存取存储器(RAM)。为了举例而非限制,系统存储器1530还可以包括操作系统、应用程序、其他程序模块和程序数据。用户可以通过输入设备1540将命令和信息输入到计算机1510。监视器或其他类型的显示设备也经由接口(例如输出接口 1550)连接到系统总线1522。除了监视器之外,计算机还可以包括诸如扬声器和打印机之类的其他外围输出设备,其可以通过输出接口 1550连接。计算机1510可以在使用到一个或多个其他远程计算机(例如远程计算机1570)的逻辑连接的联网或分布式环境中操作。该远程计算机1570可以是个人计算机、服务器、路由器、网络PC、对等设备或其他公共网络节点或任何其他远程介质消耗或传输设备,并且可以包括任何或所有相对于计算机1510的上述元件。图15中描绘的逻辑连接包括网络1572(例如局域网(LAN)或广域网(WAN)),但是也可以包括其他网络/总线。这样的联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是司空见惯的。如上文所述,尽管已经结合各种计算设备和网络架构描述了示范性实施例,但是潜在的概念可以应用于其中期望改进关于计算系统显示的用户体验的任何网络系统和任何计算设备或系统。而且,存在实现相同或相似功能的多种方式,例如适当的AP1、工具箱、驱动器码、操作系统、控制、独立或可下载的软件对象等,其使得应用和服务能够利用本文所提供的技术。因此,本文的实施例从API (或其他软件对象)以及从实现如本文所述的一个或多个实施例的软件或硬件对象来设想。因此,本文所述的各种实施例可以具有完全在硬件中、部分在硬件中且部分在软件中以及在软件中的方面。词语“示范性的”在本文中被用于意指用作实例、示例或说明。为了避免疑问,本文所公开的主题不限于这样的实例。此外,本文中描述为“示范性的”任何方面或设计不必被解释为相对于其他方面或设计是优选的或有优势的,它也不旨在排除等价的本领域技术人员已知的示范性结构和技术。而且,在使用术语“包括”、“具有”、“包含”和其他类似词语的程度上(to the extent),为了避免疑问,这样的术语意欲以类似于作为开放的过渡词语的术语“包括”的方式而成为包含的,并不排除任何附加的或其他元件。如上文所述,本文所述的各种技术可以结合硬件或软件或在适当情况下结合二者的组合实现。如本文所使用的术语“组件”、“系统”等等同样旨在指计算机相关实体,或者硬件、硬件和软件的组合、软件,或者执行中的软件。例如,组件可以是但不限于是运行在处理器上的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过图示,运行在计算机上的应用和该计算机二者都可以是组件。一个或多个组件可以存在于执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。已经相对于若干组件之间的交互描述了上述系统。可以理解,这样的系统和组件可以包括那些组件或指定的子组件、所述指定的组件或子组件中的一些和/或附加组件并且依照前述内容的各种排列和组合。子组件还可以实现为通信地耦合到其他组件而不包括在父组件(层次的)内的组件。此外,可以注意,一个或多个组件可以被组合成单个组件,其提供总计功能或被分成若干分离的子组件,并且任何一个或多个中间层(例如管理层)可以被提供以通信地耦合到这样的子组件以便提供集成的功能。本文所述的任何组件还可以与本文未具体描述但本领域技术人员通常已知的一个或多个其他组件交互。鉴于在前所述的示范性系统,可以根据所述主题实现的方法还可以参照各种附图的流程图理解。尽管为了解释简单的目的,所述方法被示出并描述为一系列方框,但是应当理解并认识到各种实施例不受这些方框顺序的限制,因为一些方框可以根据本文所描述和描绘的以不同的顺序和/或与其他方框同时进行。在非连续或分支的流程经由流程图而图示的情况下,可以理解,可以实现达到相同或相似结果的各种其他分支、流程路径和方框的顺序。而且,不是所有图示的方框都可以需要来实现下文描述的方法。除了本文描述的各种实施例之外,应当理解,可以使用其他类似实施例,或者可以对所述实施例(一个或多个)进行修改和添加以用于执行对应实施例(一个或多个)的相同或等价功能,而不脱离其中。进一步地,多个处理芯片或多个设备可以共享本文描述的一个或多个功能的性能,并且类似地,存储装置可以跨多个设备实现。因此,本发明不应当限于任何单个实施例,相反应当以根据所附权利要求的外延、精神和范围来解释。
权利要求
1.一种图形显不管理系统,包括: 带管理组件100,其被配置成,定义Z次序带组110,将相对的Z次序范围与Z次序带组110的Z次序带相关联,将显示元素分配到Z次序带组110的相应Z次序带,以及生成Z次序带的线性次序以使得被分配到所述z次序带组110的、与第一 z次序范围相关联的第一 z次序带的第一显示元素被显示在被分配到所述z次序带组110的、与第二 z次序范围相关联的第二 z次序带的显示元素前面,所述第二 z次序范围比第一 z次序范围更深;和显示组件120,其被配置成根据所述z次序带的线性次序再现显示元素。
2.根据权利要求1的系统,其中所述z次序带组110的z次序带对应于相应的应用类型。
3.根据权利要求1的系统,其中所述带管理系组件100包括: 策略引擎组件610,其被配置成保持由带管理组件100利用的一组策略以将显示元素分配到所述z次序带组110的相应z次序带。
4.根据权利要求1的系 统,其中所述z次序带组110的相应z次序带被配置成具有显示属性并且所述显示组件120进一步被配置成根据配置它们的分别分配的z次序带所利用的显示属性来再现显示元素。
5.根据权利要求1的系统,其中所述带管理组件100被进一步配置成至少部分地基于用户偏好将显示元素分配给所述z次序带组110的相应z次序带。
6.根据权利要求1的系统,其中所述带管理组件100包括: 带创建组件902,其被配置成:创建至少一个z次序带,将所述至少一个z次序带分配给至少一个对应的z次序范围,以及将所述至少一个z次序带与所述z次序带组110相关联。
7.根据权利要求1的系统,其中所述带管理组件100包括: 带重新排序组件902,其被配置成改变与所述z次序带组110的相应z次序带与其相关联的z次序范围。
8.根据权利要求1的系统,进一步包括: 按带排序组件904,其被配置成将z次序位置与被分配给所述z次序带组110的z次序带的显示元素相关联; 其中所述显示组件120进一步被配置成根据相应的z次序位置再现被分配给所述z次序带组110的所述z次序带的显示元素,并且其中与第一 z次序位置相关联的显示元素被显示在被分配给比第一 z次序位置更深的第二 z次序位置的显示元素前面。
9.根据权利要求1的系统,进一步包括: 注册组件1100,其被配置成促进与显示元素相关联的计算环境的注册; 其中所述带管理组件100进一步被配置成:如果与该系统相关联的计算环境尚未被该注册组件注册,则生成未注册的显示带并且将未注册的图形显示与该未注册的显示带相关联;以及 其中所述显示组件120进一步被配置成:如果与该系统相关联的计算环境尚未被注册组件注册,则在显示元素前面再现与未注册的显示带相关联的未注册的图形显示。
10.一种用于管理计算机显示器的方法,包括: 将Z次序显示带组与相应的深度范围和应用类型相关联1200 ;根据与图形元素相关联的应用类型将图形元素分配1210给所述z次序显示带组的相应z次序显示带; 对z次序显示带进行排序1220,以使得被分配给与第一深度范围相关联的第一 z次序显示带的第一组图形元素被显示在被分配给与第二深度范围相关联的第二 z次序显示带的第二组图形元素之上,该第二深度范围在z维上比第一深度范围更深;以及 根据所述排序显示1230图形元素。
11.权利要求10的方法,其中所述分配1210包括: 至少部分地基于一组带管理策略将图形元素分配给所述z次序显示带组的相应z次序显示带。
12.权利要求11的方法,其中所述分配1210进一步包括下述至少一项: 至少部分地基于一组带进入策略控制图形元素进入所述z次序显示带组的相应z次序显示带; 至少部分地基于一组带退出策略控制图形元素退出所述Z次序显示带组的相应Z次序显示带;或 至少部分地基于一组带强制策略控制图形元素在所述Z次序显示带组的各Z次序显示带之间的移动。
13.权利要求10的方法,其中: 所述方法进一步包括:将所述Z次序显示带组的Z次序显示带与相应的显示属性相关联,该显示属性包括 显示格式属性、开窗口规则、全屏显示属性或图形元素大小中的至少一个;以及 所述显示1230包括根据与图形元素被分配给的所述Z次序显示带组的Z次序显示带相关联的显示属性来显示所述图形元素。
14.权利要求10的方法,其中所述分配1210包括: 至少部分地基于用户偏好将图形元素分配给所述z次序显示带组的相应z次序显示带。
15.权利要求10的方法,进一步包括: 经由下述操作中至少一个修改所述z次序显示带组:将一个或多个z次序显示带添加到所述z次序显示带组;从所述z次序显示带组移除一个或多个z次序显示带;组合所述z次序显示带组的一个或多个Z次序显示带;或者对与所述Z次序显示带组的一个或多个Z次序显示带相关联的深度范围重新排序。
全文摘要
本主题公开涉及通过使用z次序带管理计算系统显示内的元素的z维排序。如本文所述,z次序带用于对应于相应的应用类型布置窗口和其他图形。策略引擎控制哪些窗口和/或其他图形元素可以进入和退出每个带。给定带内的图形元素可以另外服从对应于该带和/或用户偏好的按带属性。如本文另外所述,z次序带和/或其他适当机制被用于促进通过在确定计算系统的一个或多个受许可元素尚未被注册时再现注册水印显示而对计算环境注册水印。该注册水印显示被分配z次序带,其实现了其显示在与计算系统相关联的所有其他图形元素之上并且防止其他图形元素干扰其显示。
文档编号G06F9/44GK103092598SQ20111042305
公开日2013年5月8日 申请日期2011年12月16日 优先权日2010年12月16日
发明者G.德贝克, A.斯尼特科夫斯基夫, C.古扎克, J.斯蒂芬斯, T.奥尔森, M.萨德克, 山本浩文, R.贾雷特, D.阿扎里安, A.唐, J.男, A.福德, C.萨里恩 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1