首页> 中国专利> 控件创造和编辑环境

控件创造和编辑环境

摘要

可用户激活的操作屏(也称做统一兴趣层)包含任意数量的用户界面元素,在这里被称为“控件”,用于用户快速访问。响应于用户的命令,操作屏被调用,并且在屏上显示控件。用户可以在任意时间激活操作屏,使操作屏暂时取代用户屏上的现有用户界面显示。一旦激活操作屏,用户就可以与部分或全部控件进行交互操作,并能够通过添加、删除、移动或配置想要的个人控件来配置操作屏。当用户希望返回到他或她曾使用的正常用户界面时,用户发出解除操作屏的命令。一旦操作屏已被解除,就恢复前一用户界面状态,允许用户继续与操作系统进行正常的交互操作。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-16

    授权

    授权

  • 2009-10-07

    实质审查的生效

    实质审查的生效

  • 2009-08-12

    公开

    公开

说明书

本申请是申请日为2005年6月24日、申请号为200580016349.3、发明名称为“用于用户界面的统一兴趣层”的发明申请的分案申请。

相关申请的交叉引用

本申请作为部分继续申请要求2004年6月25日递交的题为“Unified Interest Layer For User Interface”的美国发明专利申请号10/877,968(代理人卷号8957)的优先权,其所公开的内容在此引入作为参考,同样要求2005年6月23日递交的题为“Unified InterestLayer For UserInterface”的美国发明专利申请(申请号仍然未知)(代理人卷号10236)的优先权,其所公开的内容在此引入作为参考。

本申请进一步要求2005年1月7日递交的题为“Unified InterestLayer Widgets”的美国临时专利申请号60/642,025(代理人卷号9920)的优先权,其所公开的内容在此引入作为参考。

该发明的主题总地涉及下列共同所有但未决的专利申请,其全部在此引入作为参考:

2004年6月25日递交的题为“Procedurally Expressing GraphicObjects for Web Pages”的美国临时专利申请号xx/xxx,xxx;

2004年6月22日递交的题为“User Interface for Assisting in theInstallation of an Asset”的美国发明专利申请号yy/yyy,yyy;

2004年4月16日递交的题为“High-Level Program Interface forGraphic Operations”的美国发明专利申请号10/826,762;

2004年6月11日递交的题为“system and method for processinggraphic operations with graphics processing unit”的美国发明专利申请号10/866,360;

2004年4月16日递交的题为“Improved Gaussian Blur”的美国发明专利申请号10/826,596;

2004年4月16日递交的题为“Systen For Emulating GraphicsOperations”的美国发明专利申请号10/826,744;

2004年6月24日递交的题为“user-interface design”的美国发明专利申请号aa/aaa,aaa;

2004年6月24日递交的题为“gaussian blur approximationsuitable for GPU”的美国发明专利申请号bb/bbb,bbb;

2004年4月16日递交的题为“system for optimizing graphicsoperations-”的美国发明专利申请号10/825,694;

2004年4月16日递交的题为“system for reducing thenumber ofprograms necessary to render an image”的美国发明专利申请号10/826,773;以及

2004年6月24日递交的题为“fast approximation functions forimage processing filters”的美国发明专利申请号cc/ccc,ccc。

技术领域

本发明总地涉及图形用户界面,尤其涉及一种包含用户感兴趣项的用户可激活、可配置的统一层。

背景技术

现代图形用户界面的特点是,它们允许同一时间在屏幕上显示大量项目。在领先的个人计算机操作系统,例如Apple MacOS X和Microsoft Windows XP所提供的用户界面上,能够根据用户的需要来显示、重叠、调整大小、移动、配置和重新格式化多个窗口。即使一些窗口隐藏在其它窗口之后,工具条、菜单和其他UI元素也提供了访问和激活这些窗口的机制。

虽然许多用户欣赏这样的用户界面能够在屏幕上同时呈现大量信息的能力,但其引起的“信息过载”也可能是不堪重负的。用户经常发现很难在大量的屏上元素中导航到某个特定的UI元素或窗口,甚至很难找到想要的元素。当用户界面允许用户以任何想要的布局,包括重叠、最小化、最大化等来放置屏上元素时,问题变得更加复杂。这种灵活性对有些用户来说是有用的,但是对其他用户来说会导致混乱。在屏幕上同时出现太多项会导致信息过载,并可能会成为有效使用计算机设备的抑制因素。

有些用户界面使屏幕的某些区域专用于保留某些常用的用户界面元素(诸如菜单条或用于激活常用程序或文件的图标)。然而,这样的区域大小通常受到限制,以便不占用太多宝贵的屏幕空间,否则,这些屏幕空间可以专用于显示屏的主工作区。虽然诸如数字钟元素或工具条这样的小元素可能非常适合显示在这样专用屏幕区域中,但是在这样的小屏幕区域中出现其它类型的元素就不合适了;因此在它们能够使用或浏览之前,必须激活或放大它们。这就导致又一级的混淆,因为项目需要激活或解除。此外,项目可以重叠或以其它方式来增加必须由用户来处理和管理的屏上元素的数量。

这些问题导致了许多用户未能发挥他们计算机的全部潜力,并且可能进一步导致挫折或混淆,尤其是在初学用户中间。

所需的是一种机制,用于提供很容易访问常用的用户界面元素,而不会引入额外的混乱或混淆。进一步需要的是一种机制,用于以用户可配置的方式提供这样的访问,以允许用户任意激活和解除UI元素,而造成的混淆最小。进一步需要的是一种机制,即允许用户很容易地激活和解除某些用户界面元素,而不管当前在用户屏幕上所打开窗口的数量,也不需要用户在一组打开的窗口中搜索特定的用户界面元素。

进一步需要的是一种机制,用于以用户可能很容易采用的、方便且易于使用的方式来解决上述问题,并且适合于现行图形用户界面的框架。

发明内容

根据本发明的技术,提供一种可用户激活的操作屏(也被称为统一兴趣层)。该操作屏可以包含任意数量的用户界面元素,这里被称为“控件(widgets)”,用于让用户快速访问。响应用户的命令,操作屏被调用,并且控件被显示在屏幕上。在本发明的一个方面,用户可以在任何时间激活操作屏,使操作屏暂时替换或覆盖在用户屏幕上的现有用户界面显示。

一旦操作屏被激活,用户就能够对部分或所有的控件进行操作,并可以视需要通过添加、删除、移动或配置各个控件来配置操作屏。当用户希望返回正常的用户界面时,用户发出使操作屏被解除的命令。一旦操作屏被解除,就恢复前一用户界面状态,允许用户继续执行与操作系统的正常交互操作。

在一方面,当激活操作屏时,操作屏暂时替换现有的用户界面显示。在另一方面,操作屏部分遮住现有的用户界面显示,但是允许现有显示的一部分是可见的,以便提醒用户它的存在。在另一方面,当操作屏激活时,现有的用户界面显示消失、变模糊和/或变暗。

在一方面,在操作屏的激活和/或解除期间,显示过渡效果,以便在操作屏出现和消失时帮助用户明白正在发生的事情。

在一方面,用户可以从任意数量的控件中进行选择,以任何期望的布局放到操作屏上。无论何时激活操作屏,控件都会出现在用户先前放置它们的位置上。

控件可以具有任何类型,它们能够与远程服务器通信,以便将信息(例如,天气预报)提供给用户,或者它们可以提供经常需要的功能(例如,计算器),或它们可以用作信息存储库(例如,记事本或日历)。有些控件可以提供这些类型功能的组合。在一方面,提供一种应用程序接口(API),以便允许第三方开发者创建和销售可提供不同类型功能的其它控件。

附图说明

附图与说明书一起描述了本发明的几个实施方式,用来解释该发明的原理。

图1是一个框图,其描述了根据一个实施方式用于实现本发明的总体系结构。

图2是一个流程图,其描述了根据本发明一个实施方式用于激活和使用操作屏的方法。

图3是一个框图,其描述了根据一个实施方式所述用于实现本发明的软件结构。

图4是一个屏幕快照,其描述了在操作屏激活之前的桌面用户界面。

图5是根据一个实施方式描述了操作屏的初始状态的屏幕快照。

图6是根据一个实施方式描述了操作屏的配置条的屏幕快照。

图7是根据一个实施方式描述了从配置条中对控件进行用户选择的屏幕快照。

图8是根据一个实施方式描述了包括计算器控件的操作屏的屏幕快照。

图9是根据一个实施方式描述了包括计算器控件和音乐播放器控件的操作屏的屏幕快照。

图10是根据一个实施方式描述了在音乐播放器控件的调用下音乐播放器应用的激活的屏幕快照。

图11是根据一个实施方式描述了包括计算器控件、音乐播放器控件和通讯簿控件的操作屏的屏幕快照。

图12是根据一个实施方式描述了通讯薄控件的操作的屏幕快照。

图13是根据一个实施方式描述了具有包括记事本控件在内的多个控件的操作屏的屏幕快照。

图14是根据一个实施方式描述了配置条已被关闭的操作屏的屏幕快照。

图15是根据一个实施方式描述了控件已被移动的操作屏的屏幕快照。

图16A-16C是根据一个实施方式描述了用于解除操作屏的过渡动画的屏幕快照。

图17A-17D是根据一个实施方式描述了用于激活操作屏的过渡动画的屏幕快照。

