发明背景
在当今信息饱和的环境中,诸如因特网,本地或远程计算机网络,或任何因特网的组合等此类网络,用户经常难于跟踪可能的大批量的及各种关心的通信和信息。这种通信和信息例如包括,电子邮件、即时信息、文件传输、地方性天气、约会、日程、私人接触、统计信息、文件状态、股票行情、体育比分、地方交通或其他任何类型的通信或信息。这个问题在通信与/和信息是动态时尤其严重,以致快速地、多次地或大规模地转换到通信状态或信道,或者在信息中导致对用户来说经常相对无用的过时通信与/和信息。
为了应对这个难题,已经研发几个常规的方案以帮助用户了解具体的通信或信息,每当用户检查通信或信息时,不需要用户人工地检索或人工地检查通信或信息的更新。然而,这种方案一般受如下限制,即什么类型的通信或信息可以被跟踪或显示,通信或信息被访问或相反被提供给用户的这种方式,或者无力促进用户之间的通信或信息的共享。此外,企图解决这些难题的常规方案易于受不能提供单一接口的限制,该单一接口允许并行信息检索、显示或与动态集成环境中的多个通信或通信项目点相结合地访问。因此,经常交给用户杂乱的显示,该杂乱的显示提供访问或者与具体类型的通信或特定信息的交互,但不提供与通信及信息访问的交互以及集成环境中的交互。
几个常规的信息类型方案企图解决这些难题。然而,这种方案一般提供大窗口,其占据了相当大的屏幕空间。此外,这种方案虽然提供了某些通信能力以及一些信息搜集或显示能力,但是其倾向于通过一个或多个标记等将通信能力和信息能力分割开。因此,特定的信息不能被轻易地共享或从这些方案提供的应用程序中传递出来。此外,随着用户跟踪信息的数量的增加,以及随着用户保持的通信联络的数量的增长,这种方案变得不甚实用。具体的说,由于信息数量的增加,用户不得不从头至尾翻滚大量数据或通信信道。
例如,几个常规的通信类型方案通过因特网或其它本地或远程网络、或者它们的某些组合来提供留意信息的能力,诸如股票行情、天气、新闻或其他信息。此外这些常规的方案还通过大量信道之一为通信访问作准备,诸如文本即时通信、文件传输、电子邮件等等,该信道用于一个或多个联系组中的联系。因此,用户能保持跟踪信息和与特定实体的通信。令人遗憾的是,使用这些方案,用户不能同时进行两者。他不得不在不同的信息类型和通信性能之间调整。所以,用户不能通过具有通信标记中的联络的信息标记共享所观看到数据,除非用户人工地存储或复制信息,切换标记,然后人工地创建信息到具体的联络,以及或者将信息附在或粘贴到信息上。
此外,因为这些常规的方案趋向于具有许多标记,因此它们需要一个相当大的窗口,以便显示信息及关联的控制或图标。令人遗憾的是,当用户正在使用其它应用程序时,这种窗口将被其它应用程序窗口覆盖。因此,用户常常不得不中断工作流程以在窗口之间进行切换。这个问题已经通过某些提供维持打开信息窗口的选项的方案得到解决。虽然这个方案解决了覆盖信息窗口的问题,但是信息窗口会挡住其他任何打开的应用程序窗口的很大一部分。虽然,有可能人工地缩放不同的应用程序窗口并在屏幕周围移动他们以企图给予每个窗口它自己的空间,但是对于典型的用户来说,这种人工用户干预既费时又窗人。
至少一个常规的方案已试图解决上述的一些问题。这个方案提供一个应用程序,其允许用户在沿着计算机显示装置的一个边缘的滚动条中设定一个图标。这个方案提供连接到具体信息源的图标化链接,并且运用传统方法将从信息源检索出来的信息填充每个设定的图标。然而,这个方案具有几个重要的局限性。
虽然这个方案为搜集和提供信息给用户做准备,但是其没能提供由信息方案提供的通信性能的级别。例如,这个方案不为通过图标启动通信做准备,所以虽然图标可以提供通信状态,诸如接收的信息数,但是它不提供对这种信息的答复。此外,这个方案不提供对图标组嵌套或相反组织图标组以集合多种图标。换句话说,打开与一个图标关联的窗口不提供对已分组图标的进一步层次的访问。因此,在使用大量图标的地方,难于组织图标。另外,这个方案的图标不易于移植,并且没有真正存在用于传递用户之间的图标的机制。作为替代,需要用户从用于管理图标的应用程序中获得图标。这个方案的其它限制包括缺乏调整包含有用于显示图标的滚动条的窗口大小的能力。此外,对于这个方案,如果用户添加太多的项目,另一个行或条被自动地建立在窗口之内,即使行仅具有一个图标,从而导致有效显示空间的浪费。
一种相关的方案允许用户设定滚动断续器型显示窗口,以持续地提供来自于有效信息的预先确定组中的更新的滚动信息。虽然有用,但是有几个理由说这个方案比先前的方案更受限。第一,预先确定对这个方案有效的信息组。因此,如果信息类型和源不作为选项列出,那么它们是不可用的。然而,在确定的信息选项上向用户提供有限的控制,诸如具体的用于股票行情的股票符号,选择新闻的领域或主题以生成一个自动通知,或者选择具体的城市以生成气象预报。另一个限制是用户不能诸如通过修改如上所述的图标来添加或编辑信息源。此外,由于断续器滚动,所以不能保证所有关心的信息能够在给定的时间被看到。具体地说,如果用户关心的信息目前不可见,则用户必须等到信息滚动为可见的。因此,由于用户必须连续地监视该显示,因此这个方案可能变得非常使人分心。此外,因为滚动断续器处于匀速运动,当其在用户的边缘视觉范围内创建持续运动时,这实质上可能使用户十分分心。最后,这个方案通信能力与上述通讯联系的方案相比较而言是最小的。
提供定制信息视图或显示的其它方案包括称为″网页抽取″。通常,这种方案允许用户指定将要显示在单一设定的网页上的唯一的因特网网页的具体部分,即源网页。因此,虽然这种方案提供了信息检索和显示,但是它们不提供通信能力。
例如,一种网页抽取方案允许用户从各种因特网网站″修剪″有关数据和内容并且将其一起摘录在一个称为″视图″的动态浏览器页中。这个视图实际上是一种合成网页。因此,由于任何源网页是变化的,因此合成网页被自动地更新。这个方案允许用户以各种方式编辑视图,诸如通过增加、删除和重新组合数据成分及随着用户自己的输入人格化该视图。另外,这个方案提供一种用于在用户之间传递视图的方法。然而,相对于上述方案来说,这个方案同样苦于如上所述的基本限制。这种限制包括不能嵌套或组织视图以及安排同时显示的多个视图。此外,如上述,这种方案一般提供最小的通信或发信能力。
网页抽取技术还需要在窗口中打开的视图,而该窗口占据了显示设备的相当大的一部分。另外,典型的网页内容一般不设计成能最小化其中显示信息的区域,这导致了屏幕空间的低效率使用。此外,如果被凑集的或相反从现有的网页中修剪来的网页的一部分包括动画,那么如果其在用户的外围视觉内,则网页可以被分散。最后,因为网页抽取技术是一种不同成分的修缮工作,由这个技术产生的合成网页一般为不同成分的无吸引力的拼凑物,其从不是被可见地设计成能一起出现在单一页上。
在有些情况下,用户可能要知道实时信息和通知。普通的用户接口系统不会提供一种足够解决这些需要的解决方法,其虽然也向用户提供灵活性、使用方便和结构上的选择。
此外,用户时常需要使用控制或其他应用接口,这不依赖于他们的当前任务。在这些情况下,用户就不得不从当前任务窗口切换到另一个窗口或应用程序。例如,如果用户正在使用字处理包,而且想改变光盘磁道或其他这类任务,那么用户将需要访问媒体播放机应用程序的控制器,该控制器一般显示在不同的窗口中。这样的一个实例是诸如视窗操作系统环境中的视窗媒体播放机(WINDOWS MEDIA PLAYER)。
需要一种新系统和方法来自动地在交互的周边显示中提供动态通信访问和信息意识,而不需要用户在信道或信息类型之间调整。此外,这种系统和方法将需要用户从预先确定的通信项目点和信息类型或信息源中选择,而代之以允许生成和定制通信项目点和信息源。这种通信项目点应包括用于联系其他实体的信道,和来自于多个应用程序的信息显示。信息源应包括任何所需的信息成分,诸如特定的信息类型或信息种类。另外,这个系统和方法将允许用户将任何所需信息源组织入任何所需数目的组或嵌套组中。此外,这些组或嵌套组应能够由用户扩大,以便允许用户浏览这些组或嵌套组中的嵌套组或通信项目点或信息成分。最后,虽然这种系统和方法提供生动的信息,但是其将减少混乱并增加用户显示的一致性,并且提供常用控制的平台。
发明的详细说明
本发明的具体实施例旨在一种提供用户接口的系统和方法,该用户接口即使在该应用程序被最小化时也允许用户访问应用程序的重要特征。当应用程序被最小化时,表示应用程序的标题出现在工具条中。该工具条允许自动或用户直接添加或移除标题。此外,该工具条可见地缩小它的内容显示,以便向用户提供新添加标题的位置和出现的预览。另外,可以为表示那些不能放入工具条的标题的图标提供溢出区。
已简要地提供了本发明的概述,下面将参考附图1-10来描述本发明的具体实施例。下面将描述用于本发明的典型运行环境。
典型运行环境
图1说明一个其上可以实施本发明的适当计算系统环境100的实例。该计算系统环境100仅仅是适当计算环境的一个实例,并不用于暗示是对本发明的适用范围或功能所作的任何限制。也不应将计算环境100解释为具有与典型运行环境100说明的任何一个或组合部件有关的任何从属性或必要条件。
一般可以计算机可执行指令的上下文形式来描述本发明,诸如由计算机执行的程序模块。一般而言,程序模块包括执行具体任务或执行具体抽象数据类型的例行程序、程序、对象、部件、数据结构等。此外,本领域熟练的技术人员将理解发明可以与其他的计算机系统结构,包括手持设备、多处理器系统、基于微处理器的或可编程的消费电子设备、小型计算机、主计算机等等一起实施。本发明还可以在其中由远程处理装置执行任务的分布式计算环境中实施,该远程处理装置通过通信网链接。在一种分布式计算环境中,程序模块可以位于本地存储介质中也可以位于远程计算机存储介质中,包括存储器装置。
请参考图1,用于实施发明的典型系统100包括计算机110形式的通用计算装置,该计算机110包括处理单元120、系统存储器130和将各种系统组成部件(包括系统存储器)耦合于处理部件120的系统总线121。
计算机110一般包括各种计算机可读介质。举例来说(但不限于),计算机可读介质可以包括计算机存储器介质和通信介质。系统存储器130包括易失性和/或非易失性存储器的计算机存储器介质,诸如只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS),包括有助于在计算机110内部的元件之间传递信息的基本例行程序,诸如在启动期间,其一般保存在ROM131中。RAM132一般包含数据和/或程序模块,这些可以由处理单元120立即访问和/或立刻在处理单元120上运行。举例来说(但不限制),图1说明操作系统134、应用程序135、其它程序模块136、和程序数据137。
计算机110可以同时包括其它可移动/固定的、易失性/非易失性计算机存储器介质。仅仅举例来说,图1说明读取或写入固定的、非易失性磁介质的硬盘驱动器141,读取或写入可移动的、非易失性磁盘152的磁盘驱动器151,和读取或写入可移动的、非易失性光盘156的光盘驱动器155,诸如CD-ROM或其它光学介质。可被用于典型运行环境的其他可移动的/固定的、易失性/非易失性计算机存储器介质包括(但不限于)盒式磁带、闪存卡、数字通用磁盘、数字视频磁带、固态RAM、固态ROM等等。硬盘驱动器141一般通过固定的存储器接口,诸如接口140连接到系统总线121,而磁盘驱动器151和光盘驱动器155一般通过可移动的存储器接口,诸如接口150连接到系统总线121。
图1所说明的驱动器和它们关联的计算机存储器介质提供对计算机可读指令、数据结构、程序模块及其他用于计算机110的数据的存储。在图1中,例如硬盘驱动器141被说明为存储操作系统144、应用程序145、其它程序模块146和程序数据147。请注意,这些部件可以相同或不同于操作系统134、应用程序135、其它程序模块136和程序数据137。操作系统144、应用程序145、其它程序模块146和程序数据147被给予不同的编号,以至少说明它们是不同的版本。用户可以通过输入装置,诸如键盘162和指示装置161将命令和信息输入计算机110,该指示装置161通常被称为鼠标器、轨迹球或接触板。其他的输入装置(未示出)可以包括麦克风、控制杆、游戏板、卫星反射器、扫描仪等等。虽然这些及其他输入装置往往通过耦合于系统总线121的用户输入接口160连接到处理部件120,但是也可以通过其它接口和总线结构连接,诸如并口、游戏端口或通用串行总线(USB)。监示器191或其它类型的显示设备也通过接口,诸如视频接口190连接到系统总线121。除了监示器之外,计算机还可以包括其它外围输出设备装置,诸如扬声器197和打印机196,它们可以通过输出外围接口195连接。
本发明的计算机110将在使用逻辑连接一个或多个远程计算机(诸如远程计算机180)的网络环境中运行。远程计算机180可以是个人计算机,并且相对于计算机110,一般包括如上所述的部分或全部元件,虽然图1仅仅说明了存储器装置181。所描述的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但是还可以包括其它网络。
当用于局域网LAN网络环境中时,计算机110通过网络接口或适配器170连接到局域网LAN171。当用于WAN网络连网环境时,计算机110一般包括调制解调器172或其可以在WAN 173(诸如因特网)上建立通信的装置。调制解调器172可以是内部或外部调制解调器,其可通过用户输入接口160,或其它适当机制连接到系统总线121。在网络环境中,相对于计算机110所描述的程序模块,或其中一部分可以存储在远程存储器存储装置中。举例来说(但不限于),图1说明了作为驻留在存储装置180上的远程应用程序185。应当理解,所示的网络连接是典型的,也可以使用其它在计算机之间建立通信链路的方式。
虽然没有示出计算机110的其它许多内部构件,但是正常熟知本领域的人员应了解这种部件和互连是公知的。因此,有关计算机110的内部结构的补充细节不必连同本发明来公开。
用户接口工具条
作为在此引用的″工具条″不同于目前所知的″任务栏″。作为在此使用的工具条,其引用沿着传统装置的一个或多个边缘的持续显示条。标题是一种动态的缩略图或″项″,其包括关心信息的描述的组合和显示表示任何息的″视图″。工具条和标题、或者被称为标签的更多详细说明可以在2001年6月8号的、序号为10/063,296的专利的应用程序中找到,其内容以引用的方式包含在本文中。工具条的各个特征在2003年4月25号申请的、美国专利申请号为10/423,597的专利申请中描述,在此以引用的方式将其包含在本文中。
如前所述,常规的用户接口显示它们要显示给用户的限制信息。这种系统一般提供任务栏,从该任务栏用户可以激活关心的应用程序窗口,以便进行交互或获得信息。由这种现有系统利用各种控制类型以将信息显示给用户。一些控制类型包括滚动条、可扩展的简略表、开始菜单、控制板和导致仅激活可见项的控制。常规用户接口的实例在图10中说明,并且一般被标记为显示器1000。
如图10所示,显示器1000包括任务栏1002。一般而言,任务栏1002可以包括各种任务组或单元,这些通过图标提供对运行环境外的应用程序或特征的访问。例如,任务栏1002的单元可以提供快速启动单元1003。快速启动单元1003能够开始一个或多个应用程序,诸如字处理应用程序、电子邮件程序、或在计算系统上的任何其他程序,这些程序可能已被适当的配置以从快速启动单元1003开始
任务栏1002的另一个单元,诸如活动任务1004,可以列举当前执行的任务。从活动任务栏1004,用户可以访问与程序关联的显示窗口,以便与程序特定有效数据进行交互。这种窗口的实例是媒体播放器1006窗口。使用媒体播放器1006窗口,用户可以浏览与当前播放媒体有关的信息,并且在用户的自行处理下,直接作用于媒体播放机。
任务栏1002的另一个单元是桌面带1008。桌面带1008是运行环境的语言控制的实例。
任务栏1002的单元还可以包括通知1010。通知区域1010提供有关应用程序或系统级通信的图标。例如,电子邮件状态、群聊伙伴,甚至音量控制都可以通过通知单元1010中的图标来访问。
为了提供活动的状态信息,任务栏1002提供toast 1012。Toast 1012本质上是一个提供来自于应用程序的通信的弹出窗口。例如,如所示,显示弹出信息,通知用户在收件箱中有信息。
当大量信息可用时,任务栏1002可能变得相当杂乱。此外,终端用户可用的图标的各种类型不一致。此外,任务栏1002不轻易地向用户提供用户需要立即访问的信息和控制。而且,任务栏1002包括访问任何信息的多个步骤。例如,为了访问音量控制,用户首先必须从通知单元1010中选择音量控制图标。
这使得显示音量控制。用户能因此调整音量到所需的程度。
图3显示根据本发明的具体实施例的用户接口结构。工具条302示出在显示300。工具条302可以包括有效数据区域304,用于用户关心的有效信息,以及包括平台重要控制区306,用于经常使用的控制。在有效数据304内部,可能有多个与若干应用程序和信息项有关的标题。重要的控制306还可以包括一个以上的任何用于控制系统或应用程序参数的项的标题。
有效数据304例如包括′Pamela Jones Online′标题308,其可以提供对因特网或网络应用程序的访问,或者包括发信息、聊天、电子邮件和浏览的其他功能。′Pamela Jones Online′标题308还包含个人联系标题310。′Pamela Jones Online′308的一些个人联系标题310也显示在有效数据304内。换句话说,′Pamela JonesOnline′标题308可以被认为是一个头部,而个人联系标题310将被认为是躯体。有效数据304的另一个实例是电子邮件通知标题312,其包括电子邮件314的列表。如所示,电子邮件通知312表示有两个新邮件信息。相应地,顶端两个电子邮件列表314被高亮,以表示它们是新的及未经阅读的。有效数据304的另一个实例是视频标题316,其在工具条中被实时更新。工具条302可以各种方式定位,并且可以提供变化的信息。
用户能够修改工具条302。用户可以添加、删除、缩放标题,或者根据需要可以对所显示的标题执行其他操作。当添加标题时,工具条确定是否全部显示区已被所有标题占用,包括新标题是否将超过工具条的显示区。如果全部的标题全符合工具条,那么新标题将被添加到工具条中并被显示。另一方面,如果新标题不能符合它的缺省大小,那么所有的标题将被压缩或“挤压”。因此,在工具条中,已有的标题和新标题将在大小上成比例地下降。新标题以预览状态示出,可不必要示出该标题的完整内容。如果,预览标题具有自然尺寸,也就是太大,那么除了被缩小比例,标题也可被中止。在结束预览时,新标题变为它的自然尺寸并且可以保持在工具条内,或者被移到溢出区中,这在该文中随后描述。其它在工具条中的标题一般被缩小比例。标题被减为所有标题在工具条302内可见而所需的程度。
系统应用多个标准中任何一个标准来选择哪个标题和多少标题将需要从工具条中移出,以使得剩余的标题能够以它们的缺省大小显示。移除任何标题的同时,建立一个图标以表示移除的标题。图标可以被置入溢出区(未示出)中,该溢出区位于工具条302的区域中。由于移除了′excess′标题,因此剩余的标题可以被扩大到它们的缺省大小。
标题的展开图可以依赖标题类型和标题的其它内容而变化。例如,如图4的屏幕说明400所示,′Pamela Jones Online′标题被以弹出的形式示出。在弹出408内具有两个显示信息的种类。第一个种类是在线组410,其可以具有一个或多个在线个人联系和组。第二个类目是脱线组412,其可以只具有个人联系。当′Pamela Jones Online′的信息被显示在工具条402之内时,躯体406包括来自于在线组410和脱线组412两者的个人联系。换句话说,弹出408的两个类目可以被混合在工具条402中。例如,脱线联系412A(Harold)包括在工具条402的躯体406内,并且被作为个人联系406B(Harold)显示在弹出408中。
可以自动或用户请求模式来将标题添加到工具条。自动添加可以与应用程序的安装和暂时控制的操作同时发生。用户请求的标题添加通过标题结构用户接口程序或通过用户在应用程特内指示而发生。标题添加的模式确定优先次序,并因此确定标题在工具条内的位置。
对于自动标题添加,当正在安装应用程序时,相关的新标题被添加到工具条的底部。在本发明的具体实施例中,给予用户预览工具条的机会。一旦已经添加了新标题,用户就可以看出工具条像什么。例如,如图7A所示,将电子邮件收件箱标题707添加到工具条702,导致了一个用户提示706。借用提示706的辅助,用户可以有选择地促使收件箱标题704继续显示在工具条702中或被隐藏。类似地,在图7B中,提示用户将日历标题添加到工具条702。当用户选择显示工具条中的新标题时,新标题被添加到该工具条的底部。图7C说明了这样的效果,其中电子邮件收件箱标题704和日历标题708被放置在工具条702的底部。应理解标题在工具条的位置可以根据本发明的其他方面变化。
图8说明提供的允许用户重新整理或缩放标题,重定位工具条和当保持访问标题时最小化工具条的工具。显示800可以允许用户选择工具条802内的任一标题的多个定制选项中的一个。例如,用户可以通过利用选项804来压缩标题,使得能够使用选项806来自动或人工缩放,相对于工具条内的另一个标题使用选项808向上或向下重新安置标题,或简单地使用选项810隐藏标题。
如上述说明所证明的那样,任务栏和工具条是独立的和不同的概念。任务栏集中于管理耗费大量空间并且是有充分资格的应用程序的窗口。可用窗口和任务栏中的项目之间是一对一关系。当用户关闭计算机时,任务栏中的所有运行的应用程序关闭,并且不会在下一次登录时位于任务栏中。另外,如下面所详细阐明的那样,当应用程序被最小化在任务栏中时,最小化的有充分资格的设在工具条中的应用程序具有不可用的功能。而且,工具条除了包含有充分资格的应用程序之外还可以包含信息。而且,工具条中的信息被定制。在用户关闭计算机之后,在下一次登录时,应用程序将保持在工具条中。
暂时标题和充足最小化应用程序
如上所述的出示在工具条中的一些标题当前保持在工具条中,并且在工具条之外不可用。其他标题,通常所说的暂时标题可以包括存在于工具条之外的应用程序,并且只应用户请求而出现于工具条中。例如,当应用程序被最小化时,用户可以要求应用程序出现在工具条中。工具条中的最小化的应用程序可以提供应用程序的基本功能,而不耗费过度的空间。具有这个能力的应用程序在此被称为″充足最小化应用程序″或″RMA″。
图2A说明用于实现本发明具体实施例的一种系统。本系统运行在诸如图1所示的计算环境内,并且包括充足最小化应用程序210、工具条控制230、和用户接口选择控制240。
充足最小化应用程序210是一种即使最小化应用程序也能够提供重要特征的应用程序。使用可用的特征选择模块212,当最小化应用程序210时,充足最小化应用程序210选择最可能被用户使用的那些特征。许多应用程序具有某些组的特征,其在即使应用程序窗口被小化时也对用户有用。这个特征选择模块212能够确定哪个特征是重要的,以致它们在即使最小化应用程序210时应在屏幕上可用。由模块212选择的特征可以是或包括原始特征组的子组、整个原始特征组,或包括在原始特征组中的附加特征。
插入模块216可以控制将标题插入到工具条之内或其他用户接口机制,在该机制中,在最小化应用程序210之后,应用程序210驻留于其中。可以提供复原模块218以使应用程序210能够从它的最小化情形下复原。还可以提供特殊控制220。特殊控制220优选地包括具有还原按钮的充足最小化应用程序。还原按钮可以在最小化应用程序标题附近悬浮。用于应用程序210的右击菜单可以包括命令,该命令包括″复原″、″最大化″和″关闭″。特殊控制220可以另外包括“从栏中移除”选项。该“从栏中移出”选项优选地包括带有信息的对话框,该信息诸如“移除标题将来会阻止应用程序从最小化到工具条”。用户将具有选择″OK″或″Cancel″的机会。
除了它的特殊控制以外,应用程序210将显示作为任何其他暂时标题的相同行为。在重启或注销之后,最小化的应用程序210将保持在工具条中。应用程序210的标题可以负责重新开始任何处理,并且应用程序210也将能够根据接收的还原用户命令告诉工具条哪个应用程序应该被启动。
用户接口选择控制240包括选择工具,其能够使用户确定哪个应用程序最小化到了工具条,UI被放置在哪儿以及应用程序耗费了多少空间。工具条控制230可以监视以知道什么时候最小化了该窗口。工具条控制可以隐藏和显示应用程序的窗口,应用程序的任务栏按钮和所必需的应用程序的高度调整(alt-tab)项目。
使用上述部件,想断开用户的控制和信息的应用程序即使在其被最小化时也能将充足最小化应用程序标题插入工具条之内。例如,当将应用程序最小化在工具条中时,应用程序诸如媒体播放机可以提供诸如播放/暂停此类的控制和诸如歌曲名称此类的信息。当用户通过点击最小化按钮或其他方法最小化应用程序时,主应用程序窗口消失而在工具条中出现标题。该标题提供某些信息和控制,这些信息和控制在主窗口中,以致即使窗口是最小化的,但是用户仍然可以访问它们。
可以提供这种功能的应用程序包括像时钟、病毒检测器或在线伙伴列表一样的应用程序。可以最小化电子邮件程序,但是可以提供对特定的电子邮件的访问。TV窗口可以提供视频。在工具条中,可以向媒体播放机提供有限的功能,诸如暂停或播放栏。在本发明的一个具体实施例中,被最小化到工具条的应用程序确定哪个控制被提供在最小化的状态,但是由用户确定应用程序可以占用工具条多少空间。在附加具体实施例中,应用程序确定控制和/或所占用的空间,除非用户决定调节这些特征。
图2B、2C和2D说明根据本发明的具体实施例的通过其使应用程序210出现在工具条或从工具条消失的方法。图2B说明根据用户视角来实现最小化应用程序210的方法。在步骤A10中,用户最小化应用程序210。在步骤A12中,根据在步骤A10中从用户接收的命令,应用程序成为隐藏。在步骤A14中,向用户显露工具条标题。
图2C更进一步地说明根据系统视角的方法。在步骤A20中,应用程序执行例行程序以与工具条标题相关。该例行程序执行标题标识符和符号串以获得标题,并且也可选地指向应用程序的窗口的指针。在步骤A22中,应用程序从用户接收最小化命令。在步骤A24中,工具条监视以知道什么时候最小化了该窗口。在步骤A26中,工具条隐藏应用程序的任务栏按钮和应用程序的高度调整项目的任务栏,并且显示标题。
图2D说明在将应用程序210最小化在工具条中之后,用于还原应用程序210的方法。在步骤B10中,应用程序210从用户接收还原命令。用户可以通过点击标题中的还原按钮来生成命令。在步骤B20中,应用程序确定诸如还原模块此类的还原处理程序是否可用。如果该标题已执行了还原处理程序,那么在步骤B60中工具条在独立的线程上调用还原处理程序,并且在步骤B70中隐藏标题。
如果在步骤B20中,如果标题还没有执行还原处理程序,那么在步骤B30中隐藏标题UI,并且在步骤B40中工具条处理标题。在步骤B50中,工具条还原应用程序窗口、任务栏按钮和高度调整项目。在本发明的具体实施例中,根据用户视角,如果用户想转回到大窗口,那么用户可以选择标题中的还原按钮。还原按钮可以是RMA标题独有的。还原按钮的选择重打开应用程序窗口并且将标题从工具条移除。
如果用户不想将应用程序210最小化到工具条,那么用户可以选择上下文菜单或添加/移除标题页中的可用的″从栏中移除″选项。选择″从栏中移除″将阻止应用程序210最小化到工具条。在这种情况下,可以向用户提供确认以保证用户想移除标题或仅仅想关闭标题。用户可以从添加/移除页中重新添加应用程序210,从而应用程序210将再次被允许最小化到工具条。
工具条为最小化到RMA的应用程序提供了几个功能。当应用程序最小化时,工具条控制240可以放大到工具条而不是放大到任务栏。工具条控制240将从任务栏中移除窗口的按钮,并且将从高度调整菜单中移除项目。当还原窗口时,工具条将保证再次显示任务栏按钮和高度调整项目。
本发明的系统和方法可以处理各种标题。某些标题可以在所有时间内被可见地显示。暂时标题,诸如表示RMA的标题是仅仅表现为必需的或用户要求的一种。如图5A的显示500所示,暂时标题的操作可通过实例的方式来得到最好的解释。显示在工具条502内的最后标题是音量控制标题504,在其下有溢出区506。当需要暂时进度条标题508图5B时,标题被添加到工具条502,这使工具条502被压缩或挤压以获得空间。在图5B的显示507中说明该挤压的效果。
显示507示出挤压的或压缩的工具条510。挤压的工具条510使它的所有成分标题根据它们先前大小按比例地缩小在图5A工具条502中。这个挤压预览状态仅仅可以保持短暂的持续时间。工具条在预览期和暂时标题被放于溢出区之后回到未压缩状态。图5C示出这个效果,其中暂时进度条标题508被从工具条512移除,并且表示暂时标题的新图标被放置于溢出区516中。
标题添加或移除操作的第二模式包括用户需要的操作。用户请求的标题添加或移除可以通过结构接口发生,诸如图6的显示600所说明的一个。依靠运行环境或任何预先安装的应用程序,可以向用户显示选项屏幕602。在本发明的具体实施例中,选项屏幕602包括添加标题栏604和移除标题栏606。增加标题栏604向用户提供标题图像608、描述610和显示按钮612。在审阅了相关描述610之后,用户可以选择显示按钮612以使相关标题被放置于工具条内。将标题放置于工具条内的方法实际上和早先所描述的自动标题添加法一致。到溢出区中的工具条的压缩和标题的移动实际上一致。然而,对于在将标题挤入溢出区之前的行为,存在一个例外。当人工添加标题已导致工具条的挤压发生时,将要被挤入溢出区的标题将闪光。换句话说,在预先压缩或挤压的工具条的扩展和到溢出区之中的任何标题的挤入之前,用户的注意力可能被吸引到将要被挤入的标题上。
从工具条移除已有标题可能伴随有通过选项屏幕602的用户请求。移除标题栏606向用户提供标题图像608、属性图标616和隐藏按钮614。移除标题栏606列出工具条中的所有已有的和可移出的标题。移除标题栏606还分别指出暂时属性的标题。在自动标题头618下指定暂时标题。作为名称表示的属性图标616能够使用户指定到标题的信息。隐藏按钮614使得从工具条或溢出区中移除有关的标题。在暂时标题的情况下,隐藏按钮614阻止在工具条内露出标题,即使是在需要暂时标题时也是如此。
如前述,标题添加还可以通过应用程序中的用户指示发生。例如,应用程序可以容纳将标题添加到工具条的标准控制。当这种标题被添加到工具条时,标题可以被放置于工具条的顶端,或相反放置于另一个位置,其中标题被放置于工具条的底部。在工具条没有足够的空间的情况下,像所有其它情况将挤压工具条。在扩展之前,底部的标题在挤入溢出区前闪光。
图9A-9C是显示使用RMA的屏幕快照。图9A示出具有任务栏920和工具条902的显示900。任务栏920包括表示分别打开应用程序906和904的图标908和910。图9B说明图9A的应用程序904的最小化的显示900。代替打开应用程序904,图9B包括最小化工具条902中的应用程序912。最小化的应用程序912可以包括还原按钮934,以还原应用程序窗口并隐藏应用程序标题。如图9C所示,应用程序912是充足最小化应用程序。弹出窗口914提供歌曲选项916、更多唱片和艺术家917的目录和其它播放选项918。尽管最小化了应用程序,由于应用程序是RMA,所以当其出现在工具条902中时,也可继续提供功能。
对于活动在工具条内的充足最小化应用程序,即使当最小化了应用程序时,也向应用程序提供一种标准技术以提供对控制和信息的访问,。用户可以控制哪个应用程序会做这个,和当应用程序最小化时,其占用了多少空间。
在本发明的最优方案中,工具条以及标题通过利用应用程序接口(API)例行程序来建立,该应用程序接口由操作系统的供应商或其他第三方提供。在已描述的最优方案的实例中,操作系统环境是微软Windows。本领域熟练的技术人员应理解,在不脱离在此预期的范围的情况下,本发明的系统和方法可以实施在其他工具及其他运行环境中。在其中可以实施本发明的工具的实例包括Direct X和Macromedia。
虽然已在此详细描述和说明了特定具体实施例,但是应理解在不脱离本发明的范围和意向的情况下可以对本发明做出各种变化和修改。无论从哪一点来看,在此描述的具体实施例用于说明而非限制。在不脱离本发明的范围的情况下,本领域熟练的技术人员将清楚本发明相关的替换具体实施例。
从上文可看出该发明是一个较好的适合于达到上述的所有目标和目的方案,连同其它优点,对于本系统和方法,这些是明显的和固有的。应理解某些特征和子组合具有实用性,并且可与其他特征和子组合无关地被使用。这已被预见并且落入附加权利要求的范围之内。