图18是根据一个实施方式的日历控件的例子。

图19是根据一个实施方式的股票报价控件的例子。

图20是根据一个实施方式的天气控件的例子。

图21是根据一个实施方式的交通网眼(webcam)控件的例子。

图22是根据一个实施方式的音乐播放器控件的例子。

图23是根据一个实施方式的包裹跟踪控件的例子。

图24是根据一个实施方式的通讯薄控件的例子。

图25是根据一个实施方式的时钟日历控件的例子。

图26是根据一个实施方式描述了配置条已被关闭的操作屏的屏幕快照。

图27是根据一个实施方式所述的屏幕快照,其描述了配置条已被打开以显示收藏(favorite)控件的操作屏。

图28是根据一个实施方式所述的屏幕快照,其描述了配置条已被打开以允许访问其它控件的操作屏。

图29是根据一个实施方式所述的屏幕快照,其描述了包括用于关闭和配置控件的滚动图标的操作屏。

图30是根据一个实施方式描述操作屏的屏幕快照,其中配置条中的一些标签在外观上有所改变。

图31是根据一个实施方式描述操作屏的屏幕快照,其中配置条中的一些标签在外观上有所改变,并且其中操作屏包括用于关闭和配置控件的滚动图标。

图32是根据一个实施方式所述的屏幕快照,其描述了示出两个控件的首选项控制的操作屏。

图33是根据一个实施方式的计算器控件的例子。

图34A和34B是根据一个实施方式的字典/辞典控件的例子。

图35描述了配置条未激活的屏幕快照。

图36描述了配置条激活的屏幕快照。

图37描述了一个屏幕快照,其中配置条是激活的,且指示器显示在配置条中存在多少其它控件页。

图38描述了一个屏幕快照,其中配置条是激活的,且显示包括关闭框的两个控件。

图39描述了一种使用条款协议。

图40描述了一种航班跟踪控件。

图41描述了一种股票报价控件。

图42A和42B描述了一种影片列表控件。

图43A-43D描述了一种用于管理DVD租赁队列的控件。

图44描述了一种翻译控件。

图45A-45C描述了一种度量转换控件。

图46A-46F描述了一种天气控件。

图47A-47C描述了一种电话号码簿控件。

本领域技术人员将认识到,这些附图仅仅是本发明根据一个实施方式的操作的例子,在不背离本发明的基本特征的情况下,可以使用其它用户界面布局和操作模式。

具体实施方式

现在,参考示出本发明的几个实施方式的附图,更为全面地描述本发明。本发明可以以多种不同的形式来实施,并且不应当解释为对这里所阐述的实施方式的限制。相反,提供这些实施方式是为了使说明书完整,并且能够将本发明全面表述给本领域的技术人员。

硬件体系结构

在一个实施方式中,本发明作为个人计算机操作系统的一部分来实施。本发明得以实施的一个例子是在运行MacOS X操作系统的Macintosh个人计算机中。现在参考图1,显示了用于实现本发明系统100的结构例。个人计算机102包括处理器103、存储器105、诸如键盘和鼠标这样的输入设备114、以及诸如显示屏这样的输出设备115。可以提供诸如图形卡这样的图形模块113,来为输出设备115产生输出。用户101与系统100的相互操作来提供经过设备114的输入和经过设备115的浏览输出。计算机102还包括诸如硬盘驱动这样的本地存储装置106,以及还可以包括用于访问远程服务器107的网络连接108。这些部件是常用于运行软件应用的公知硬件部件。在一个实施方式中,在诸如本地存储器106这样的计算机可读介质中提供具体化本发明的软件。

在另一实施方式中,作为一种连接来实施本发明,该连接可以安装并运行在个人计算机102上,并且对个人计算机102的操作系统进行操作来执行这里所描述的功能。在另一实施方式中,以运行在个人计算机上的软件应用来实施本发明。

为了说明的目的,在下面的描述中,本发明将作为操作系统的功能部件来进行描述;然而,本领域技术人员将认识到,本发明的方法还可以用其它的上下文的方式来实现,其中包括那些上面所描述的情况。

操作方法

现在参考图2,示出了一种流程图,描述了根据本发明一个实施方式所述的用于激活和使用操作屏的方法。在一个实施方式中,用户能够在任何时刻激活本发明的功能,例如,通过点击指定的功能键或组合键,或通过点击图标,或通过从屏上菜单中选择一个命令,或通过将屏上指针移动到屏上指定拐角上。响应用户执行的这样的一个动作202,将用户界面的当前状态进行保存203,用户界面暂时变为不活动(和/或淡入淡出204),播放动画205来引入操作屏,以及将本发明的操作屏显示出来206。如果可用,那么重现操作屏的前一状态,以便以用户最后一次看到的相同配置来显示该操作屏。

在一个实施方式中,操作屏覆盖在现有桌面用户界面上;为了强调操作屏只是暂时不活动,可以将用户界面变暗、变亮、变模糊、变形或用其它方式改变。现有桌面可以在操作屏后面时仍是可见的。在一个实施方式中,当激活操作屏时,现有桌面是不可见的。在另一实施方式中,当操作屏激活时,可以将桌面缩小到屏幕的一小部分,并可以通过点击这一小部分来重新激活该桌面。在另一实施方式中,将桌面缩小,并以类似于这里所述控件那样的控件方式显示;通过点击该控件可以重新激活该桌面。

操作屏(在这里也被称为“统一兴趣层”)包括多个元素,这里被称为“控件”。这些控件一般包括用于执行有用的、经常需要的功能的软件辅助程序。控件的例子包括但不限于:日历、计算器、通讯薄、包裹跟踪器、天气模块等等。在一个实施方式中,某些控件可以与诸如服务器这样的用于提供信息的远程信息源交互;例如,天气模块可以从远程服务器取回直播天气数据。控件可以是交互式的,以便用户执行常见的输入操作(诸如点击鼠标或从键盘中键入)来利用控件的功能。

用户操作和/或配置所期望的控件207。在一个实施方式中,用户能够在屏幕上移动该控件,如果允许的话,还可以调整控件的大小。一些控件的尺寸可以改变,有些控件则具有固定尺寸;控件制作者可以指定控件是否可以改变尺寸。有些控件可以基于所显示数据的数量和种类来自动调整它们的大小。在一个实施方式中,控件可以彼此重叠;在另一个实施方式中,控件彼此不重叠;如果用户试图将一个控件移动到由另一个控件所占据的位置上,那么控件之一可以自动移出所占用的空间。在一个实施方式中,当解除操作屏时,将控件的位置、配置和大小进行保存,以便下次调用操作屏时恢复相同的状态。

当用户希望解除操作屏208并返回到正常的用户界面时,他或她将调用解除命令。在多个实施方式中,用户点击功能键或组合键(它可以是用于激活操作屏的键或其组合中的一些或不同于它们的到那些),或点击关闭框或其它图标,或点击操作屏周围的空白空间(换句话说,就是控件之间的空间),或将屏上指针移动到预定的屏幕拐角。在一个实施方式中,在没有用户任何动作的情况下,经过预定时间段后,或在一些其它的触发时间基础上,操作屏自动被解除。当解除操作屏时,播放过渡动画209。

在一个实施方式中,当解除操作屏时,将控件的当前配置保存下来,以便可以在下次激活操作屏的时候重现保存的操作屏配置。在一个实施方式中,播放动画来解除操作屏或重新引入用户界面。将用户界面恢复210到之前的状态,以便用户能够与计算机的软件应用和操作系统之间继续正常的交互操作。

在一个实施方式中,操作屏是可配置的。用户可以选择任何数量的所要显示的控件,例如,通过从配置条(或其它用户界面元素)中将控件拖动到操作屏上的一个位置上。在一个实施方式中,配置条可以包括不同类型的控件,并可以进行分类和/或分层组织。在一个实施方式中,响应用户将控件拖动到配置条的操作,从服务器中下载并安装(如果没有安装在用户机器上的话)控件。在一个实施方式中,某些控件需要付费,所以用户在将控件安装在用户机器上之前,必须提供信用卡或提供其它的付费方式。在一个实施方式中,控件已经安装在用户机器上,但是仅仅当从配置条中将它们拖动到操作屏时,才使其可见。本领域技术人员将认识到,配置条仅仅是用于配置操作屏的一类用户界面的例子,在不背离本发明的基本特征的情况下,可以使用其它配置机制。

如上所述,各种类型的动画是用来强调和阐明与本发明相关的过渡。例如,可以用“飞入”动画表示操作屏的激活,其中将控件从屏幕边缘向内移动到操作屏上的相应位置上。同时,用户界面可以变暗、变模糊、变形或以其它方式改变来表示它暂时未激活。可以用“飞出”动画来表示操作屏的解除,其中控件向屏幕边缘方向移动,然后飞出屏幕。同时,将用户界面恢复为常态。在一个实施方式中,当用户将控件从配置条中拖动到桌面时,可以显示诸如波纹效果这样的动画,以强调控件已经放置到桌面上的选定位置。波纹效果使背景暂时失真,以便给出控件放置在水中的效果。在一个实施方式中,根据在相关交叉引用的专利申请中详细描述的动画和失真方法来实施该效果。在一个实施方式中,这样的动画可以由用户来配置。

在一个实施方式中,可以使用一个以上的操作屏。例如,用户可以将一个操作屏配置为包含与工作有关的控件,将另一个配置为包含与个人事物有关的控件。不同的触发事件(例如不同的组合键)可以用来触发各种操作屏;可选择地,用户可以从弹出菜单中选择他或她希望激活的操作屏。本发明的系统存储每个操作屏的状态信息。不同的操作屏可以包含相同控件中的一个或多个;控件的状态信息可以针对出现该控件的每个操作屏单独保存,或者可以在出现该控件的所有操作屏上共同保存。另外,不同的操作屏对计算机102的不同用户来说是有效的,以便每个用户仅仅能够访问他或她所创建的操作屏。如果需要,用户能够指定对其他用户来说可用的操作屏。对于他或她所创建的所有或部分操作屏来说,用户也可以指定是否允许其它用户改变该操作屏。

在一个实施方式中,部分或全部控件与下面涉及的内容相关联,即与提供相应控件的扩展功能版本的全功能应用关联。这些控件包括用于快速运行关联应用的按钮、或图标、或其它元素。当用户点击按钮时,解除操作屏,恢复正常的桌面用户界面,并自动启动相关应用。例如,在下面将详细描述的那样,音乐播放器控件可以包括一个按钮,用于启动全功能音乐播放器应用,它包含除了控件中已有的之外的其他功能部件。

在一个实施方式中,可以提供一个按钮,用于访问网址、网页、或具有与控件有关的功能或信息的基于web的应用。当用户点击按钮时,解除操作屏,重新激活正常的桌面用户界面,启动web浏览器,并自动运行与控件相关的网页(等)。例如,股票报价控件可以包括一个按钮,用于访问包括关于有价证券或某支股票的更详细信息的网址。在另一个实施方式中,可以通过不同于控件中按钮的方式来访问对相关的全功能应用、网址、网页或基于web的应用。例如,可以通过屏上图标或菜单、或通过按键或组合键来启动这样的功能。

在一个实施方式中,全功能应用或相关的网址提供了关于所运行控件的上下文。例如,如果用户在激活字典控件之前已经高亮显示文档中的一个单词,那么将高亮显示的单词自动填充到字典控件的文本区。在一个实施方式中,自动激活单词搜索,以及自动显示其结果,从而只要激活字典控件就可以在没有任何其它的用户交互操作的情况下定义显示方式。类似地,如果当运行通讯薄控件时在用户屏幕上打开电子邮件消息,那么将通讯薄自动打开成与电子邮件消息的寄件人联系信息相关的页面。在一个实施方式中,在某些情形下,不执行这样的预填充或自动打开,这些情况例如如果控件总是打开为另一个页面或记录。在一个实施方式中,用户能够对控件的操作进行配置,包括是否进行预填充或自动打开,以及将在什么样的情形下发生这些动作。本领域技术人员将认识到,存在许多其它情形,其中控件可以使用来自当前运行的应用或网址中上下文信息。

在一个实施方式中,部分或全部控件具有滚动元素;这些是当屏上指针移动到控件上时出现的用户界面元素。当屏上指针移动而不再位于控件上时,滚动元素消失。在一个实施方式中,如果指针在控件上停留至少预定时间段时,诸如半秒钟,才会出现滚动元素。滚动元素的一个例子是用于音乐播放器应用中的音量环(未示出)。

图4-17D以及图26-32描述了响应于各种用户命令的操作屏运行的例子;这些附图说明了本发明的各种方法和性能。

图4描述了在操作屏激活之前的桌面用户界面400。桌面用户界面400(这里被称为“桌面”)是传统的用户界面,正如可以由诸如MacOS X这样的操作系统所提供的那样。桌面400具有背景图像、菜单条401以及其它标准的功能部件。正如该领域公知的,桌面400也可以包括窗口、图标和其它元素(未示出)。

用户激活操作屏可以通过从菜单中选择一项、或通过点击图标、或通过按下功能键或组合键、或通过其它用于调用命令的方式。图5描述了根据一个实施方式所述操作屏的初始状态。在图5的例子中,首先就显示配置图标501。可选择地,在操作屏被激活的基础上,操作屏可以包括一个或多个缺省控件。可选择地,如果之前就已经激活和配置过操作屏,那么按照以前的配置来显示控件。如图5所示,操作屏本身并不需要像个别层那样是可见的;而是它的个别部件(诸如控件、图标501和其它的功能部件)是可见的。在一个实施方式中,这些部件以透明层的方式来显示,允许通过它可以看到桌面400。在一个实施方式中,当操作屏激活时,桌面400和它的部件变暗(或变模糊、或其它方式的视觉改变),以便强调桌面400只是暂时不活动。用户只要点击不显示操作屏元素的屏幕区域,就可以很容易地重新激活桌面400并解除操作屏。在一个实施方式中,根据下面更为详细描述的方法,通过点击该“空白空间”来解除操作屏。在另一个实施方式中,其它命令、组合键、图标或其它用户输入被用于解除操作屏。在另一个实施方式中,在操作屏激活时,桌面400是不可见的。

在一个实施方式中,用户可以通过拖动将图标501移动到屏幕上的任何位置,并且从操作屏的一次调用到下一次调用,图标501的位置都是不变的。

如图6所示,用户点击图标501来激活配置条601。配置条601提供对可以放置在操作屏上的各种控件的访问。在一个实施方式中,在每个可用控件上示出一个文本标签。在另一个实施方式中,在每个可用控件上显示一个图标。如果多个控件可用,那么对它们可以进行类型、按字母顺序、或其它分类方法学进行分层配置。例如,可以显示多个类型;点击一个分类可以显示下拉菜单,在分类中列出多个控件。在一个实施方式中,购买命令602也是可用的,允许用户从在线商店或网址上选择控件。本领域技术人员将认识到,图6中配置条601的特定配置和外观仅仅是示例性的,并且也可能使用许多其它的配置。用户可以通过点击解除图标603来解除配置条601。现在简单地参考图31,结束按钮3101也能够提供对配置条601的解除。

在一个实施方式中,用户能够通过拖动将配置条601移动到屏幕上的任何位置上,并且从操作屏的一次调用到下一次调用,配置条601的位置都是不变的。同样,在一个实施方式中,从操作屏的一次调用到下一次调用,配置条601的状态(打开或关闭)都是不变的。

用户通过使用用于移动屏幕上目标的标准拖放功能,可以将控件从配置条601中拖动到操作屏的表面上(换句话说,屏幕上的任何位置)。图7是根据一个实施方式所述,描述了从配置条中对计算器控件的用户选择。计算器标签701是高亮显示,以便表示它是由用户来选择的。图8描述了在计算器控件801已经放置到屏幕上之后的操作屏。在一个实施方式中,当用户通过放下鼠标按键(或等价的输入装置)将控件801放置在期望的位置上时,显示诸如波纹动画这样的动画。用户能够在控件801放置好之后将它移动到任何期望的位置上,或从屏幕上消除控件801,例如,通过将控件801拖出屏幕,或将控件801拖回配置条601,或通过调用消除命令。当解除操作屏时,保存控件801的位置、状态和配置,以便在下次激活操作屏时恢复这些特征。

在一个实施方式中,通过两次以上将控件从配置条601中拖动到操作屏表面上,可以激活一些控件的多个实例。在另一个实施方式中,每个控件只可以激活一个实例。在另一个实施方式中,一些控件可以具有多个实例,而其它控件则没有。

一旦将计算器控件801放置在操作屏上,那么用户就可以通过鼠标或其它点击装置或通过键盘输入数字来与计算器控件801进行交互操作。计算器应用的传统操作也是可用的。

图9根据一个实施方式所述,描述了用户将计算器控件801和音乐播放器控件901同时拖动到操作屏之后的屏幕。通过点击和拖动配置条601中的“iTunes”标签903,来放置音乐播放器控件901。在该实施方式中,音乐播放器控件901提供与全功能音乐播放器应用相关联的部分功能。在一个实施方式中,音乐播放器控件901包括用于全功能音乐播放器应用的按钮902。因此,用户能够很容易地运行这样一种应用,即提供与控件有关的增强功能。

在一个实施方式中,响应用户点击的用于激活全音乐播放器应用的按钮902,来解除操作屏,恢复正常桌面400,以及运行全音乐播放器应用。所有这些步骤都是自动发生的,而不需要额外的用户干涉。图10根据一个实施方式所述,描述了用户已经通过点击音乐播放器控件901中的按钮902而激活了全音乐播放器应用1001之后的屏幕。操作屏已经被解除,并且包括菜单条401在内的桌面400的各个元素被再次激活。

在图11中,用户已经重新激活操作屏(从而将控件801和901恢复为控件以前的状态和位置),并且已经通过从标签1102中拖出通讯薄控件1101来放置该通讯薄控件1101。此外,在一个实施方式中,当将控件1101拖放到操作屏之上的位置时,显示波纹动画。

用户可以与通讯薄控件1101交互,正如他或她在正常情况下与通讯薄应用交互一样。例如,如图12所示,用户可以在区域1201中输入一个人名的前几个字母;一旦输入的信息足以识别某个人时,显示这个人的地址卡。

图13描述了已经放置了多个控件之后的操作屏,其中多个控件包括记事本控件1301、计算器控件801、音乐播放器控件901和通讯薄控件1101。在一个实施方式中,双击记事本控件1301可以使其进入编辑模式,其中可以输入或编辑文本。当不处于编辑模式中时,可以在操作屏中移动控件1301。在其它的实施方式中,可以使用其它类型的用户动作(例如,按下修改键)来区别文本编辑操作和控件拖动操作。

用户可以通过点击解除图标603来解除配置条601。图14根据一个实施方式所述,描述了已关闭配置条601之后的操作屏。显示配置图标501,它允许用户在需要的时候重新激活配置条601。

用户可以根据其需要来在屏幕中移动控件。当解除操作屏时,保存控件位置,以便在激活操作屏时,该控件再现于它们离开时的相同位置上。图15描述了控件801、901、1101、1301移动到新位置之后的操作屏。

如上所述,在一个实施方式中,当解除操作屏时,播放过渡动画。图16A-16C是描述了“飞出”过渡动画的屏幕快照,其中当解除操作屏时,控件801、901、1101、1301呈现出飞出屏幕边缘。在它们飞出屏幕边缘时,控件801、901、1101、1301的大小增加并淡出,以便增强移动和过渡表现。在同一时刻,将桌面400及其功能部件(诸如菜单条401)恢复到它们正常的、非变淡的外观。

如上所述,在一个实施方式中每当激活操作屏时,播放过渡动画。图17A-17D是描述“飞入”过渡动画的屏幕快照,其中,当激活操作屏时,控件801、901、1101、1301从屏幕边缘飞入。当它们首次出现在屏幕边缘时,控件801、901、1101、1301淡入并增大;在它们飞入时,它们的尺寸减少并且外观上变得更加清楚,以便增强移动和过渡表现。在同一时刻,桌面400及其功能部件(诸如菜单条401)逐渐淡入背景。

在一个实施方式中,本发明的系统包括;当控件需要引起注意或具有新的信息要显示给用户,即使当前没有激活操作屏时,警告用户的性能。例如,通常与桌面用户界面相关联的“Dock”上的图标、或任务栏、或其它用户界面元素,它们可以用闪烁或跳动或其它方式来表示警报状态。还可以播放与众不同的声音。可替换地,可以呈现对话框,或者可以显示文本警报。无论采用什么样的形式,警报都具有普遍类型的或可以表示发出警报的特定控件,以及甚至可以具有指示警报特性的附加信息。然后,用户可以激活操作屏(即可以通过如上所述操作屏激活命令,也可以通过点击与警报相关联的图标或按钮)来查看发出警报的控件。可选择地,在这种情形下,可以自动激活操作屏,或出现一个对话框来允许用户指示是否激活操作屏。

例如,当包裹已被递送时,包裹跟踪控件可以发出警报。该警报可以是一般化的,或可以指示包裹跟踪控件是警报源,甚至可以提供递送信息。用户解除警报,或激活操作屏来查看该控件以及与其进行交互操作来获得更多的信息。如另外一个例子,当在网眼所覆盖的道路上发生交通事故时,交通网眼控件可以发出警报。

在一个实施方式中,配置条601具有多个可能的状态。现在参考图26,示出了一个操作屏的例子,其中关闭了配置条,以便显示配置图标501。当前与两个时钟控件2500A、2500B一起显示的是两个粘贴控件1301。

点击配置图标501将使配置条601以第一状态显示,如图27所示。第一状态包括被指定为“收藏(favorites)”的各种控件的标签2701;在一个实施方式中,这些是当前安装在用户机器上的所有控件的一个子集。因此,在该状态中,用户仅仅呈现出那些常用的控件。正如将会看到的,用户可以对这些视图进行配置,以便让其包括所安装控件的任何子集。在一个实施方式中,在这种状态中的配置条601包括“More”标签或图标。用户点击该标签或图标来将配置条601扩展到第二状态,如图28所示。解除图标603会解除配置条601,并还原如图26所示的配置图标501。在一个实施方式中,图标603的屏上位置与图标501的屏上位置匹配,以便在用户不用到处移动指针的情况下,能够很容易地打开和关闭配置条601。

用户将标签2701拖动到操作屏表面以便将控件放置到操作屏上。如上所述,在一个实施方式中,示出诸如波纹效果这样的与众不同的动画来增强控件被放置到指定位置上的概念。

现在参考图28,示出了在第二扩展状态中配置条601的例子,提供对其它控件和以第一状态呈现的收藏控件的访问。在该状态中,配置条601具有两部分2802、2803。部分2802包括收藏控件的标签2701;它包括如图27所示包括在配置条601第一状态中的那些控件的相同子集。部分2803包括那些不包括在收藏控件集合中的其它控件的标签2701。从部分2802中将标签2701拖动到部分2803中可以从收藏子集中删除对应的控件。从部分2803中将标签2701拖动到部分2802中可以将对应控件添加到收藏子集中。不管从部分2802中还是从2803中将标签2701拖动到操作屏表面上都可以将对应控件放置在指定的位置上。不管从部分2802中还是从2803中将标签2701拖动到垃圾图标2801都可以将标签2701从配置条601中移除;在一个实施方式中,这也可以使对应的控件从操作屏(如果当前是打开的)中移除。在一个实施方式中,将标签2701拖动到垃圾图标2801中也可以使对应控件从用户机器中删除,或使其不可用。在一个实施方式中,可以向用户引入一个对话框来确认他或她希望删除该控件。在一个实施方式中,用户还可以将控件拖动到垃圾图标2801中,来关闭、解除和/或卸载控件。更多小配件标签2602提供了对网址、在线商店或其它用于获取并安装其它控件的资源的访问;在一个实施方式中,提供了类似于购买命令602这样的功能,正如上面图6的相关描述那样。

在一个实施方式中,在从操作屏的一次调用到下一次调用期间,配置条601的状态是不变的。

现在参考图30,示出了根据一个实施方式所述的一个操作屏的例子,其中改变了在配置条601中的一些标签2701A的外观,而不改变其它图标2701B、2701C的外观。在一个实施方式中,当打开控件时,它所对应的配置条601中的标签2701在外观上有所改变;例如,它变为灰色或以其它颜色来显示。在另一个实施方式中,只有当控件是单实例的控件(如上所述)时,标签2701才变灰朦(或以其它方式改变);对于多实例的控件,当打开控件时,标签2701保持不变。这样一种方法向用户提供一种指示,即哪些标签2701可以用来激活控件(因为它们当前没有打开,或者因为它们是多实例的控件),哪些标签2701当前没有激活(因为它们对应于已打开的单实例的控件)。在图30的例子中,作为单实例的控件,打开通讯簿1101、计算器801、日历1801、音乐播放器901以及股票报价1901;因此它们的对应标签2701A变灰朦。作为多实例的控件,打开粘贴1301和时钟2500;因此它们的对应标签2701B没有改变。标签2701C也没有改变,因为它们对应于当前未打开的控件。

在另一个实施方式中,对应于打开的多实例控件的标签2701与对应于当前未打开的控件的标签2701相比,具有不同的外观。

在另一个实施方式中,当打开一个控件时,它的标签2701从配置条601中被移除。当关闭该控件时,将它的标签2701恢复到配置条601中。在另一个实施方式中,当打开单实例的控件时,将它的标签2701从配置条601中移除,但是当打开多实例的控件时,它的标签2701保持在配置条601中。当关闭单实例的控件时,将它的标签2701恢复在配置条601中。移除和/或恢复标签2701都会伴随着动画来增强从配置条601到操作屏表面的过渡,反之亦然。例如,当关闭一个控件时,该控件可能看上去像恢复相应标签2701那样被吸入到配置条601中。

如果删除或移除控件(例如,通过将它或它的标签拖动到垃圾图标2801中),那么将它的标签2701从配置条601中移除。

在一个实施方式中,用户关闭控件可以通过点击关闭图标,或通过将控件拖回配置条601中。现在参考图29,示出了一个屏幕快照,其描述了包括用于关闭控件2500B的关闭图标2901的操作屏。在一个实施方式中,图标2901是一个滚动图标;当用户将指针放置在控件2500B之上时它才出现,当指针不再放置在控件2500B之上时它才消失。在一个实施方式中,如果指针在控件2500B上保持至少预定的时间段,例如半秒,滚动图标2901才会出现。在一个实施方式中,当关闭控件时,播放动画来增强正在关闭控件的概念。例如,在控件从屏幕上消失之前,以控件吸入关闭图标2901、或进入配置条601这样的方式,使控件立刻变形。还可以使用其它类型的动画或效果,诸如淡入淡出、擦除或收缩效果。在一个实施方式中,用户可以配置想要哪些效果或不要哪些效果。

控件2500B还包括用于访问控件2500B首选项控制的首选项图标2902。在一个实施方式中,图标2902是一个滚动图标;当用户将指针放置在控件2500B之上时它才出现,以及当指针不再放置在控件2500B之上时它才消失(尽管当指针从图标2902上移开时它仍然是可见的)。在一个实施方式中,如果指针在控件2500B上保持至少预定的时间段,例如半秒,图标2902才会出现。点击图标2902可显示首选项控制。在一个实施方式中,使用本领公知的传统对话框(未示出)来开输入首选项。在另一个实施方式中,点击图标2902可使控件2500B出现翻页效果,显示它的反面,该反面包括首选项控制。

现在参考图32,示出了操作屏的一个例子,其中对两个控件2500A和1301A进行了翻页、并显示了首选项控制3201。在该例子中,首选项控制3201包括用于选择位置的菜单(对于时钟控件2500A而言),以及页面颜色选择器和字体选择器(对于粘贴控件1301A而言)。本领域技术人员将认识到,在首选项控制3201中可以包括任何类型的控制、菜单、区域、或其它元素。用户可以通过点击结束(Done)按钮3203或点击关闭框3202来解除首选项控制3201。在一个实施方式中,关闭框3202是一个滚动图标,以便当指针放置在控件1301A上时它才可见(尽管当指针移动到关闭框3202上时它仍然是可见的)。在一个实施方式中,当解除首选项控制3201时,再次播放翻页动画,并恢复控件的正常外观(反映了经由首选项控制3201做出的任何变化)。

现在参考图31,根据一个实施方式,示出了操作屏的另外一个例子,其中改变配置条601中一些标签2701A的外观,而不改变其它标签2701B和2701C。作为单实例的控件,打开通讯簿1101、计算器801、日历1801、音乐播放器901以及股票报价控件1901;因此它们的对应标签2701A变为灰色。作为多实例的控件,打开粘贴1301A和1301B;因此它们的对应标签2701B没有改变。包括世界钟标签的标签2701C也没有改变,因为它们对应着当前未打开的控件。在图31中,将指针(未示出)放置在粘贴控件1301B上,以便显示关闭框2901和首选项图标2902,如上面图29有关的描述。

在图31的例子中,配置条601包括结束按钮3101,它解除配置条601并恢复配置图标501。因此,结束按钮3101执行如解除图标603所述的相同动作。

在一个实施方式中,翻开控件显示其它的信息、区域或除了(或代替)首选项区域和控制以外的控制。本领域技术人员将认识到,控件的反面包括任何类型的辅助信息、区域或控制,但不限于访问首选项控制的机制。

控件安装

在一个实施方式中,控件被预安装在用户计算机上,以便仅仅将它们拖动到操作屏来激活它们。在另一个实施方式中,控件没有预安装,但是响应用户将它们拖动到操作屏的动作来进行安装。在另一个实施方式中,将控件拖动到桌面,这样可以从远程服务器中下载控件代码并在用户机器上进行安装。在另一个实施方式中,以该方式安装控件也可以同时自动安装包括相关功能的全功能应用(虽然用户可以给出拒绝这样安装的选择);例如,安装音乐播放器控件可以同时安装全功能音乐播放器应用。对于一些实施方式中这样的操作来说,验证和付费是先决条件。

例如,简单参考图28,在一个实施方式中,用户点击更多小配件标签2602来访问在线控件商店或网址,其中用于购买或免费下载的控件是可用的,用户选择用于安装在他的或她的机器上的控件,并通过信用卡(如果需要)进行支付。解除在线商店或网址,将所选择的控件进行下载并安装,自动重新激活操作屏,以及所选择的控件出现在配置条601中,准备将其拖动到操作屏表面上。可选择地,可以将新的控件自动放置在操作屏表面上。从而,本发明提供了一种容易的、无缝的方式来安装控件。

在一个实施方式中,提供一个在线商店或免费分发站点来用于激活控件303。可以浏览、预览、选择和从站点或从操作屏中的配置选项中安装可用的控件303。在一个实施方式中,用户可以使用信用卡或任何用于在线购买其它传统方式来为控件303进行支付。根据传统的方法来将控件303传送并安装在用户的计算机上。在一个实施方式中,可以根据下面所设计的技术来安装控件303,即于2004年6月22日申请的、题为“User Interface for Assisting in the Installation of anAsset”的美国发明专利申请yy/yyy/yyy,其全部在此引入作为参考。

在一个实施方式中,使用增强的HTML技术来实现诸如801这样的控件,对该技术在下面以及相关交叉申请中更加全面地进行描述。然而,本领域技术人员将认识到,可以使用任何图形技术来实现诸如801这样的控件。

在一个实施方式中,将控件303加密为在存储器中全部或部分可扩展的平面文件。可以对控件303的内容进行索引,以便在需要时可以访问特定的资源。可以根据任何传统的加密技术来对控件303进行加密。

在一个实施方式中,客户端302完成了WebView的资源加载控制。当需要相应的资源时,客户端302将协议转换为一个特定的处理。在一个实施方式中,使用Foundation的NSURL协议来从加密源中存取数据。

软件结构

现在参考图3,根据一个实施方式,示出了用于实施本发明的软件结构300的例子。在一个实施方式中,对本发明进行与如上所述操作系统109有关的操作。

在一个实施方式中,软件结构300包括操作屏服务器301、(多个)操作屏客户端302和(多个)控件303。操作屏配置信息304用于服务器301和/或多个客户端302指定关于显示控件303的配置选项。包括访问层等(如果可适用)的所有操作屏配置信息被存储在操作屏配置信息304中。如上所述,这样的信息可以包括用于由相同用户或不同用户所配置的两个以上操作屏的操作屏配置信息。

在一个实施方式中,使用HTML和相关的Web技术来显示控件303。操作屏服务器301管理并运行操作屏客户端302的进程。每个操作屏客户端302加载控件303,在一个实施方式中,其是一个HTML网页和显示页面所需的相关资源。在一个实施方式中,,启动客户端302来用于每个控件303的显示。在一个实施方式中,客户端302显示控件303而不需要传统窗口框、菜单条或其它与屏上窗口相关联的典型部件;这就提供了整洁、直接地显示全部操作屏,从而避免了混淆和混乱。客户端302通过将网页提供给“WebView”来显示控件303。每个WebView的大小被定义为与相应的控件303有关的元数据。服务器301是一个用于提供数据的窗口服务器,该数据用于提供一个可以覆盖在用户界面的正常桌面上的层。将控件303提供给独立层,然后将该层拖拉到正常桌面的顶部,从而在激活操作屏的同时,使桌面部分或完全模糊。

操作屏服务器301

操作屏服务器301是一个轻量进程,它可以是独立的或嵌入到其它进程中。可以在计算机102或在远程服务器107上设置服务器301。服务器301提供下面的功能:

非控件UI。在一个实施方式中,服务器301处理不直接涉及控件的用户界面功能。这例如包括:激活、停用、操作屏背景、背景动画等。

窗口管理。在一个实施方式中,服务器301充当用于操作屏客户端302进程的轻量窗口服务器。在服务器301进程中创建窗口,然后载入操作屏客户端302。在窗口上执行的操作通过操作屏服务器301。这样的操作包括,例如,调整大小、移动、位置和大小的存取等。具有通过服务器301的窗口操作的优势在于:服务器301可以对控件303的改变做出反应并更新全部环境。例如,服务器301可以使所显示的控件303彼此跳动、粘住屏幕边、对齐网格等。

快速注册。在一个实施方式中,运行操作屏客户端302,然后将其提供给来自操作屏服务器301的窗口。因为这可能需要花费一些时间,所以操作屏服务器302将一个初始图像提供给窗口显示,同时运行客户端302,从而提供了视觉反馈并立即呈现激活动画。正如操作屏客户端302加载和提供的那样,它们接收窗口并提取它们的内容。

事件管理。在一个实施方式中,服务器301充当事件服务器以及窗口服务器。事件从操作系统窗口服务器到达操作屏服务器301,并被路由到适当的操作屏客户端302中。这种间接寻址考虑到多种功能部件,包括:服务器端拖动(即使安装了操作屏客户端302)、事件滤波、服务器所生成的事件的插入等。操作屏客户端302与服务器301进行通信来描述控制区域,以便服务器能够准确地启动服务器端的拖动。

加载控件303。在一个实施方式中,服务器301对加载控件303负责。保持控件303列表直到启动加载时。在一个实施方式中,直到首次激活操作屏,才运行对应特殊控件303的操作屏客户端302。

控件303的判优。在一个实施方式中,服务器301是操作屏客户端302的判优器。它控制着进程以及将信息传给每个控件303和从每个控件303中传出。如果控件303失效,那么操作屏服务器301自动重新运行该进程。它也防止了控件303在启动时重复失效的循环失效。在一个实施方式中,所有到控件303的通信都首先通过操作屏服务器301。

CoreImage集成。在一个实施方式中,服务器301使用CoreImage技术,如以上引用的相关美国发明专利申请中所述的那样。将过滤器应用于服务器的背景窗口,以便提供聚光和波纹效应。

控件303首选项管理。在一个实施方式中,服务器301在配置信息304中根据传统文件系统方式来存储与控件303相关联的首选项,并向控件303贩卖这些首选项。

操作屏客户端302

在一个实施方式中,客户端302是一个轻量进程,其使用例如定义为以下开发环境一部分的对象:例如Cocoa ApplicationFramework(也被称为Application Kit,或Appkit),例如描述在“http://developer.apple.com/documentation/ReleaseNotes/Cocos/AppKit.html”中的Mac OS X Panther Release Notes Cocoa ApplicationFramework。用简化的浏览器屏幕来实现客户端302,其省略了传统界面功能部件,诸如菜单条、窗口框等。在一个实施方式中,客户端302提供如下功能来实施本发明:

WebView的控制。客户端302创建WebView并将控件303的HTML附加到WebView中。客户端302充当用于由WebView所作出的用户界面请求的代表。在一个实施方式中,客户端302考虑到对服务器301的通信和事件处理而超越了许多AppKit的默认状态。WebView是对浏览以及操作HTML和XHTML的一般控制;例如它们在“http://developer.apple.com/documentation/Cocos/Reference/WwbKit/Objc classic/index.html”中的Web Kit Reference forObiective-C中有所描述。

JavaScript扩展。在一个实施方式中,客户端302在WebView的JavaScript运行期间插入客户目标。这考虑到多种控件303的扩展,包括但不限于:复制/剪切/粘贴;获得/设置首选项;当首选项改变时的通知;打开链接应用(例如,控件303可以包括按钮或其它触发器来运行对应的应用);停止;移动/调整大小等。

管理插入件。一些控件303使用作为它们实施的一部分的本机代码。在一个实施方式中,客户端302包括具有这样的本机代码和/或具有本地或远程可用的数据库和数据存储器的界面性能。在一个实施方式中,控件303还具有创建客户AppKit NSView的能力。控件开发器可以使用客户视图来启动其它类型的动画,诸如OpenGL视图、诸如Flash这样的插入件等。

在一个实施方式中,按如下方式实施插入。从与控件303相关联的资源文件夹中加载Obj-C束。该束在主要分类上具有两个方面:

-(id)initWith initWithWebView:(WebView*)WebView;

-(void)windowScriptObjectAvailable:(WebScriptObject*)windowScriptObject(这允许在网页面加载之前,将插入件填加到JavaScript扩展中。)

当启动操作屏客户端时,调用initWithWebView,以及当完成页面加载时,调用WebViewLoaded。插入件的开发器可以使用WebKit的脚本API来扩展特殊控件303的JavaScript。

控件303格式

在一个实施方式中,每个控件303作为HTML文件来得以实施。HTML文件可以参考其它本地和远程资源,诸如样式表、其它HTML文件、JavaScript文件、图像等。控件303的实现可以通过使用例如平面束文件格式或封装HTML文件格式。

平面束(flat bundle)。平面束格式具有下面的目录结构:

-My.widget(目录/束)

-Info.plist(文件)

-My.html(文件)

-My.png(文件)

-English.lproj(可选目录)

-Localizable.strings(文件)

Info.plist描述了控件303。它也提供控件303的标识符,并指向主HTML文件和缺省PNG文件。从服务器301中加载动态元素时,缺省PNG文件被用于临时显示。Info.plist的结构例子如下:

 

关键字类型描述/值CFBundleIdentifierCFStringcom.apple.widget<widgetname>CFBundleNameCFString控件的名称MainHTMLCFString主HTML资源的名称WidthCFNumber控件的默认宽度HeightCFNumber控件的默认高度DefaultImageCFString默认PNG的资源名Plugin(可选的)CFString本机插件的资源名

My.html也可以引用任何其它本地资源。在一个实施方式中,相对于HTML文件的位置来指定资源。

基于Info.plist中的“DefaultImage”关键字,My.png可以具有任意名称。如果没有缓存的表示,那么由服务器301提供该图像。

English.lproj和其它可定位目录是用于可定位的字符串。

控件303位置

在一个实施方式中,控件303可以存储在诸如硬盘驱动器这样的本地存储装置106中。每个机器的控件303被存储在例如:

·/Library/Widgets/

·/Applications/Widgets/

对于每个用户来说,控件303都是可用的,特别是在多于一个人使用相同计算机102的情况下。每个用户控件303被存储在,例如:

·~/Widgets

·~/Library/Widgets/

本领域技术人员将认识到,这些配置仅仅是示例性的,可以使用任何其它文件格式或目录结构。

控件303的开发

在一个实施方式中,可以使用WebKit来开发控件303,其中WebKit例如在“http://developer.apple.com/documentation/Cocos/Reference/WwbKit/Objc_classic/index.html”中Web Kit Referencefor Objective-C中有所描述。还可以提供其它功能,诸如拖动到网页和从网页中拖出、检测控制区域、当操作屏隐藏时停止插入和计时器启动等功能。在一个实施方式中,通过使用增强的Canvas结构来提供这样的其它功能,诸如描述在2004年6月25日申请的、题为“Procedurally Expressing Graphic Obj ects for Web Pages”的美国临时专利申请xx/xxx,xxx,其所公开的内容在此引入作为参考。此外,本领域公知的Web扩展能够用于提供诸如拖放功能、控制区域的检测等其它功能。

对于包含其它的、比WebKit/HTML所提供的更详细的控件来说,提供了<canvas>标签。从<convas>标签中可存取CoreGraphics上下文,然后将JavaScript带入到上下文和有效的HTML页中。该实施方式的详细描述可以在相关申请中找到。

远程服务器107的访问

在一个实施方式中,部分或全部控件303与远程服务器107进行通信,以便执行它们的功能。例如,天气控件从向远程服务器107请求当前天气数据,而包裹跟踪控件向远程服务器107请求关于包裹位置的当前数据。可以根据用于通过诸如互联网这样的网络来请求和接收信息的公知技术来进行这样的通信。控件303或客户端302形成数据请求,以及根据HTTP或其它一些网络协议来将该请求发送出去;服务器107响应带有信息的请求;以及控件303使用该信息来形成向用户显示的输出。在一个实施方式中,响应控件中的JavaScript码而进行这些操作。服务器107可以是一种通常对公众而言有用的资源,或者它可以是向用户提供了一个入口的专有信息源。在适当的地方,在服务器107发送请求信息之前,可能需要授权和/或用户验证。如果需要,根据本领域公知的技术,可以通过安全通道将信息发送出去,和/或在发送之前进行加密。

控件303的例子

下面是使用本发明技术而提供的控件303例子的列表。本领域技术人员将认识到,可以提供许多其它类型的控件303。

·好友列表

·计算器

·日记

·字典

·在线音乐商店和音乐播放器

·电影放映事件

·新闻馈送

·包裹跟踪

·Rolodex

·体育比分

·粘贴

·股票报价

·网眼

·天气

·世界钟

·货币转换

·在线拍卖浏览器和工具

·彩票

·用于接收电子邮件的小型收件箱

·智力测验

·电话本(例如,黄页)

图18到25描述了这些类型的控件303例子。本领域技术人员将认识到,每个控件303的特殊布置、外观和排列仅仅是示例性的。特别地,部分或全部这些控件303可以包括用于访问具有扩展功能的全功能应用的按钮,正如上述图9和10相关的描述那样。

图18根据一个实施方式描述了一种日历控件1801的例子,其包括当前日期1802、显示当前月份的日历显示1803、以及约会1803A。在一个实施方式中,用于日历的数据被本地存储在计算机102中;在另一个实施方式中,控件1801从远程服务器107取回日历数据。

图19根据一个实施方式描述了一种股票报价控件1901,包括多个股票报价1902、用于所选择股票的图标1903以及用于改变包括在控件1901中股票的编辑按钮1904。在一个实施方式中,控件1901从远程服务器107取回股票报价数据。

图20根据一个实施方式描述了天气控件2001的例子,其包括当前温度状态2002、当前时间2003以及预报2004。控件2001可以配置为显示用户感兴趣的一个或多个地区的天气信息。在一个实施方式中,控件2001从远程服务器107取回天气数据。

图21根据一个实施方式描述了交通网眼控件2100的例子,其包括指定位置的当前图片2102(或直播视频馈送),以及位置的标识符2101。控件2100可以被配置为显示用户感兴趣的一个或多个位置的图像。在一个实施方式中,控件2100从远程服务器107取回图片和/或视频。

图22根据一个实施方式描述了音乐播放器控件901,其包括正在播放指示器909、计数器2201、用于暂停、播放、倒退和快进的控制2201以及用于反问全功能音乐播放器应用的按钮902,正如上面图9和10所描述的那样。在一个实施方式中,控件901从远程服务器107取回音乐数据。

图23根据一个实施方式描述了包裹跟踪控件2300的例子,其包括递送业务列表2303,当前选择了其中之一。显示所选择递送业务的包裹跟踪信息2301,其包括正在递送的每个项的名字、当前状态、跟踪号和最后更新该项的日期。在2301中示出所选择项的详细跟踪信息2302。用户能够将控件2300配置为添加跟踪项、格式化结果等。在一个实施方式中,控件2300从远程服务器107取回包裹跟踪数据。

图24根据一个实施方式描述了通讯薄控件1101的例子。控件1101包括下面的个人信息:名字2402、照片2401以及联系信息2403。箭头2404允许用户定位于通讯薄中的其它记录。搜索区域1201允许用户首先从名字开始搜索或对包括搜索项的名字进行搜索。在一个实施方式中,通讯薄的数据被本地存储在计算机02中;在一个实施方式中,控件1101从远程服务器107取回通讯薄数据。

图25根据一个实施方式描述了时钟控件2500的例子,其包括当前时间显示2501(其可以具有任何类型,数字的和/或模拟的)、以及对应当前时间显示2501的位置2502。用户可以配置控件2500来改变显示的时间、位置、和/或格式。

在一个实施方式中,时钟控件2500根据白昼时间来改变其外观。例如,在白天可以显示浅颜色外观,以及在黑夜显示暗的外观。再次参考图26,时钟控件2500A具有浅颜色外观,这是因为旧金山的当地时间是上午11:28,而时钟控件2500B具有暗的外观,这是因为伦敦的当地时间是下午7:28。在一个实施方式中,采用其它不同的视觉特征来表示白天和黑夜。在一个实施方式中,从上午6:00到下午6:00的当地时间表示为白天,而从下午6:00到上午6:00的当地时间表示为黑夜。在另一个实施方式中,使用实际的日出和日落时间来控制时钟控件2500的外观(基于所选择的时钟控件2500的位置,以及进一步基于从所存储的表中或从诸如网址这样的资源中取得的日出/日落信息)。在另一个实施方式中,使用持续渐变的方式,以便以介于暗的和浅颜色外观之间的等级来显示接近日落或日出的时间;还可以用粉红色色调来显示这样的时间,以便进一步增强日落或日出的时间段。

图33根据一个实施方式描述了计算器控件801的例子,其包括数值显示3301、小键盘3304、运算算符键3302、存储键3305和等号键3303。键3302、3303、3304和3305通常以类似于传统计算器和计算器附件那样的方式来进行操作,除了这里需要注意的之外。显示3301以类似于传统计算器和计算器附件的方式来显示计算结果,除了这里需要注意的之外。

在一个实施方式中,显示3301点亮或以其它方式来改变其外观,以表示计算器控件801被激活。例如,当用户首次点击控件801中的某处时,显示3301可以点亮,以及保持发亮直到用户解除控件801或点击控件801之外的某处。当显示3301被点亮时,控件801被激活以及可以通过屏上指针或通过键盘或其它输入装置来接收用户输入。

在一个实施方式中,点亮算符键3302,并保持到按下下一个键,以便提醒用户正在执行什么运算。例如,在图33中,除法算符键3302被点亮,这表示用户点击了那个键,以及提醒用户当前操作是除法运算。在一个实施方式中,算符键3302保持发亮直到按下另一个算符键3302,或者直到按下清除键,或者直到按下等号键3303;在另一个实施方式中,算符键3302保持发亮直到按下其它任意键。

现在参考图34A-34B,根据一个实施方式示出了字典/辞典控件3400。用户能够在文本输入栏3403中输入单词,并能通过点击下一个标签3401或3402来分别选择字典或辞典功能,以查看解释3406或同义词3408。如果解释3406或同义词3408没有在控件3400限制的范围之内,那么控件3400就可以自动调整大小,或可以显示用于访问其余信息的箭头3407。还可以呈现书边索引3405,允许用户快速访问出现在与输入单词相同的字典页中的其它单词。在一个实施方式中,还提供了反向查找字典(未示出)(用户输入解释或其部分解释,以及控件303做出匹配输入的一个或多个单词的响应)。在一个实施方式中,字典/辞典的数据被本地存储在计算机102中;在另一个实施方式中,字典/辞典控件可以从远程服务器107取回它们的数据。

在一个实施方式中,对在远程位置上的用户来说,操作屏也是可用的。按照用户命令或自动地将用户操作屏的配置信息存储在远程服务器中。然后用户可以从远程计算机或其它设备中进行登录,并向用户呈现一个网页,其中该页复制了用户操作屏,像是从他或她自己的计算机中浏览的那样。可以通过如上所述的每个扩展功能的HTML页来提供控件303。用户可以与他或她自己的计算机交互操作的相同方式与控件303进行交互。

可替换的配置条

在一个实施方式中,呈现了例如图36所示配置条601那样的可选择设计。在一个实施方式中,无论何时调用配置条601,都播放动画来使配置条601呈现出从屏幕底端升起。类似地,当解除配置条601时,播放动画来使配置条601呈现出下降回到屏幕底端。箭头3601提供了对当前没有显示在屏幕上的其它控件的访问。

图37类似于图36,但是图37包括“1 of 2”指示器3701,其用于通知用户有两页控件可用的、以及当前所显示页面是两页中的第一页。在一个实施方式中,仅仅当用户翻转箭头3601之一来定位于控件的另外一个页时,才显示指示器3701。在另一个实施方式中,指示器3701在其可用的情况下,在任何时刻都显示。

在一个实施方式中,如图36和37所示,当激活配置条601时,出现“更多控件”按钮3602。按钮3602提供对例如从控件服务器中下载(和/或访问)其它控件的功能的直接访问。

在一个实施方式中,当激活用户兴趣层而关闭配置条601(不活动)时,显示诸如图35所示的屏幕。包含X的配置图标501提供对配置条的访问;点击它就出现配置条601。

在一个实施方式中,仅仅当激活配置条601时,才出现控件中的“关闭”按钮2901。一个例子如图38所示。在另一个实施方式中,控件上的“关闭”按钮2901总是可见的,或当用户翻转控件时它是可见的。在一个实施方式中,控件上的“关闭”按钮2901仅仅在控件翻转时才出现。在另外一个实施方式中,用户可以配置“关闭”按钮2901是否总是出现或仅仅在某个时刻出现。

使用条款

在一个实施方式中,在控件(或用户兴趣层)功能首次激活的基础上,显示使用条款协议3901,如图39所示。用户可以点击接受3904、拒绝3903或打印3902。如果用户接受使用条款,那么激活在这里所述的控件功能。如果用户拒绝接受使用条款,那么用户难以获得控件功能。如果用户点击打印3902,那么打印出使用条款协议。

在一个实施方式中,使用条款协议3901只在控件功能或者统一兴趣层功能的初始激活时才被显示;在后面的激活操作时,它不显示。在另一个实施方式中,如果另一个用户激活控件功能或统一兴趣层功能,则显示该协议3901。在又一个实施方式中,在重新安装或者升级控件功能或统一兴趣层功能后显示使用条款协议3901。

其它控件

在一个实施方式中,本发明提供了以下控件的部分或全部,它们可以是单独的,也可以是任意组合。在一个实施方式中,发明提供了部分或全部控件与这里和/或上述参考相关专利申请中所述其它功能的部分或全部组合。

对于大多数下面所述的控件来说,本发明系统响应用户输入所生成的询问、通过网络从在线数据源中获得信息。在线数据源提供用于生成控件显示的信息。在一个实施方式中,那些通过网络获得信息的控件包括视觉指示器,用以让用户知道所显示数据是否是直播的。在一个实施方式中,这样的控件还显示最近数据更新的日期和时间。

图40描述了航班跟踪控件4000。用户可以输入其所知道的任何信息,包括航班号、达到城市、起飞城市、航线、日期和时间之间的任意组合。控件与在线航班数据源进行通信来获得入口信息、航班状态等。在一个实施方式中,控件显示航线4001、航班4002、起飞城市4008、起飞时间(排定的)(未在图40中示出)、起飞时间(实际的)4003、起飞时间(预期的)(未在图40中示出)、起飞机场代码4004、到达城市4009、到达时间(预期的)4006、到达机场代码4005、起飞入口(未在图40中示出)、达到出口4007、准时/晚点/早点状态4010、机型(未在图40中示出)、速度4011和飞行高度4012中的部分或全部。在一个实施方式中,显示一个地图4013,其包括近似于旅行轨迹且位于起点和终点间的弧线4014。在弧线4014上显示指示器4015,表示飞机近似的当前位置。在一个实施方式中,该显示4013是基于飞机的实际位置数据;在另一个实施方式中,它是基于起点、终点和飞行持续时间的插值。

图41描述了股票报价控件4100。用户可以输入股票的证券(或其它证券),或控件可以从在线数据源、本地存储文件或其它源中提取用户的股份。可选择地,用户可以输入个人订单符号。控件显示(多个)订单符号4101、当前(多个)股票价格4102、自前一天以来的变化4103等。在一个实施方式中,控件显示一个图形4104,其显示了股票或证券的股票指标。在一个实施方式中,该图形可以以多种不同的格式和时间标度来进行显示。在一个实施方式中,提供编辑按钮4105,其允许访问输入/输出元素,该输入/输出元素用于改变所显示证券或股票报价的特征或其它指标。在一个实施方式中,包括最后更新的指示器4106。在一个实施方式中,用户可以点击按钮(未示出)来启动对所显示股票的买入或卖出的操作,或查找关于该股票的更多信息。

图42A-42B描述了电影列表控件。如图42A所示,用户从电影名称4201的列表中或从电影院列表4202中进行选择,并可以查看放映时间4203、节目受欢迎的程度4204等。提供按钮4209来在标题和电影院之间进行选择。提供按钮4205来选择用户感兴趣的日期(今天、明天或某一天)。提供信息按钮4206来获得关于所选择电影的更多信息,其包括例如提要、照片、预览、网址链接等。提供入场券购买按钮4207来购买对应所选择放映时间的入场券。提供预览按钮4208来访问电影的视频预览。

在一个实施方式中,所示出的电影院是基于目标位置(例如用户输入的ZIP代码,或基于之前输入或导出的用户数据而得知的控件位置)。在预定的或用户指定目标位置范围内的电影院被示出。

用户可以点击信息按钮4206来查看提要4211、电影海报显示4210和其它信息4212,如图42B所描述。用户可以点击返回按钮4213来返回前一显示。用户可以点击入场券购买按钮4207或预览按钮4208来购买入场券或浏览视频预览。

图43A-43D描述了用于管理DVD租赁队列的控件4300。如图43A所示,用户可以通过点击在控件4300左边的类型4301来浏览各种类型的电影。用户可以在搜索区域4302中键入文字来搜索电影名称。用户可以点击推荐4303并基于前一次租用或用户提供的其它信息来查看个性化推荐。用户可以点击队列4304来查看当前租赁队列。

当在列表4309中选择一个电影4305时,出现品质程度4306(一到五星)。用户点击信息按钮4307来查看关于该影片的更多信息,或可以点击添加电影4308来将所选择的电影添加到用户的队列中。

图43B示出了用户点击了信息按钮4307之后的控件4300。所选择电影的描述43010与电影海报显示43020、节目受欢迎程度43030、品质评级4306等一起被显示。前一个和下一个按钮4301、4311允许用户直接跳转到队列或列表中的其它电影。用户可以点击返回按钮4213来返回前一个屏幕,或可以点击添加电影4308来将电影添加到用户队列中。

图43C和43D示出了用户点击队列按钮4304之后的控件4300。控件示出了当前在队列4312中的DVD,以及当前在外的DVD4313(即,处于用户占有或在给用户的途中)。示出了利用率4314、发货日期4315以及ETA 4316。示出了在租赁队列中的电影4317总数。

图44描述了翻译控件4400。用户可以选择“从”语言和“到”语言(通过弹出菜单4401、4402),以及可以在靠上的框4403中输入文本。所翻译的文本出现在靠下的框4404中。在一个实施方式中,随着键入文本,文本被翻译,因此用户不需要点击“输入”或其它按钮来激活翻译。在一个实施方式中,在执行翻译之前,控件等待某一特定长度(例如一秒)的键入暂停。在一个实施方式中,控件4400将所输入的文本传送到在线翻译资源;在另一个实施方式中,使用安装在用户计算机上的软件来本地执行翻译。在一个实施方式中,还可以执行反向翻译,以便用户能够查看将所输入的文本翻译为另一种语言的结果及其相反方向翻译的结果;在这种方式中,用户可以检验翻译的整体质量。

图45A-45C描述了度量转换控件4500。用户可以从弹出菜单4501中选择转换类型(例如长度、体积、面积、速度、温度、重量等),以及可以从两个另外的弹出菜单4502、4503中选择转换的“从/到”单位。用户可以在两个区域4504、4505中输入数字,并在另外的区域中呈现转换值。在一个实施方式中,随着输入数字,该值被转换,所以用户不需要点击“输入”或其它按钮来启动转换。在一个实施方式中,在执行转换之前,控件等待特定长度(例如一秒)的键入暂停。

在一个实施方式中,在控件中(例如沿着控件的上边缘)显示与众不同的图形4506来表示正在执行的转换类型。例如,对于长度转换来说,显示标尺图形4506A(图45A),对于速度转换来说,显示速度计图形4506B(图45B),以及对于温度转换来说,显示温度计图形4506C(图45C)。本领域技术人员将认识到,这些图形4506可以做出任何类型,以及所述附图仅仅是示例性的。在一个实施方式中,这些图形4506是动画的。

图46A-46F描述了天气控件4600。在一个实施方式中,天气控件4600示出了给定位置4606的信息;位置4606的提供可以通过由用户或从诸如ZIP代码或地址这样的其它信息中提取而得到。在一个实施方式中,天气控件4600示出了当前温度4601、白天最高温度4602和最低温度4603、以及预报4604。图形元素4605描述了当前状态和预报状态。例如,可以显示太阳、云、雨、或它们的组合来表示该状态。在一个实施方式,这些图形元素4605可以是按需要进行组合,以便准确地表示天气状况。在一个实施方式中,部分或全部图形元素4605是动画的;例如,为了表示有多大的风,云可以显示为在风中轻轻移动。

在一个实施方式中,天气控件4600可以响应翻转或响应用户点击用于扩展或折叠的按钮来被扩展或折叠。例如,图46A示出了扩展状态下的天气控件,而图46B示出了折叠状态下的天气控件,其中没有示出预报4604。

在一个实施方式中,当处于晚上时(图46D),图形元素4605示出了月亮,以及当处于白天时(假设状态是晴天),图形元素4605示出了太阳。控件4600使用本地机器的互联网时钟或通过网络获得当前时间信息来确定是白天还是黑夜。在一个实施方式中,当显示月亮时,描绘了月亮当前的正确相位。图46C示出了表示月亮的多个相位的多个控件状态4615。

在图46E中示出了其它的例子,其中图形元素4605描述了雨,以及在图46F中,图形元素4605描述了闪电。如果期望,这些图形的部分或全部可以是动画的。例如当用户翻转控件或点击控件时,还可以提供声效。

图47A-47C描述了具有黄页功能的电话号码薄控件4700。用户可以在如图47B所示区域4701中键入企业名称或类型(或其中的部分),并在如图47A所示控件中显示列表4702。图47C示出了另外一个例子,其中用户所输入的查询是名称而不是类型。

在一个实施方式中,查找是基于目标位置(例如由用户所输入的ZIP代码,或基于在前输入或导出的用户数据而得知)。在预定的或用户指定的目标位置范围内的列表4702被示出。在一个实施方式中,随着用户的键入(随着每个按键而自动更新),来显示列表4702,所以用户不需要点击“输入”或其它按钮来激活查询操作。在一个实施方式中,在查询和显示列表4702之前,控件4700等待特定长度(例如一秒)的键入暂停。在一个实施方式中,每个列表4702包括企业名称、电话号码、离目标位置的距离和地址。用户可以点击列表4702来查看更多的信息,例如包括地图、预览等。在一个实施方式中,例如,用户可以通过点击邻近列表4702的按钮(未示出)来将任意所显示的列表4702添加到个性化通讯薄中。

在一个实施方式中,上述控件的部分或全部、和/或上面引用的相关申请中所述控件的部分或全部包括动画或其它基于运动的元素。例如,时钟控件可以包括运动的指针和其它元素。

在上面的描述中,为了解释的目的,陈述了许多特定细节,以便提供对该发明的全面理解。然而,对于本领域技术人员来说,该发明可以在没有这些特定细节的情况下也可以得以实施,这是显而易见的。在另外的方面,以框图的形式示出了结构和设备,以避免使该发明不清除。

特别地,本领域技术人员将认识到,可以使用其它的结构和图形环境,以及可以使用除了上面所描述的那些之外的图形工具和产品来实施本发明。特别地,客户端/服务器方式仅仅是用于提供本发明操作屏功能的结构例子;本领域技术人员将认识到,还可以使用其它的、非客户端/服务器方式。

在说明中提及“一个实施方式”或“实施方式”意味着在包括本发明至少一个实施方式的实施方式中所描述的具体特征、结构或特性。在说明书的许多地方出现的短语“在一个实施方式中”不一定是指同一个实施方式。

按照计算机存储器中数据位运算的算法和符号表示法而提出了部分详细的说明。这些算法描述和表示法是数据处理领域的技术人员用来将他们的工作内容有效表达给该领域的其他技术人员的手段。算法在这里通常被设想为引向所期望结果的步骤的自相一致的顺序。步骤是需要物理操作物理量的那些步骤。通常,虽然不是必须,但是这些量形成电或磁信号的形式,它们能够被存储、传送、组合、比较和以其它方式进行操作。大体上因为普遍用法的原因,证明了将这些信号表示为比特、值、元素、符号、字符、项、数字等有时是很方便的。

然而,应当引起注意,全部这些和类似术语都与合适的物理量相关联,并仅仅将方便的标号应用到这些量中。除非特别地规定了其它与所讨论显然不同的方式,应当理解为,整个说明书、讨论所使用的术语,诸如“处理”或“计算”或“计算”或“确定”或“显示”等被称为计算机系统或类似的电子计算设备的操作和处理,以及将在计算机系统的寄存器和存储器中的、表示为物理(电子)量的数据操作并变换到计算机系统存储器或寄存器或其它这样的信息存储装置、传输或显示设备中的类似地表示为物理量的其它数据。

本发明还涉及用于执行这里所述操作的装置。可以根据所需目的而特别构造该装置,或者它可以包括由存储在计算机中的计算机程序选择性地激活或重构的通用计算机。这样的计算机程序存储在计算机可读存储介质中,诸如,但不限于任何类型的盘,其包括软盘、光盘、CD-ROM,以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁或光卡。或任何类型的适合存储电子指令的介质,并且每一个都耦合到计算机总线上。

这里所提到的算法和模块不是特定计算机或其它装置所固有的。可以使用带有根据这里所指教的程序的各种通用系统,或可以证实便于构造执行该方法步骤的更多专用装置。各种系统所需的结构通过下面的描述将变明显。此外,本发明没有参考特殊的程序语言进行描述。应当理解,可以使用各种程序语言来实现这里所描述的该发明的指教。此外。对于相关技术领域的技术人员下面的情况是很显然的,即可以用软件、硬件、固件或它们三者的任意组合来实现该发明中的模块、功能部件、树形、方法学以及其它方面。当然,无论是用软件来实施本发明的部件,所实现的该部件都可以作为独立程序、作为较大程序的部分、作为多个独立程序、作为静态或动态链接库、作为内核可承载模块、作为设备驱动器、和/或计算机程序领域的技术人员在每一个或任何其它目前或将来所知的方式。此外,本发明决不限制在任何特定操作系统或环境中的实施。

相关技术领域的技术人员应当明白,上述实施方式仅仅是示例性的,并且可以在不脱离本发明的真实精神和范围的情况下可以做出多种变化。因此,打算用附加的权利要求覆盖所有这样的变化和改进,其在该发明的真实精神和范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号