亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于用戶界面的分布式軟件架構(gòu)的制作方法

文檔序號:7635530閱讀:303來源:國知局

專利名稱::用于用戶界面的分布式軟件架構(gòu)的制作方法題目為"用于用戶界面的分布式軟件架構(gòu)"的美國專利申請的發(fā)明人為查爾斯W.K.格里東、戴夫.奧夫德海德、凱文'康羅伊尼爾.戈亞爾、弗蘭克'A'亨萊特、斯蒂芬.沙伊雷以及丹尼爾'S-辛普金斯。用于用戶界面的分布式軟件架構(gòu)相關(guān)申請本申請與2005年1月5日提交的、題為"帶有程序塊的分布式軟件架構(gòu)"的第60/641,406號美國臨時專利申請相關(guān),并要求其優(yōu)先權(quán),該專利申請公開的內(nèi)容通過引用并入本文。
背景技術(shù)
:本發(fā)明描述一種用于組織、選擇并啟動媒體項的架構(gòu)。所述架構(gòu)的一部分包括定位、點擊、滾動、停懸、縮放的基本構(gòu)件塊的圖形用戶界面的設(shè)計和操作,更具體地說,涉及與能夠與用自由空間定位遙控裝置使用的媒體項關(guān)聯(lián)的圖形用戶界面。與信息的通信相關(guān)的技術(shù)在過去的幾十年里有了迅速的發(fā)展。電視、蜂窩電話、互聯(lián)網(wǎng)和光學(xué)通信技術(shù)(這里僅列出幾樣)結(jié)合起來將消費者淹沒在可得到的信息和娛樂選擇中。以電視為例,最近30年來已經(jīng)引入了有線電視服務(wù)、衛(wèi)星電視服務(wù)、按次計費電影和視頻點播。然而,20世紀60年代的電視觀眾在他們的電視機上通常只能夠接收到也許是四或五個無線TV頻道,今天的電視觀眾有機會在數(shù)以百計和潛在的數(shù)以千計的節(jié)目和信息頻道中選擇。目前主要在旅館等中使用的視頻點播技術(shù)提供了一種用于從數(shù)以千計的電影節(jié)目單中進行家庭娛樂選擇的潛能。例如TiVo股份有限公司(加利福尼亞州奧維索金街2160,95002)推出的凄t字^L頻記錄(DVR)設(shè)備進一步擴大了可以得到的選擇。為終端用戶提供那么多的信息和內(nèi)容的技術(shù)能力給系統(tǒng)設(shè)計人員和服務(wù)供應(yīng)商提供了機會和挑戰(zhàn)。一個挑戰(zhàn)是盡管終端用戶通常更愿意擁有更多的選擇而不愿意選擇變小,但這種喜好與他們希望的即快速又簡單的選擇處理所相背。不幸的是,終端用戶通過其來訪問媒體節(jié)目的系統(tǒng)和界面的發(fā)展使得選擇處理既不快又不簡單。再次考慮電視節(jié)目的實施方案。在電視處于初期時,確定看哪一個節(jié)目是相對簡單的事情,這是因為可選擇的數(shù)目較少。人們可以查閱印制的節(jié)目指南,該節(jié)目指南凈皮格式化為例如一系列的4亍和列,這些行和列顯示出了在(1)鄰近的電視頻道、(2)被傳輸?shù)竭@些頻道的節(jié)目以及(3)日期和時間之間的對應(yīng)關(guān)系。通過調(diào)節(jié)調(diào)諧鈕,電^L被調(diào)諧到所需的頻道,并且觀眾觀看到所選擇的節(jié)目。在這之后,允許觀眾遠距離調(diào)諧電視的遙控控制裝置被引入。這種對用戶-電視交互的增添產(chǎn)生了被稱為"頻道沖浪"的現(xiàn)象,借此,觀眾能夠迅速地觀看在大量頻道中廣播的短片段,從而可以快速得知在任意給定的時間什么節(jié)目是可看的。盡管存在頻道的數(shù)量和可觀看的內(nèi)容急劇增加的事實,但通??傻玫降挠糜陔娨暤挠脩艚缑?、控制設(shè)備選擇和架構(gòu)在過去的30年里沒有改變太多。印制的節(jié)目指南仍然是用于傳遞節(jié)目信息的最流行的機制。具有上下箭頭的多按鈕遙控器仍然是最流行的頻道/內(nèi)容選擇裝置。設(shè)計和實現(xiàn)TV用戶界面的人們對可得到的媒體內(nèi)容的增加的反應(yīng)已經(jīng)成為現(xiàn)存的選擇處理和界面對象的直接延伸。這樣,印制的節(jié)目指南中的行數(shù)被增加以容納更多的頻道。遙控裝置中的按鈕的數(shù)目也被增加以支持附加的功能和內(nèi)容處理,例如,像圖1所示的那樣。然而,這種方法大大增加了觀眾瀏覽可得到信息所需的時間和執(zhí)行選擇所需動作的復(fù)雜度。有爭議的是,現(xiàn)存界面的麻煩的本質(zhì)阻礙了一些服務(wù)(例如視頻點播)的商業(yè)應(yīng)用,這是由于消費者反對給在他們看來已經(jīng)是太慢和太復(fù)雜的界面再增加復(fù)雜度的新服務(wù)。除了在帶寬和內(nèi)容方面增加之外,技術(shù)的集成還加劇了用戶界面的瓶頸問題。消費者正在積極地做出反應(yīng)要選擇購買集成系統(tǒng)而不是大量可分離組件。這種趨勢的一個實施方案是電視/VCR/DVD的組合,其中的三個組成部分以前是三個獨立的組件,如今則作為一個集成單元而被頻繁購買。這種趨勢會延續(xù)下去,潛在的最終結(jié)果是目前在家庭中可以找到的大部分(如果不是全部的話)通信設(shè)備將會組合在一起作為集成單元,例如,電視/VCR/DVD/互聯(lián)網(wǎng)接入/收音才幾/立體聲單元。即便是那些繼續(xù)購買分離組件的人們也會期望上述單獨組件的無縫控制和這些分立組件之間的互相交互。隨著這種集成度的增長,產(chǎn)生了使用戶界面更加復(fù)雜的潛在可能。例如,在所謂的"通用"遙控單元(例如TV遙控單元和VCR遙控單元功能的組合)被提出時,這些通用遙控單元上的按鈕的數(shù)目通常地多于單個TV遙控單元或VCR遙控單元上的按鈕數(shù)目。如果不能準確地找到該遙控裝置中的正確按鈕,這些增加了數(shù)目的按鈕和功能使人除了只能在控制TV或VCR的最簡單的方面外很難控制其它任何事情。許多時候,這些通用的遙控裝置不能提供足夠的按鈕以訪問某些TV所特有的許多層面上的控制或特性。在這種情況下,仍然需要原始設(shè)備的遙控單元,并且由于集成的復(fù)雜度導(dǎo)致的用戶界面問題,所以處理多遙控的最初爭論仍然存在。一些遙控單元通過增加可用專家命令編制的"軟"按鈕解決了這個問題。這些軟按鈕有時具有附隨的LCD顯示裝置來指示它們的動作。這種方式也具有缺陷,即,如果不將視線從TV轉(zhuǎn)移到遙控裝置,它們就難以使用。這些遙控單元的另一個缺陷是采用了多模式以試圖減少按鈕個數(shù)。在這些"模式化"的通用遙控單元中,存在專門的按鈕來選擇該遙控裝置是否與TV、DVD播放器、有線機頂盒和VCR等通信。這產(chǎn)生了許多使用性的問題,包括發(fā)送命令到錯誤的裝置、迫使用戶通過觀看遙控裝置來確信其是否處于正確的模式,并且它不能給多裝置的集成提供任何的簡化。這些通用遙控單元的最大好處是它可通過允許用戶將用于多個裝置的命令序列編制到遙控裝置中來提供一定的集成度。這是一個較困難的任務(wù),以至于許多用戶雇傭職業(yè)的安裝人員來對他們的通用遙控單元進行程序編制。人們還做出了一些嘗試來使終端用戶和媒體系統(tǒng)之間的屏幕界面適應(yīng)現(xiàn)代需求。電子節(jié)目指南(EPG)#皮開發(fā)并#1實現(xiàn)以取4<前述的媒體指南。早期的EPG基本提供的是印制的媒體指南的電子復(fù)制品。例如,有線服務(wù)操作員提供了模擬的EPG,其中,專用的頻道顯示了頻道的緩慢滾動格柵(grid)和它們在一些時間范圍(例如,下兩個小時)中相關(guān)的節(jié)目。利用這種方式即便是滾動通過一百個頻道也是冗長緩慢的,并且不能夠可行地升級以包括大量的附加內(nèi)容安排(deployment),例如,視頻點播。更加精深復(fù)雜的數(shù)字EPG也被開發(fā)出來。在數(shù)字EPG中,節(jié)目表信息(以及可選的應(yīng)用/系統(tǒng)軟件)被傳遞到專用的EPG設(shè)備,例如,數(shù)字機頂盒(STB)。數(shù)字的EPG具有更大的靈活性來為媒體系統(tǒng)設(shè)計用戶界面,這是因為它們能夠提供局部交互,并能夠在用戶和將被觀看的媒體節(jié)目之間置入一個或多個界面層??稍诳ㄩT(Kamen)等人的第6,421,067號美國專利中找到上述界面的一個實施方案,該文公開的內(nèi)容被并入本文作為參考。圖2示出了在,067號專利中描述的一種GUI(圖形用戶界面)。在圖2中,根據(jù)卡門等人的專利,第一欄190列出了節(jié)目頻道,第二欄191表示當前正在播放的節(jié)目,欄192表示在下半個小時播放的節(jié)目,第四欄193表示在半個小時之后播放的半小時節(jié)目。棒球棒圖標121橫跨欄191和192,以此表示預(yù)計棒球比賽繼續(xù)到與欄192對應(yīng)的時間檔。然而,文本框111沒有延伸通入欄192。這表示預(yù)計美式足球比賽不會延伸到與欄192對應(yīng)的時間檔。如圖所示,象形圖標194表示在美式足球比賽之后,ABC將播出賽馬節(jié)目。圖2中的圖標能夠使用游標(未示出)來啟動(actuate)以執(zhí)行各種操作,例如下載與所選擇節(jié)目相關(guān)的信息。在美國第6,314,575、6,412,110和6,557,350號專利中還描述了其它的凄t字EPG和相關(guān)界面,其公開的內(nèi)容也^皮并入本文作為參考。然而,上述的界面具有(在其它的缺點中)不能夠容易地在媒體項目的大集合和媒體項目的小集合之間調(diào)整大小(scale)的問題。例如,依賴于節(jié)目列表的界面可以為小的媒體節(jié)目集合很好地工作,但是對于瀏覽大的媒體節(jié)目集合卻是冗長乏味的。與用于大媒體節(jié)目集合的列表界面相比,依賴于分等級的導(dǎo)航(navigation)(例如樹結(jié)構(gòu))的界面可具有更快的遍歷速度,但是不適于小的媒體節(jié)目集合。另夕卜,用戶趨向于失去在其中用戶不得不在樹結(jié)構(gòu)中移動經(jīng)過三層或更多層的選擇處理的興趣。對于所有的這些情況,目前的遙控單元通過迫4吏用戶反復(fù)地按下上按鈕和下按鈕來遍歷上述列表或分級結(jié)構(gòu)以更冗長乏P未地進行這些選擇處理。在可以使用選擇跳躍控制時(例如上翻頁和下翻頁),用戶經(jīng)常不得不看該遙控裝置以找到這些具體的按鈕,或不得不經(jīng)過訓(xùn)練以知道它們恰好存在。簡化用戶與媒體系統(tǒng)之間的控制和屏幕界面、并加快選擇過程的組織架構(gòu)、技術(shù)和系統(tǒng)已在2004年1月30日提交的、題為"用于組織、選擇和啟動媒體項的帶有可縮放的圖形用戶界面的控制架構(gòu)"的第10/768,432號美國專利申請中描述,該專利申請公開的內(nèi)容通過引用并入本文,并在下文引用為"432申請"。該架構(gòu)允許服務(wù)提供商通過便利地向用戶供應(yīng)大量媒體節(jié)目和新的服務(wù)來利用對終端用戶設(shè)備增加的可用帶寬的益處。與用戶界面相關(guān)聯(lián)的典型的軟件開發(fā)、以及與例如機頂盒和電3見系統(tǒng)相關(guān)聯(lián)的應(yīng)用程序設(shè)計包括兩個不同極端之間的選擇。一種方法是將全部的軟件作為一個統(tǒng)一的應(yīng)用程序開發(fā)。這種方法的優(yōu)勢在于,完全封裝(encapsulate)了用戶和用戶界面之間的交互作用且能夠完全控制其性能。其缺陷在于用戶界面新特性的開發(fā)慢,因為每當某一方面發(fā)生變化時,整個應(yīng)用程序都受到影響。此領(lǐng)域的另一個極端的方法是設(shè)計與網(wǎng)絡(luò)瀏覽器非常類似的用戶界面。利用這種方法,構(gòu)建翻譯HTML碼從而建立用戶界面屏幕的小型機器。該第二方法的優(yōu)勢在于應(yīng)用程序的開發(fā)非???。其缺陷在于用戶與用戶界面之間的交互作用沒有被完全封裝并且?guī)捫阅軉栴}沒有得到完全控制。由于一致的用戶交互作用對好的用戶界面設(shè)計(尤其是電視用戶界面設(shè)計)是重要的,因此前一個問題可能十分重要。此外,因為例如機頂盒經(jīng)常必須克服嚴重的帶寬限制,所以后一個問題也可能很麻煩。因此,期望得到克服這些困難的用戶界面、方法和軟件設(shè)計架構(gòu)。
發(fā)明內(nèi)容根據(jù)本發(fā)明的系統(tǒng)和方法通過提供顯示在屏幕上的、具有多個控制元件的用戶界面滿足了上述需要和其它需要,多個控制元件中的至字數(shù)字式字符。文本框用于顯示利用多個控制元件輸入的文字數(shù)字式字符、和多組顯示項。用戶界面上多個組的布局基于被顯示的組的第一個數(shù),其中組內(nèi)顯示項的布局基于在組內(nèi)顯示的顯示項的第二個數(shù)。本發(fā)明一個示例性的實施方案提供了一種用于與元數(shù)據(jù)處理系統(tǒng)相關(guān)聯(lián)的分布式軟件架構(gòu)的方法,包括以下步驟提供多個第一類型的系統(tǒng)范圍軟件構(gòu)造,其每一個定義用戶與各自的高層元數(shù)據(jù)類型的交互;以及提供至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造,其中所述多個第一類型的系統(tǒng)范圍軟件構(gòu)造中的每一個包括一個或多個所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造。本發(fā)明另一個示例性的實施方案提供了具有分布式軟件構(gòu)造的元數(shù)據(jù)處理系統(tǒng),包括元數(shù)據(jù)供應(yīng)源,用于為所述元數(shù)據(jù)處理系統(tǒng)提供各種類型的元數(shù)據(jù);多個第一類型的系統(tǒng)范圍軟件構(gòu)造,其每一個定義用戶與各自的高層元數(shù)據(jù)類型的交互;以及至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造,其中所述多個第一類型的系統(tǒng)范圍軟件構(gòu)造中的每一個包括一個或多個所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造。相應(yīng)的附圖描述本發(fā)明的示例性實施方案,其中圖1示出了用于娛樂系統(tǒng)的傳統(tǒng)遙控單元;圖2示出了用于娛樂系統(tǒng)的傳統(tǒng)圖形用戶界面;圖3示出了在其中能夠?qū)崿F(xiàn)本發(fā)明的示例性實施方案(顯示器和遙控器)的一個示例性媒體系統(tǒng);圖4詳細地顯示了圖3中的系統(tǒng)控制器;圖5-8示出了根據(jù)本發(fā)明一個示例性實施方案的用于媒體系統(tǒng)的圖形用戶界面;圖9描述了根據(jù)本發(fā)明一個示例性實施方案的示例性數(shù)據(jù)結(jié)構(gòu);圖10(a)和10(b)描述了利用圖9所示的根據(jù)本發(fā)明一個示例性實施方案的數(shù)據(jù)結(jié)構(gòu)建立的示例性GUI的一部分的縮小和放大版本;圖11示出了用于產(chǎn)生根據(jù)本發(fā)明的示例性實施方案的GUI顯示的有序雙向鏈表;圖12(a)和12(b)顯示了另一示例性GUI的一部分的縮小和放大版本,它用于描述根據(jù)本發(fā)明的示例性實施方案的節(jié)點監(jiān)視算法的操作;圖13(a)和13(b)示出了根據(jù)本發(fā)明的示例性實施方案的示例性數(shù)據(jù)結(jié)構(gòu),其被用來描述在GUI從圖12(a)中的3見圖向圖12(b)中的視圖轉(zhuǎn)換時節(jié)點監(jiān)視算法的操作;圖14示出了根據(jù)本發(fā)明另一個示例性實施方案的、包括實現(xiàn)分辨率一致的縮放的虛擬相才幾的數(shù)據(jù)結(jié)構(gòu);圖15(a)和15(b)顯示了示例性GUI的一部分的縮小和放大版本,其示出了根據(jù)本發(fā)明的示例性實施方案的語義縮放;圖16-20示出了根據(jù)本發(fā)明另一個示例性實施方案的可縮放的圖形用戶界面;圖21描述了一組示例性的、能夠根據(jù)本發(fā)明的示例性實施方案被提供的覆蓋控制(overlaycontrol);圖22描述了用于實現(xiàn)根據(jù)本發(fā)明的可縮放圖形用戶界面的示意性架構(gòu);圖23示出了根據(jù)本發(fā)明的示例性實施方案的與生成可縮放圖形用戶界面相關(guān)聯(lián)的數(shù)據(jù)流;圖24描述了根據(jù)本發(fā)明的示例性實施方案的利用程序塊繪制的GUI屏幕;圖25描述了根據(jù)本發(fā)明的示例性實施方案的利用程序塊繪制的第二GUI屏幕;圖26描述了根據(jù)本發(fā)明的示例性實施方案的可用于創(chuàng)建程序塊的工具箱屏幕;圖27描述了根據(jù)本發(fā)明的示例性實施方案的、系統(tǒng)程序塊在其中作為便于分布式軟件設(shè)計的系統(tǒng)構(gòu)建塊使用的系統(tǒng);以及圖28示出了根據(jù)本發(fā)明的示例性實施方案的不同類型的程序塊的層次(hierarchy)。具體實施方式下面參照附圖對本發(fā)明進行詳細的說明。在不同的附圖中,相同或相似的元件用同一參考標號表示。此外,以下對本發(fā)明的詳細說明并不是對本發(fā)明的限制。相反,本發(fā)明的范圍是由所附權(quán)利要求來限定的。為提供上下文以便于討論,首先參考圖3至圖22對其中可以實現(xiàn)本發(fā)明的一個示例性的集成媒體系統(tǒng)200進行詳細描述。但是,本領(lǐng)域普通技術(shù)人員可以預(yù)見到,本發(fā)明并不僅限于實現(xiàn)這類媒體系統(tǒng),而是可以在其中包括更多或更少的組件。在本系統(tǒng)中,輸入/輸出(1/0)總線210將J某體系統(tǒng)200中的各個組件連接在一起。該I/O總線210代表多種用于對媒體系統(tǒng)組件之間的信號進行傳輸?shù)臋C制和技術(shù)中的任意一種。例如,該I/O總線210可以包括適當數(shù)量的用于傳輸音頻信號的獨立音頻"插頭"電纜、用于傳輸視頻信號的同軸電纜、用于傳輸控制信號的雙線式串行線路或紅外線或射頻收發(fā)器、光纖或任何用于傳輸其它類型的信號的其它傳輸機制。在這個示例性的實施方案中,媒體系統(tǒng)200包括電視/監(jiān)視器212、視頻卡式記錄器(VCR)214、數(shù)字化視頻盤(DVD)記錄/回放裝置216、音頻/視頻調(diào)諧器218和小型碟播放機220,這些器件都被連接到I/O總線210上。VCR214、DVD216和小型碟播放4幾220可以是單光盤或單磁帶式設(shè)備,也可以是多光盤或多磁帶式設(shè)備。它們可以是獨立的單元或者被集成在一起。此外,々某體系統(tǒng)200還包括一個麥克風/揚聲器系統(tǒng)222、攝像機224和無線I/0控制裝置226。根據(jù)本發(fā)明的示例性實施方案,無線I/O控制裝置226是支持自由空間定位的媒體系統(tǒng)遙控單元,它具有最小數(shù)目的按鈕以用于支持導(dǎo)航,并通過RF信號與娛樂系統(tǒng)200進行通信。例如,無線I/0控制裝置226可以是利用回轉(zhuǎn)儀(gyroscope)或其它機制來限定屏幕位置和位移矢量從而確定出所需的特殊命令的自由空間定位裝置。在無線I/O控制裝置226上還可包括將啟動在下面描述的"點擊"基元(primitive)的一組按鈕,以及包括"后退"按鈕。在另一個示例性的實施方案中,無線I/O控制裝置226是通過IR信號與媒體系統(tǒng)200的組件進行通信的媒體系統(tǒng)遙控單元。在另一個實施方案中,無線I/0控制裝置134可以在外觀上類似于典型的媒體系統(tǒng)遙控裝置,同時增加有可允許用戶在媒體系統(tǒng)100的顯示器中設(shè)置鼠標位置的跟蹤球或其它導(dǎo)航機制的特性。媒體系統(tǒng)200還包括系統(tǒng)控制器228。根據(jù)本發(fā)明的一個示例性的實施方案所述,系統(tǒng)控制器228能夠操作以存儲和顯示可從多個娛樂系統(tǒng)數(shù)據(jù)源獲得的娛樂系統(tǒng)數(shù)據(jù),并能控制與系統(tǒng)各組件相關(guān)的多種特征。如圖3所示,必要時,系統(tǒng)控制器228可通過I/O總線210被直接或者間接地連接到系統(tǒng)的各個組件。在一個示例性的實施方案中,除I/O總線210外,或者用來替代I/0總線210,系統(tǒng)控制器228配備有無線通信發(fā)射機(或收發(fā)器),它能夠通過IR信號或RF信號與系統(tǒng)組件進行通信。無論控制媒質(zhì)是什么,系統(tǒng)控制器228都被設(shè)置成能夠通過下文所述的圖形用戶界面來控制媒體系統(tǒng)200中的各個媒體組件。如圖3進一步所示,媒體系統(tǒng)200可以被設(shè)置用于接收來自多個媒體源和服務(wù)提供商的媒體節(jié)目。在這個示例性的實施方案中,媒體系統(tǒng)200從以下數(shù)據(jù)源中的任一個或全部接收信息并且可選擇地向其發(fā)送信息有線廣播230,衛(wèi)星廣播232(例如通過衛(wèi)星天線),廣播電視網(wǎng)234的甚高頻(VHF)或超高頻(UHF)射頻通信(例如通過空中的天線),電話網(wǎng)236和有線調(diào)制解調(diào)器238(或者其它的互聯(lián)網(wǎng)內(nèi)容源)。本領(lǐng)域技術(shù)人員可以預(yù)見到,圖3所示的媒體組件和媒體源僅僅是一個示例,媒體系統(tǒng)200可以包括更多或者更少的這些組件。例如,對于上述系統(tǒng)的其它形式的輸入包括AM/FM無線裝置和衛(wèi)星無線裝置。圖4是示出根據(jù)本發(fā)明的示例性的系統(tǒng)控制器228的方框圖。系統(tǒng)控制器228例如能夠?qū)崿F(xiàn)為機頂盒,并例如包括處理器300、存儲器302、顯示器控制器304、其它設(shè)備控制器(例如,與系統(tǒng)200的其它組件相關(guān)的裝置)、一個或多個數(shù)據(jù)存儲設(shè)備308以及I/0接口310。這些組件通過總線312與處理器300進行通信。本領(lǐng)域技術(shù)人員可以預(yù)見到,可使用一個或多個處理單元來實現(xiàn)處理器300。存儲設(shè)備302可例如包括DRAM或SRM、ROM,這些存儲設(shè)備中的一些可以被指緩沖存儲器,這些軟件和數(shù)據(jù)包括與在下面描述的圖形用戶界面相關(guān)聯(lián)的軟件和/或數(shù)據(jù)。顯示器控制器304可由處理器300操作以控制監(jiān)視器212的顯示,以連通其它事情一起顯示在下面描述的GUI屏幕和對象。根據(jù)本發(fā)明的示例性實施方案的可縮放的GUI提供了與分辨率(resolution)無關(guān)的縮放,從而使得監(jiān)視器212能夠以任意的分辨率進行顯示。設(shè)備控制器306提供了媒體系統(tǒng)200的其它組件和處理器300之間的接口。數(shù)據(jù)存儲器308可包括一個或多個硬盤驅(qū)動器、軟盤驅(qū)動器、CD-ROM設(shè)備或其它的大容量存貯器設(shè)備。輸入/輸出接口310可包括多種接口中的一個或多個,包括例如鍵盤接口、RF接口、IR接口和麥克風/語音接口。根據(jù)本發(fā)明示例性的實施方案,1/0接口310將包括用于接收與無線定位裝置的運動關(guān)聯(lián)的位置信息的接口。根據(jù)本發(fā)明的示例性實施方案的圖形用戶界面由系統(tǒng)控制器228響應(yīng)處理器執(zhí)行包含于存儲器302中的指令序列來生成和控制,以顯示媒體項選擇信息。上述指令可從其它計算機可讀媒介(例如數(shù)據(jù)存儲設(shè)備308)或從外接于媒體系統(tǒng)200的計算機讀入到存儲器302中。對包含于存儲器302中的指令序列的執(zhí)行使得處理器在監(jiān)視器212中連同其它的事情一起生成圖形用戶接口對象和控制。在可選的實施方案中,可使用硬連線電路來代替或與軟件指令組合來實現(xiàn)本發(fā)明。如在
背景技術(shù)
部分中提到的那樣,傳統(tǒng)的與電視工業(yè)關(guān)聯(lián)的界面架構(gòu)在為用戶提供簡單且全面的選擇體驗?zāi)芰Ψ矫婢哂袊乐氐娜毕荨R虼?,在本文中描述的控制架?gòu)克服了這些限制,并因此適于與電視一起使用,當然不排除與其它裝置一起使用。還應(yīng)該預(yù)見到在本文中描述的創(chuàng)新的控制架構(gòu)、圖形用戶界面和/或各種算法可應(yīng)用于與計算機和其它非電視設(shè)備使用的接口中。為了區(qū)別本發(fā)明的示例性實施方案的這些各種應(yīng)用,在本說明書中使用術(shù)語"電視"和"TV"來指代顯示器設(shè)備的子集,而術(shù)語"GUI"、"GUI屏幕"和"顯示屏"是普通的,并指電視顯示器、計算機顯示器和其它任意顯示器設(shè)備。更具體地說,術(shù)語"電視"和"TV"的意圖是指在無需使用適配器就可將電視信號轉(zhuǎn)換為其它格式(例如,計算機視頻格式)的情況下能夠顯示電視信號(例如,NTSC信號、PAL信號或SECAM信號)的顯示器設(shè)備的子集。此外,術(shù)語"電視"和"TV"指通常能從幾英尺或更遠的距離觀看的顯示器子集(例如沙發(fā)到家庭活動室TV),而計算機顯示器通常是近距離觀看的(例如,從椅子到桌面的顯示器)。在描述了能夠用來實現(xiàn)根據(jù)本發(fā)明的包括可縮放圖形界面的控制架構(gòu)后,現(xiàn)在描述這些界面的幾個實施例。根據(jù)本發(fā)明的示例性實施方案,用戶界面顯示了可按類別分組的可選擇項。用戶將遙控單元指向感興趣的一個或多個種類,并且按下選擇按鈕以進行放大,或按下"后退"按鈕縮放回原來的狀態(tài)。用戶的每次放大或縮放回原來狀態(tài)的動作都使得通過用戶界面顯示于屏幕中的可選擇的節(jié)目的放大等級和/或內(nèi)容產(chǎn)生變化。根據(jù)示例性的實施方案,每次放大等級的改變可以是一致的,即以預(yù)定的級別來改變放大等級。本發(fā)明的示例性實施方案還提供了并入有幾個可視化技術(shù)以實現(xiàn)放大到很大比例的用戶界面。這些技術(shù)包括構(gòu)件塊和能夠獲得可縮放和易于使用的技術(shù)(尤其是采用用戶界面來提高用戶視覺記憶以快速地重新訪問用戶界面對象的技術(shù))的組合。用戶界面在很大程度上是視覺體驗。在這樣的環(huán)境中,本發(fā)明的示例性實施方案使用了用戶能夠記起該視覺環(huán)境中的對象位置的能力。這通過為用戶界面選擇項提供穩(wěn)定的、相關(guān)的(dependable)位置來實現(xiàn)。每一個對象在可縮放布局中都具有相應(yīng)的位置。一旦用戶發(fā)現(xiàn)感興趣的對象,就會本能地記起設(shè)置對象的方向。如果該對象是特別感興趣的,則用戶可能會不止一次地訪問該項目,這會加強用戶對到該對象的路徑的記憶。根據(jù)本發(fā)明的示例性實施方案的用戶界面提供了一見覺記憶系統(tǒng)(visualmnemonics),它能夠幫助用戶記起所感興趣的項目的位置。該一見覺記憶系統(tǒng)包括移動(pan)和縮》文動畫、通過用戶界面的虛擬面生成運動的地理感覺的轉(zhuǎn)場效果、和一致的縮放功能性(functionality),基于下面描述的實施例,它們連同其它的事情一起將變得更加顯而易見。組織機制被提供以使得用戶能夠從極多的節(jié)目組中進行選擇,而同時屏蔽與大量選擇組關(guān)聯(lián)的細節(jié)。根據(jù)本發(fā)明,可以使用各種類型程序為瀏覽器或郵箱中的任何--種。7、一種瀏覽器運行方法,用于運行瀏覽器,其特征在于,它包含判定可共有的實體是否在給定的存儲器區(qū)域中注冊的注冊判定步驟當判定可共有的實體沒有注冊時,運行作成新的實體的作成步驟;當判定可共有的實體注冊時,運行共有該實體的共有步驟。8、一種郵箱運行方法,用于運行郵箱,其特征在于,包括判定可共有的實體是否在給定的存儲器區(qū)域中被注冊的注冊判定步驟當判定可共有的實體沒有被注冊時,運行作成新的實體的作成步驟;當判定可共有的實體被注冊時,運行共有該實體的共有步驟。9、一種程序,其可在計算機上運行權(quán)利要求18中任何一條所述的方法。.10、一種終端裝置,安裝有插件軟件,其特征在于,具有根據(jù)插件軟件作成的至少一個插件模塊;判定在插件模塊間可共有的實體是否被注冊在給定的存儲器區(qū)域中的注冊判定裝置;當上述注冊判定裝置判定為可共有的實體沒有被注冊時,作成新的實體的實體作成裝置;以及當上述注冊判定裝置判定可共有的實體被注冊時,共有該實體的實體共有裝置。11、如權(quán)利要求10所述的終端裝置,其特征在于,當將解析并作成與插件模塊應(yīng)解析的插件指定文件相同的文件的實體被注冊在該存儲器區(qū)域中時,上述注冊判定裝置判定為可共有該實體。12、如權(quán)利要求10所述的終端裝置,其特征在于,當將解析并作需)特征是它們?yōu)橛脩籼峁┝?自由空間定位"的能力。在該說明書中使用的短語"自由空間定位"指用戶在顯示屏前空中的三維(或更多)空間自由移動輸入設(shè)備的能力,以及用戶界面將這些運動直接轉(zhuǎn)換為游標在屏幕上的運動的相應(yīng)能力。因此,"自由空間定位"不同于傳統(tǒng)的計算機鼠標定位技術(shù),傳統(tǒng)的計算機鼠標定位技術(shù)使用不同于顯示屏的表面(例如桌子表面或鼠標墊)作為代理(proxy)表面,鼠標在這些表面的相對運動被轉(zhuǎn)化成計算機顯示屏中的游標運動。使用自由空間定位來控制根據(jù)本發(fā)明的示例性實施方案的架構(gòu)進一步簡化了用戶的選擇過程,而同時提供了將姿勢(gesture)作為可區(qū)別的輸入引入到上述界面的機會。姿勢可被看作是能夠隨時間變化的可識別運動模式,該模式可被轉(zhuǎn)換為GUI命令,例如以x、y、z、平擺(yaw)、俯仰(pitch)和搖擺維度的或它們?nèi)我獾淖咏M合的運動的函數(shù)。然而,本領(lǐng)域的技術(shù)人員應(yīng)該認識到任意適合的輸入設(shè)備能夠與根據(jù)本發(fā)明的可縮放的GUI—起使用。其它適合的輸入設(shè)備的實施方案包括但不限于跟蹤球、觸摸墊(touchpad)、傳統(tǒng)的TV遙控設(shè)備、語音輸入設(shè)備、任意能夠?qū)⒂脩舻淖藙輦鬟f/轉(zhuǎn)換成GUI命令的設(shè)備,或它們的任意組合。其意圖是在本文中進行描述的GUI功能的每個方面都能夠使用至少一個姿勢和語音命令在根據(jù)本發(fā)明的架構(gòu)中啟動??蛇x的實現(xiàn)包括使用游標和/或其它遙控鍵或甚至是語音輸入來識別選擇的節(jié)目。圖6顯示了如果用戶從圖5中選擇種類3(例如,通過在顯示器212中將游標508在矩形環(huán)繞種類3圍繞的區(qū)域上移動,并在輸入設(shè)備中按下按鈕)的話將被顯示的種類3進行放大的圖。本發(fā)明的界面能夠產(chǎn)生從圖5到圖6的縮放,從而使得用戶清楚產(chǎn)生了縮放。上述產(chǎn)生的縮放/轉(zhuǎn)場效果的實施例將在下面進行描述。一旦包含種類3的形狀516占用了大部分的顯示器212中的屏幕,上述界面顯示了在上述種類中具有專輯的藝術(shù)家。在該實施例中,顯示了七個不同的藝術(shù)家和/或它們的作品。與種類3相鄰的未選擇的種類515(其在圖5中為縮小視圖)仍然與在視圖上放大的種類3相鄰,但是它在顯示器212的邊緣處于被部分剪切的狀態(tài)。這些未選擇的種類能夠通過選擇指針508對它們的選擇進行快速瀏覽。然而應(yīng)該認識到本發(fā)明的其它示例性實施方案能夠忽略被剪切相鄰對象,相反僅顯示未被剪切的選擇。藝術(shù)家組(例如,藝術(shù)家組512)中的每一個都能夠包含縮小專輯封面的圖像、藝術(shù)家的照片或可由用戶定制的藝術(shù)作品(如果上述分類包含用戶建立的藝術(shù)家列表的話)。用戶則可以選擇一個藝術(shù)家組用于進一步瀏覽和/或選擇。圖7顯示了響應(yīng)用戶經(jīng)由對游標508進行定位、并啟動輸入設(shè)備而選擇了藝術(shù)家3的進一步放大的視圖,其中,可以看到專輯封面520的圖片。如圖從圖5和圖6的GUI屏幕轉(zhuǎn)變一樣,未被選擇的、鄰近的藝術(shù)家(在該實施例中是藝術(shù)家#2、6和7)被顯示為朝向被放大的顯示中的側(cè)邊,用戶能夠使用選擇指針508對它們進行點擊,從而看到這些藝術(shù)家的全部視圖。除了專輯封面的圖像520外,在界面的這部分中,藝術(shù)家信息524能夠作為藝術(shù)家組中的節(jié)目而顯示。這些信息可包含例如藝術(shù)家的照片、傳記、瑣事、作品目錄、影響、鏈接網(wǎng)址和其它有關(guān)數(shù)據(jù)。相冊圖片520中的每一個可包含相冊封面的圖片,以及可選地包含有文本數(shù)據(jù)。在相冊圖片520包括用戶創(chuàng)建的藝術(shù)家列表的情況下,圖形用戶界面能夠顯示通過該界面自動選擇或用戶預(yù)先選擇的圖片。最后,在用戶從組521中選擇專輯封面圖片520時,上述界面縮放到如圖8所示的專輯封面。隨著縮放的繼續(xù),該專輯封面能夠退為或變?yōu)榘@樣一些項目的視圖,例如,專輯530的藝術(shù)家和標題、曲目列表532、與專輯相關(guān)的進一步信息536、專輯封面的更小版本528、以及用于回放內(nèi)容、修改分類、鏈接到藝術(shù)家網(wǎng)頁,或找出與選擇有關(guān)的任意其它信息的控制信息534。相鄰的專輯538顯示出那些能夠通過使用選擇定位器508選擇,以使得界面顯示它們的內(nèi)容。如上所提到的那樣,本發(fā)明可選擇的實施方案能夠例如放大到僅顯示被選擇的對象(例如,專輯5),并忽略未被選擇的對象(例如,專輯4和6)的剪切部分。該最終的縮》文提供了語義性縮》文(semanticzooming)的一個實施方案,其中某些GUI元件被顯示出來,而先前的縮放等級中它則是不可見的。各種用于實現(xiàn)根據(jù)本發(fā)明的示例性實施方案的技術(shù)在下面進行描述。如圖5-8以及說明書中示出的那樣,該示例性實施方案的圖形用戶界面提供了對音樂集的瀏覽。根據(jù)本發(fā)明的界面還能夠用于視頻集,例如用于DVD、VHS帶、其它記錄的媒體、視頻點播、視頻片段和家庭影院。其它的音頻使用包括對無線電節(jié)目、教學(xué)磁帶、文史資料和聲音剪接的瀏覽。還能夠使用本發(fā)明來組織和訪問印制的或文本媒體,例如新聞故事和電子書。根據(jù)前面的描述,本領(lǐng)域的技術(shù)人員應(yīng)該認識到,根據(jù)本發(fā)明的可縮放的圖形用戶界面為用戶提供了快速且容易地瀏覽大量(或較少)媒體項的能力。這種能力可歸因于本發(fā)明的示例性實施方案的界面的許多特性,這些特性包括但不限于(l)使用圖像作為用于特殊媒體項的全部或部分選擇信息,(2)使用縮放來快速提供與用戶進行選擇所需的盡可能多或盡可能少的信息,以及(3)使用幾種GUI技術(shù),它們#1組合起來給用戶所有界面都位于同一平面的感覺,>大而能夠完成GUI的瀏覽,并通過用戶的方向感覺而被記住。根據(jù)本發(fā)明的GUI的后一方面能夠連同其它事情一起將各種GUI屏幕"地理性地"連接起來,它通過使盡可能多的GUI對象從一個GUI屏幕到下一個GUI屏幕保持連續(xù)而實現(xiàn),例如,通過顯示相鄰的、環(huán)繞于當前GUI屏幕邊沿的未被選擇的對象的邊緣??蛇x地,如果期望得到清楚的視圖以及其它的GUI技術(shù)提供地理性的反饋,則可以忽略被剪切的對象。如在該文種使用的那樣,短語"GUI屏幕"指在同一時間呈現(xiàn)于一個或多個顯示器單元中的一組GUI對象。GUI屏幕可被呈現(xiàn)于輸出媒體項的同一顯示器中,或者它可被呈現(xiàn)在不同的顯示器中。顯示器可以是TV顯示器,計算機監(jiān)視器或任意其它合適的GUI輸出設(shè)備。另一個提高用戶感覺到GUI屏幕是連接性的GUI效果是在執(zhí)行縮放時、或在用戶選擇與當前被選擇的對象的縮放等級相等的鄰近對象時產(chǎn)生的移動動畫(panninganimation)效果。返回到圖5所示的實施例,在用戶最初觀看該GUI屏幕時,他或她的觀察點集中在點550附近。然而,在他或她選擇種類3進行放大時,他或她的觀察點轉(zhuǎn)移到點552。根據(jù)本發(fā)明的示例性實施方案,放大處理被激勵以將POV中心/人點550轉(zhuǎn)移到點552。這種移動動畫能夠被用來改變各種GUI,例如從縮放等級的改變,或?qū)⒁粋€對象改變到同一GUI放大等級中的另一個對象的改變。因此,如果(例如)位于圖6的GUI屏幕中的用戶選擇最左側(cè)的未被選擇的種類515(種類2),則將發(fā)生移動動畫,這將給用戶在視覺上以左或西"移"的影響。本發(fā)明的示例性實施方案使用上述技術(shù)來提供GUI屏幕之間的定向運動是一致的感覺,從而使用戶更加快速地在放大等級之間和在相同放大等級的媒體項之間瀏覽GUI。能夠使用各種數(shù)據(jù)結(jié)構(gòu)和算法來實現(xiàn)根據(jù)本發(fā)明的可縮放的GUI。例如,用于在顯示照片的圖像瀏覽器中進行移動和縮放的數(shù)據(jù)結(jié)構(gòu)和算法在例如下面的論文中已經(jīng)被描述"QuantumTreemapsandBubblemapsforaZoomableImageBrowser",BenjaminB.Bederson,UIST2001,ACMSymposiumonUserInterfaceSoftwareandTechnology:CHILetters,3(2),pp.71-80(本杰明'B.比得森的題為"用于可縮放圖像瀏覽器的量子數(shù)圖和冒泡圖",UIST2001,用戶界面軟件和技術(shù)的ACM論壇,CHI學(xué)報,3(2),第71-80頁),其被并入本文作為參考。然而,為了提供用于媒體選擇的、能夠以高的等級來在大量的應(yīng)用中進行切換,并且能夠使用戶以較低的等級控制所選擇的圖像以執(zhí)行各種媒體選擇功能的GUI,需要附加的結(jié)構(gòu)和算法??煽s放的GUI可被概念化為能夠在顯示設(shè)備的視區(qū)中的用戶界面組件的場景周圍支持移動和縮放動畫。為了完成這種影響,根據(jù)本發(fā)明的示例性實施方案的可縮放的GUI能夠使用場景圖數(shù)據(jù)結(jié)構(gòu)(scenegraphdatastructure)來實現(xiàn)。在場景圖中的每一個節(jié)點表示用戶界面組件的某些部分,例如按鈕或文本標簽或一組界面組件。節(jié)點內(nèi)部的子節(jié)點表示圖形元素(線、文本、圖像等)。例如,在場景圖中的一個應(yīng)用可以被表示為具有用于其界面中的圖形元素的各種子節(jié)點的節(jié)點。兩種特殊類型的節(jié)點在本文中被稱為相機和分層。相機是通過著眼于分層節(jié)點而將視區(qū)提供到場景圖的其它部分的節(jié)點。在這些分層節(jié)點的下面是用戶界面元素。用于可縮放界面的控制邏輯通過編程調(diào)整相機視線變化,以提供移動或縮放效果。圖9顯示了包含基本可縮放的界面元素的場景圖,這些元素能夠用來實現(xiàn)本發(fā)明的示例性實施方案,具體地講,該場景圖包含了一個相才幾節(jié)點900和一個分層節(jié)點902。相4幾節(jié)點900和分層節(jié)點902之間的點劃線表示相機節(jié)點900被配置成將分層節(jié)點902的子節(jié)點繪制(render)到相機的視區(qū)中。被聯(lián)結(jié)的顯示器設(shè)備904使用戶看到相機的視區(qū)。分層節(jié)點具有描繪圓和一對橢圓的三個子節(jié)點卯4。該場景圖還進一步指出,通過節(jié)點912-918在上述圓中畫出了矩形,以及在三個三角形中畫出了矩形。場景圖通過根節(jié)點920被聯(lián)系入其它數(shù)據(jù)結(jié)構(gòu)的其它場景圖。節(jié)點906-918中的每一個具有通過使用局部坐標變換矩陣使其相對于其父節(jié)點進行比例縮放和定位的能力。圖10(a)和10(b)分別示出了通過相機以第一》文大等級縮小、以及以第二》文大等級放大的場景圖的樣子。繪制場景圖可實現(xiàn)如下。當顯示器904需要更新時,例如用戶觸發(fā)了從圖10(a)的視圖到圖10(b)的視圖的放大,則重畫事件調(diào)用聯(lián)結(jié)到顯示器904的相機節(jié)點900以繪制相機節(jié)點900自身。這樣反過來使得相機節(jié)點900通知分層節(jié)點902繪制相機視區(qū)內(nèi)的區(qū)域。分層節(jié)點902通過通知它的子節(jié)點繪制這些子節(jié)點自身而將其本身繪制,等等。用于上述區(qū)域更新的當前變換矩陣和外接長方形在各個步驟凈皮傳遞(pass),并且可選地得到1f改以通知各個節(jié)點它們應(yīng)該用來進行繪制的適當比例和偏移。由于在根據(jù)本發(fā)明的可縮放的GUI內(nèi)操作的應(yīng)用的場景圖可包括數(shù)以千計的節(jié)點,所以各個節(jié)點能夠檢測變換矩陣以及要被更新的區(qū)域,以確保它們的繪制操作真正能夠被用戶看到。盡管前面描述的實施例描述了包括一個相機節(jié)點和一個分層節(jié)點的場景圖,但是應(yīng)該預(yù)見到,本發(fā)明的示例性實施方案能夠嵌入多個相機和分層。這些被嵌入的相機能夠為用戶提供用戶節(jié)點元素,例如指示在整個可縮放界面中用戶當前視線區(qū)域的小的縮小圖,并且能夠允許用戶界面組件可獨立地縮放和移動。在使用可縮放界面來協(xié)調(diào)多應(yīng)用(例如像將在下面參照圖14-18描述的示例性電影瀏覽器一樣)的操作時,用于每個應(yīng)用的存儲和資源需求可能會超過在媒體系統(tǒng)中的總有效存儲。這就暗示在用戶不再看它們時,需將這些應(yīng)用的一些或全部代碼和數(shù)據(jù)卸載。然而,在才艮據(jù)本發(fā)明的可縮放的GUI中,提供這樣的外觀是期望的,即,使一些或所有應(yīng)用對于用戶總是看起來是激活的。為了滿足上述兩個對抗的目標,對于用戶視線來說是"幕外(off-screen)"的應(yīng)用能夠進入到臨時掛起的狀態(tài)。為了在根據(jù)本發(fā)明的可縮放的GUI中實現(xiàn)這個功能,將事件發(fā)送到應(yīng)用以指示它們何時進入和退出視區(qū)。實現(xiàn)上述事件的一個方式是在繪制組件的代碼中增加邏輯,從而使得在用戶進入視區(qū)時進行檢測。然而,這意味者該通知邏輯在每個繪制事件被調(diào)用,并且更重要的是在用戶瀏覽過遠離組件的視區(qū)時,它不能夠容易地檢測。另一種用于將事件發(fā)送到應(yīng)用的方法是將通知邏輯并入到GUI瀏覽元件(例如超級鏈接和按鈕)中,從而使得在它們改變相機視區(qū)以將所感興趣的組件包括進來時,將通知發(fā)送到上述組件。然而,這需要程序員來警惕地(vigilantly)將通知代碼增加到所有可能的瀏覽UI元素中。根據(jù)一個示例性實施方案,能夠使用有計算效率節(jié)點監(jiān)視算法來通知應(yīng)用GUI組件和/或應(yīng)用在何時進入和退出相機一見區(qū)。在高的等級上,該節(jié)點監(jiān)視算法具有三個主要處理級(l)初始化,(2)視區(qū)改變評估,以及(3)場景圖改變評估。初始化級計算由視區(qū)改變評估級使用的節(jié)點量,并且初始化正確的數(shù)據(jù)結(jié)構(gòu)。視區(qū)改變評估級在視i區(qū)改變時被調(diào)用,并通知所有進入或退出視區(qū)的監(jiān)視節(jié)點。最后,場景圖改變評估級更新在初始級產(chǎn)生的計算,這些計算由于在場景圖中的變化而變得無效。例如,如果監(jiān)視節(jié)點的先輩節(jié)點(ancestornode)在場景圖中改變了位置,則在初始級中進行的計算需要重新計算。在這些級中,視區(qū)改變評估級驅(qū)動節(jié)點監(jiān)視算法的其余部分。為了描繪節(jié)點在何時進入和退出視區(qū),初始化步驟確定期望節(jié)點的邊界矩形,并將其從其局部坐標系統(tǒng)轉(zhuǎn)變到視區(qū)的局部坐標系統(tǒng)。按照這種方式,檢測節(jié)點進入不需要在各個視區(qū)改變處進行一系列坐標轉(zhuǎn)換。由于該節(jié)點的父節(jié)點可具有轉(zhuǎn)換矩陣,所以該初始步驟需要從該節(jié)點直到相機節(jié)點來遍歷場景圖。如下所述,如果在場景圖數(shù)據(jù)結(jié)構(gòu)中4吏用嵌入的相機節(jié)點,則需要多個邊界矩形來容納在多個位置出現(xiàn)的節(jié)點。在視區(qū)坐標系統(tǒng)中計算出用于各個監(jiān)^L節(jié)點的邊界矩形后,初始化級將邊界矩陣增加到視區(qū)改變評估數(shù)據(jù)結(jié)構(gòu)中。上述節(jié)點監(jiān)視算法使用基本的構(gòu)件塊用于屏幕中的每一維度。在根據(jù)一些示例性實施方案的可縮放界面中,這包括x維度、y維度以及比例維度。然而,如在下面所述的那樣,其它示例性實施方案可具有附加的或不同的維度。比例維度描述了在視區(qū)的節(jié)點的放大等級,并且通過下式來描述y=—其中,S是比例,d是從該節(jié)點的一個點到該節(jié)點的局部坐標中的另一個點的距離,以及d,是在該視區(qū)中上述點到另一點的距離。圖11顯示了用于檢測一個維度的場景進入和退出的示例性構(gòu)件塊。下面描述在x維度的處理,但是本領(lǐng)域的技術(shù)人員應(yīng)該認識到能夠以相似的方式處理其它的維度。區(qū)域塊1100包含被轉(zhuǎn)換邊界矩形坐標的基準(references)。這包括矩形的左和右(頂部和底部或最小和最大比例)偏移量。左和右偏移量分別存儲在轉(zhuǎn)換塊1102和1104中,轉(zhuǎn)換塊1102和1104本身置于有序的雙向鏈表中,從而使得較低編號的偏移量朝向起始位置。當前的視區(qū)邊界存儲于視線邊界區(qū)塊1106。區(qū)塊1106具有指向剛好超出視圖的左側(cè)和右側(cè)的轉(zhuǎn)換塊的指針,例如,直接位于由視圖左側(cè)指向的區(qū)塊的右側(cè)的轉(zhuǎn)換塊出現(xiàn)在^L圖中,除非上述由視圖左側(cè)指向的區(qū)塊由視區(qū)右側(cè)指向。在視區(qū)改變時,對于每一維度發(fā)生下述處理。首先,檢測視圖左側(cè)和視圖右側(cè)指針以確認它們是否需要移動以包括或排除轉(zhuǎn)換塊。接下來,如果上述指針中的一個或兩個需要移動,則它們略過(slideover)上述轉(zhuǎn)換塊以到達它們新的位置。接著,對于由左側(cè)和視圖右側(cè)指針經(jīng)過的每個轉(zhuǎn)換塊,上述節(jié)點監(jiān)視算法執(zhí)行在下面將描述的轉(zhuǎn)換塊通知編碼。該通知編碼確定其各自的節(jié)點是否有可能進入或退出的視區(qū)。如果具有,則該節(jié)點3皮添加到后處理列表(postprocessinglist)中。最后,在用于各個維度的該處理的結(jié)尾,檢測上述后處理列表中的各個節(jié)點其視區(qū)狀態(tài)是否真實地發(fā)生了改變(與先改變?nèi)缓笞兓叵喾?。如果真的發(fā)生了改變,則上述算法發(fā)送事件到上述組件。應(yīng)該注意到,如果視區(qū)快速跳轉(zhuǎn)到可縮放的界面的新區(qū)域,則上述算法可檢測到更多偽進入和退出事件。轉(zhuǎn)換塊通知編碼能夠被實現(xiàn)成檢查表,該檢查表確定移入和移出用于該維度的節(jié)點是否被檢測。下面顯示了示例性的上述表。<table>tableseeoriginaldocumentpage24</column></row><table>表1-轉(zhuǎn)換通知表第1、2和3欄是轉(zhuǎn)換通知表的輸入。具體地說,節(jié)點監(jiān)視算法使用節(jié)點側(cè)、一見圖側(cè)和#見圖移動方向的組合來編址該表,以確定該評估的節(jié)點是否被進入、退出或沒有影響。欄1指由視區(qū)指針經(jīng)過的轉(zhuǎn)換塊所表征的節(jié)點側(cè)。欄2指視區(qū)側(cè),欄3指在視區(qū)通過節(jié)點的轉(zhuǎn)換塊時該3見區(qū)側(cè)移動的方向。輸出欄4或5是在上述節(jié)點部分或完全可3見時根據(jù)該節(jié)點是否應(yīng)該被通知來進行選擇的。例如,在一些實現(xiàn)方案中,理想的情況是僅在應(yīng)用(例如視頻流窗口)完全可視之后才通知該應(yīng)用,這是因為將部分可視的視頻窗口加載到可縮放的GUI中在視覺上是分裂性的。在該表的輸出表示進入和退出時,該節(jié)點監(jiān)視算法將該節(jié)點添加到后處理列表。表l中的輸出欄基于下面的規(guī)則來填充(populate)。如果該節(jié)點在所有的維度相交,則將進入通知發(fā)送到上述后處理步驟。如果該節(jié)點在視圖中并且現(xiàn)在一個或多個維度停止交叉,則將發(fā)送退出通知。為了降低后處理列表中的節(jié)點個數(shù),轉(zhuǎn)換塊通知編碼在將該節(jié)點添加到列表之前檢測與其它維度的交叉。這在所有數(shù)目的維度(例如,三個或更多交叉)中僅有一個或兩個維度交叉時,免去了后處理步驟。在用戶界面對象(例如,應(yīng)用)要被通知其在GUI中的視區(qū)狀態(tài)時,它用上述節(jié)點監(jiān)視算法登記一個函數(shù)(function)。在上述應(yīng)用進入或退出視圖時,節(jié)點監(jiān)視算法用指示發(fā)生什么情況的參數(shù)來調(diào)用該應(yīng)用所登記的函數(shù)。作為一種選擇,能夠使用消息傳遞來執(zhí)行通知。在這種情況下,各個應(yīng)用具有事件隊列。上述應(yīng)用告訴節(jié)點監(jiān)視算法如何與其事件隊列來通信。例如,它能夠指出隊列的地址。接著,在節(jié)點監(jiān)視檢測出轉(zhuǎn)換時,它建立包含通知起因的數(shù)據(jù)結(jié)構(gòu),并將其置于該應(yīng)用的隊列中。除了使用用于應(yīng)用存儲管理的節(jié)點監(jiān)視通知,該算法還能夠用于根據(jù)本發(fā)明的可縮放GUI中的其它功能。例如,節(jié)點監(jiān)視算法能夠用來基于用戶視圖的焦點來改變應(yīng)用行為,例如通過將音頻輸入焦點切換到當前可視的應(yīng)用中。其它用于節(jié)點監(jiān)3見算法的應(yīng)用在放大等級改變時,將載入或卸載較高的分辨率,并將圖像進行合成。這通過使繪圖實施者(renderer)繪制較少的、分辨率更加接近匹配顯示器的對象,來降低了其計算負載。除了節(jié)點監(jiān)視算法監(jiān)視相機的視區(qū)外,使它監(jiān)-現(xiàn)瀏覽編碼(navigationcode)也是有用的,該瀏覽編石馬告訴-現(xiàn)區(qū)在動畫制造之后該視區(qū)所結(jié)束的位置。這較早地通知組件它們將出現(xiàn)在視圖中,并且還能夠使得根據(jù)本發(fā)明實施方案的可縮放的GUI避免將通知發(fā)送到由于移動動畫而被溢出的節(jié)點。為了更好地理解節(jié)點操作監(jiān)視算法的搡作,下面將參照圖12(a)、12(b)、13(a)和13(b)來描述實施例。圖12(a)和12(b)示出了兩個不同放大等級的、可縮放的圖像用戶界面的部分。在圖12(a)的較低放大等級處可以看見三個節(jié)點圓形、三角形和橢圓。在圖12(b)中,該—見圖被放大,從而使得橢圓和圓形部分可見,三角形完全不可見。這些節(jié)點可例如表征依賴于有效事件通知的應(yīng)用或用戶界面組件,并因此由根據(jù)本發(fā)明的示例性實施方案的節(jié)點監(jiān)視算法跟蹤。在該實施例中,在圖12(a)和12(b)明確示出了各個節(jié)點的邊界矩形,盡管本領(lǐng)域的技術(shù)人員應(yīng)該認識到在GUI中典型地不會顯示這些邊界矩形。在12(a)和12(b)中對各個邊界矩形的各邊進行了標注,這些標注將用來顯示邊界矩形的邊與上面描述的轉(zhuǎn)換塊數(shù)據(jù)結(jié)構(gòu)之間的對應(yīng)關(guān)系。圖13(a)示出了用于圖(12)的縮小視圖的水平維度的示例性節(jié)點監(jiān)視數(shù)據(jù)結(jié)構(gòu)。在該圖中,節(jié)點邊界矩形的各邊使用轉(zhuǎn)換塊來表征。水平轉(zhuǎn)換塊以它們在GUI中出現(xiàn)的從左到右的順序顯示于圖13(a)中。例如,圓形的左邊C左首先出現(xiàn),接著三角形的左邊T左,等等,直到橢圓的右邊E右出現(xiàn)為止。該列表的兩端用空標志轉(zhuǎn)換塊來標記。在圖13(a)中還顯示了用于各個節(jié)點和指向它們相應(yīng)的到它們邊界矩形的水平轉(zhuǎn)換塊的指針的區(qū)域塊。在圖13(a)的底部是視圖邊界數(shù)據(jù)結(jié)構(gòu),它包含指向剛好位于當前視圖之外的轉(zhuǎn)換塊的指針。對于該縮小的視圖,所有節(jié)點是完全可見的,并因此它們所有的轉(zhuǎn)換塊位于由視圖邊界數(shù)據(jù)結(jié)構(gòu)指向的轉(zhuǎn)換塊之間。圖13(b)顯示了用于圖12(b)的放大視圖的節(jié)點監(jiān)視數(shù)據(jù)結(jié)構(gòu)。在該圖中,可以看出數(shù)據(jù)結(jié)構(gòu)的視圖邊界部分被改變,從而使得它指向用于三角形的右邊T右以及橢圓的右邊E右的轉(zhuǎn)換塊,這是因為上迷兩個邊界矩形邊正好位于當前(放大)視圖之外。在給出上述示例性數(shù)據(jù)結(jié)構(gòu)和GUI場景后,在進行縮放轉(zhuǎn)換時節(jié)點監(jiān)視算法內(nèi)的相關(guān)處理如下所述。首先從視圖的左側(cè)開始,節(jié)點監(jiān)視算法將視圖左側(cè)指針向右移動,直到到達剛好處于左側(cè)視圖之外的轉(zhuǎn)換塊。如圖13(b)所示,視圖左側(cè)指針首先通過C左轉(zhuǎn)換塊。例如,假設(shè)圓形節(jié)點表征與可縮放的GUI關(guān)聯(lián)的應(yīng)用或其它用戶界面對象(在其完全在視圖中可視時,需要通知)。給出到節(jié)點監(jiān)視算法的上述輸入后,表1示出該圓形節(jié)點對于水平維度應(yīng)該接收退出通知。當然,節(jié)點監(jiān)視算法在通知該節(jié)點之前會典型地集合來自所有維度的通知,以避免發(fā)送多余的退出通知。接下來,視圖左側(cè)指針通過三角形的左邊T左。如果該三角形節(jié)點在其完全離開視圖時請求通知,則該節(jié)點監(jiān)視算法在每個表1中指出沒有通知是必要的。然而,在視圖指針通過T右時,表1示出該三角形完全退出視圖,并且應(yīng)該被通知。視圖指針停止在這里,這里因為圓形邊界矩形的右邊C右在視圖中仍然可見。節(jié)點監(jiān)視算法從該右側(cè)的處理是相似的。試圖右側(cè)指針左移到橢圓的右邊E右。根據(jù)橢圓是否請求全部或部分的通知,該節(jié)點監(jiān)視算法會或不會按照表1對橢圓發(fā)送通知。能夠使用相似的數(shù)據(jù)結(jié)構(gòu)以及頂和底邊界矩形值來以相似的方式處理垂直維度。本領(lǐng)域的技術(shù)人員還應(yīng)該認識到在需要更精確的通知時,多個邊界矩形能夠用來逼近非矩形的節(jié)點。此外,本發(fā)明設(shè)想能夠通過節(jié)點監(jiān)視算法來跟蹤并處理通過其它維度的運動,例如,第三幾何(深度或比例)維度,以及非幾何維度,例如時間、內(nèi)容定級(成人,PG-13等)以及內(nèi)容類型(戲劇、喜劇等)。根據(jù)使用的維度的個數(shù),該算法更精確地檢測邊界段、矩形和n維超立方體的交叉。除了上面描述的節(jié)點監(jiān)視算法外,本發(fā)明的示例性實施方案提供了能夠在根據(jù)本發(fā)明的示例性實施方案的可縮放的GUI中使用的分辨率一致的語義縮放算法。語義縮放是指根據(jù)組件的放大等級對可縮放的GUI中的組件進行增加、去除或改變組件的細節(jié)。例如,在下面描述的電影瀏覽器界面中,當用戶將鏡頭足夠接近影片的圖像時,該瀏覽器改變以顯示影片元數(shù)據(jù)以及回放控制。該放大等級的計算是基于組件在顯示器設(shè)備中使用的像素個數(shù)的。該可縮放的GUI能夠存儲門限放大等級,該門限放大等級指示將在何時進行切換以例如從沒有影片元數(shù)據(jù)和回放控制的視圖切換至具有影片元數(shù)據(jù)和回放控制的視圖。電視和計算機顯示器具有變化范圍很大的顯示器分辨率。一些監(jiān)視器具有足夠高的分辨率,從而使得可呈現(xiàn)在低分辨率顯示器中的圖片和文本太小以至于完全不可閱讀。這還對于使用語義縮放、尤其是在高分辨率顯示器(例如,HDTV)中的應(yīng)用產(chǎn)生問題。在這種情況下,基于顯示的像素個數(shù)繪制的語義縮放碼在可閱讀更詳細的^L圖前將改變圖像。程序性地修改語義縮放改變組件的門限僅能夠?qū)σ粋€分辨率起到作用。理想的結(jié)果是所有的監(jiān)視器分辨率都進行一致的語義縮放。一種解決方法是在高分辨率的監(jiān)視器中使用較低分辨率的顯示模式,以使得在所有顯示器中的分辨率是一致的。然而,如果語義縮放仍然如期望的那樣進行的話,高分辨率的監(jiān)視器用戶更喜歡以它們最佳的分辨率來繪制圖片。因此,本發(fā)明的示例性實施方案提供了一種支持所述不同分辨率顯示、而不存在前述語義觀看問題的語義縮放技術(shù)。這能夠例如通過在場景內(nèi)建立虛擬顯示器來實現(xiàn)。通過使用內(nèi)嵌的虛擬相機節(jié)點1200和增加邏輯來補償顯示器分辨率從而在圖14中顯示。該虛擬的相機節(jié)點1200定義了尺寸映射到用戶視線距離和監(jiān)視器尺寸的視區(qū)。例如,大的虛擬相機視區(qū)表示用戶要么是非常近地坐在監(jiān)視器前,要么具有足夠大的監(jiān)視器來分辯許多細節(jié)??蛇x地,小的視區(qū)表示用戶遠離監(jiān)視器,并需要大的字體和圖像。該可縮放的GUI編碼能夠是基于在上述虛擬相機中看到的,并使用用戶最佳觀看狀態(tài)的組件的放大等級中的語義縮放轉(zhuǎn)換。附著到顯示器設(shè)備1204的主相機節(jié)點1202具有通過配置以使其顯示虛擬相機1200正在顯示的各種事物的視區(qū)。由于圖示影像和文本在該主相機1202之前沒有映射成像素,所以不會從虛擬相機中發(fā)生質(zhì)量下降。這種結(jié)果是高精確度的監(jiān)視器顯示器顯示高質(zhì)量的圖像,并且不會觸發(fā)使顯示難于閱讀的語義縮放改變。根據(jù)本發(fā)明的示例性實施方案,上述處理實現(xiàn)如下。在場景圖中的各相機和節(jié)點具有相關(guān)的轉(zhuǎn)換矩陣(T,到Tn)。這些矩陣將節(jié)點的局部坐標系統(tǒng)轉(zhuǎn)換至針對顯示器的下一節(jié)點的局部坐標系統(tǒng)。在圖中,^從其視區(qū)將坐標轉(zhuǎn)換到顯示器坐標。同樣,T2將其局部坐標系統(tǒng)轉(zhuǎn)換到相機的視區(qū)。如果葉節(jié)點1206需要在顯示器中繪制一些內(nèi)容,則它計算下面的轉(zhuǎn)換矩陣A=TT2.'Tn該計算能夠在通過場景圖時被執(zhí)行。由于改變組件來支持語義縮》文是基于虛擬相機1200的,所以執(zhí)行下面的計算B=T4TVTn通常可通過詢問監(jiān)視器的分辨率和檢查場景圖而事先確定T\到T3。因此,從A確定B是通過下式對這些矩陣求逆和相乘實現(xiàn)的B=(m)"A對于事先計算T,到T3時存在問題的這種情況,例如,如果圖形API隱藏了附加的轉(zhuǎn)換的話,可將邏輯增加到虛擬相機,從而攔截(intercept)它將用來繪制到顯示器的轉(zhuǎn)換矩陣。這些被攔截的轉(zhuǎn)換矩陣接著被求逆并進行相乘(如上所述),以計算語義縮放門限。根據(jù)本發(fā)明的示例性實施方案的可縮放的界面的一個有利特征是它具有能夠在導(dǎo)航界面時維護上下文的能力。所有的界面組件看來似乎存在于可縮放的世界中,用戶僅需要移動和縮放來達到任意的它們。上述的語義縮放技術(shù)根據(jù)縮放或放大等級改變上述組件的外觀。圖15(a)和15(b)提供了用于組件的語義縮放的實施例,其中該組件的縮小的版本(圖15(a))是圖片,放大版本(圖15(b))包括相同的圖片以及一些控制和細節(jié)。對此更詳細的一些實施例在下面給出。與語義縮放有關(guān)的一個挑戰(zhàn)是在視圖之間會突然發(fā)生改變,以及例如ot混合的轉(zhuǎn)換技術(shù)在兩個上述視圖之間轉(zhuǎn)換時不會在視覺上提供滿意的結(jié)果。因此,本發(fā)明的示例性實施方案在所有的組件視圖中提供一些公用(common)的圖像和文本,以在執(zhí)行語義縮放時對轉(zhuǎn)場效果提供焦點。例如,在圖15(a)和15(b)中,公用元素是圖片。在放大版本和縮小版本之間的轉(zhuǎn)場效果能夠例如使用上述節(jié)點監(jiān)視算法通過以下方式來觸發(fā)。首先,在主相機的視區(qū)從組件的縮小版本轉(zhuǎn)換到放大版本時,用上述節(jié)點監(jiān)視算法執(zhí)行登記以接收事件。接著,在事件發(fā)生時,能夠顯示展示從它們縮小版本位置縮放和轉(zhuǎn)換到它們放大版本位置的公用元素的動畫。同時,相機視區(qū)繼續(xù)推進到上述組件。在瀏覽下面參照圖16-20描述的另一示例性實施方案后,根據(jù)本發(fā)明的圖形用戶界面的這些能力將變得更加顯而易見。在圖16-20中,啟始GUI屏幕1400顯示多個像媒體組一樣操作的組織對象。完全是示例性的家庭影院、影片、TV、體育、收音機、音樂和音樂的媒體組當然能夠包括不同的、更多或更少的媒體組。在通過用戶啟動這些圖標中的一個時,根據(jù)本發(fā)明的該示例性實施方案的GUI將顯示多個圖像,這些多個圖像中的每一個被分組成特殊的類別和種類。例如,如果用戶啟動圖16中的"影片"圖標,則能夠顯示圖17的GUI屏幕。在程序為瀏覽器或郵箱中的任何--種。7、一種瀏覽器運行方法,用于運行瀏覽器,其特征在于,它包含判定可共有的實體是否在給定的存儲器區(qū)域中注冊的注冊判定步驟當判定可共有的實體沒有注冊時,運行作成新的實體的作成步驟;當判定可共有的實體注冊時,運行共有該實體的共有步驟。8、一種郵箱運行方法,用于運行郵箱,其特征在于,包括判定可共有的實體是否在給定的存儲器區(qū)域中被注冊的注冊判定步驟當判定可共有的實體沒有被注冊時,運行作成新的實體的作成步驟;當判定可共有的實體被注冊時,運行共有該實體的共有步驟。9、一種程序,其可在計算機上運行權(quán)利要求18中任何一條所述的方法。.10、一種終端裝置,安裝有插件軟件,其特征在于,具有根據(jù)插件軟件作成的至少一個插件模塊;判定在插件模塊間可共有的實體是否被注冊在給定的存儲器區(qū)域中的注冊判定裝置;當上述注冊判定裝置判定為可共有的實體沒有被注冊時,作成新的實體的實體作成裝置;以及當上述注冊判定裝置判定可共有的實體被注冊時,共有該實體的實體共有裝置。11、如權(quán)利要求10所述的終端裝置,其特征在于,當將解析并作成與插件模塊應(yīng)解析的插件指定文件相同的文件的實體被注冊在該存儲器區(qū)域中時,上述注冊判定裝置判定為可共有該實體。12、如權(quán)利要求10所述的終端裝置,其特征在于,當將解析并作大等級轉(zhuǎn)換到在圖18中的GUI屏幕中使用的更大的放大等級,這導(dǎo)致GUI為顯示于圖18的放大版本中的圖像披露出附加的細節(jié)。該GUI根據(jù)這些細節(jié)在當前被選擇的縮放等級是否很好地被顯示,來選擇性地顯示或隱藏各種縮放等級的細節(jié)。和試圖分辯細節(jié)而不論它們對于肉眼的可視能力如何的相機縮放不同,本發(fā)明的示例性實施方案提供了可配置的縮放等級參數(shù),這些參數(shù)規(guī)定了在何時顯示全部圖^f象和何時顯示具有被扣留細節(jié)的圖像版本之間的轉(zhuǎn)換點。該轉(zhuǎn)換點能夠基于獨立于圖像描述的內(nèi)部分辨率,而不是基于TV/監(jiān)視器212的分辨率。利用這種方式,根據(jù)本發(fā)明的GUI是一致的,而不論在媒體系統(tǒng)中使用的顯示設(shè)備的分辨率是多小。在該示例性實施方案中,能夠通過將游標經(jīng)過特殊圖像之上來提供用于特殊圖像的附加量的放大。這種特征在圖19中顯示,其中,游標在影片"阿波羅13"的圖像上滾動。盡管在圖19中未示出,與圖18中GUI屏幕中處于較低放大等級的相應(yīng)圖像相比,上述附加的放大例如能夠使實現(xiàn)與相關(guān)媒體項的特征封面中的引文"休斯頓,我們遇到了麻煩"變得更加清晰可讀。用戶對于該圖像的選擇,例如通過在輸入設(shè)備上按下按鈕,能夠進一步縮放以顯示圖20中顯示的細節(jié)。這還提供了另一個如前所述的語義縮放的實施例,這是因為在圖19的GUI屏幕中不可見的各種信息和控制元素被顯示在圖20的GUI屏幕中。例如,關(guān)于影片"阿波羅13"的主要包括影片放映時間、價格和演員的信息被顯示。本領(lǐng)域的技術(shù)人員應(yīng)該認識到,其它類型的信息能夠在這里提供。該GUI附加地包括GUI控制對象,GUI控制對例如包括用于購買該影片、觀看電影預(yù)告片或返回到前一GUI屏幕(其還能夠在輸入設(shè)備中按下放大按鈕來實現(xiàn))的按鈕控制對象。還能夠使用超級鏈接來允許用戶例如跳轉(zhuǎn)到與相關(guān)影片(在圖20的GUI屏幕的右下角處標志)關(guān)聯(lián)的GUI屏幕,或與該影片中的演員相關(guān)的信息。在該實施例中,在標題"影片目錄(Filmography)"下的一些或全部電影名能夠?qū)崿F(xiàn)為超級鏈接,在用戶通過輸入設(shè)備啟動時,這些鏈接將使得GUI為被指示的電影顯示與圖20中的GUI屏幕對應(yīng)的GUI屏幕。在用戶啟動超級鏈接時還能夠使用轉(zhuǎn)場效果。由于超級鏈接可以高的放大等級來產(chǎn)生,因此,簡單地跳轉(zhuǎn)到被鏈接的媒體項可使用戶失去他或她對媒體項選擇"映射圖"的跟蹤。相應(yīng)地,本發(fā)明的示例性實施方案提供了轉(zhuǎn)場效果以在啟動超級鏈接時,幫助維持用戶的地理性位置感覺。為此而使用的一個示例性的轉(zhuǎn)場效果是跳躍轉(zhuǎn)換。在該轉(zhuǎn)場效果的初始階段,GUI縮小并以超級鏈接指向的項的方向移動。縮小和移動在目的圖像和原始圖像都被用戶看見之前持續(xù)進行。再次使用圖20的實施例,如果用戶選擇超級鏈接用于"拯救大兵瑞恩",則該超級鏈接的跳躍轉(zhuǎn)場效果的第一階段將包括縮小并朝圖像"拯救大兵瑞恩"移動,直到用于"拯救大兵瑞恩"的圖像和"阿波羅13',對于用戶是可視的位置。在此,該轉(zhuǎn)場效果給用戶帶來以弧形朝向目的圖像向上移動的視覺印象。一旦目標圖像出現(xiàn)在視圖中,轉(zhuǎn)場效果的第二階段給用戶帶來放大和例如以上述弧形的另一半移動到目的圖像的視覺印象。跳躍時間,即顯示第一階段和第二階段的時間量,在任意兩個超級鏈接圖像項之間是可以是固定的。可選地,跳躍時間可以變化,例如基于在GUI上前進的距離。例如,跳躍時間能夠被參數(shù)化為跳躍時間(HopTime)=Alog(放大比例等級/跳躍頂點比例等級)+B(超級鏈接媒體項之間的距離)+C,其中,A、B、和C被合適地選擇為恒定值。上面參照圖9-13(b)描述的節(jié)點監(jiān)視算法還能夠用來幫助在圖19的示例性GUI屏幕和圖20的示例性GUI屏幕中描述的縮放等級之間進行轉(zhuǎn)換。與較低縮放等級的圖像相比,包含文本和/或控制元素(它們在被選擇的圖像的其它縮放等級是看不見的)的GUI屏幕的繪制需要更強的計算和/或存儲。相應(yīng)地,該節(jié)點監(jiān)視算法能夠在本發(fā)明的示例性實施方案中使用,以通過監(jiān)視GUI的導(dǎo)航節(jié)點以更加快速地識別被縮放的媒體項,從而幫助預(yù)先載入GUI屏幕,例如在圖20中顯示的GUI屏幕。被包含在本發(fā)明的示例性實現(xiàn)中的是屏幕位置和基于語義的導(dǎo)航控制。在游標接近用戶位置時,或者游標處于在與屏幕中的這些控制關(guān)聯(lián)的區(qū)域(在其中這些控制是正確的,如圖21所示)中時,這些控制區(qū)域出現(xiàn)。例如,在播放影片時,快進、后退、暫停、停止等這些所謂的技巧(trick)功能在語義上是適當?shù)摹T谠撌纠詫嵤┓桨钢?,被分配以這些功能的屏幕區(qū)域在右下角,并且在游標位于這些區(qū)域附近或位于其中時,用于這些技巧功能的圖標集顯示。這些圖標在被使用的功能明確結(jié)束或在游標重新位于屏幕中的其它位置時消失。還能夠使用同樣的技術(shù)來覆蓋如同文本搜索和室內(nèi)屏幕選擇的其它導(dǎo)航特征。在該示例性的實現(xiàn)中,這些控制在所有的屏幕上是語義相關(guān)的,并且配與它們的區(qū)域位于右上角。在游標位于這些區(qū)域或這些區(qū)域附近時,用于這些導(dǎo)航控制的圖標集顯示。這些圖標在功能被啟動或游標重新位于屏幕的其它位置時消失。應(yīng)該注意到,處于用戶訓(xùn)練的目的,關(guān)聯(lián)的控制圖標可初始可選地暫時顯示(例如5秒)在一些或所有的相關(guān)屏幕中,以將引起不熟練的用戶注意到它們的存在。在提供了根據(jù)本發(fā)明的可縮放的圖形用戶界面的一些實施例后,現(xiàn)在描述^f吏用上述界面的示例性架構(gòu)和結(jié)構(gòu)(infrastructure)。圖22提供了架構(gòu)圖,其中,與各種高級應(yīng)用1900(例如,影片、電視、收音機和體育)關(guān)聯(lián)的可縮放的界面由基元(primitive)1902(在圖中被稱為"原子")扮演。在該示例性實施方案中,基元1902包括定位、點擊、縮放、停懸和滾動,當然本領(lǐng)域的技術(shù)人員應(yīng)該認識到其它的基元也能夠包含在該組中,例如,移動和拖拽。如上所述,定位和點擊基元的操作確定游標的位置,并且在例如用戶啟動手持輸入設(shè)備中的放大或縮小按鈕時觸發(fā)事件。這些基元簡化了導(dǎo)航并去除了用于重復(fù)上、下、左、右按鈕的需要。如上所述,縮放基元用來縱覽可能的選擇,并在用戶縮小他或她的選擇時給予用戶上下文。這種構(gòu)思使該界面能夠按照大量的媒體選擇和任意的顯示大小來規(guī)定。滾動基元處理來自示例性手持輸入設(shè)備中的滾動輪輸入設(shè)備的輸入,并能夠用來例如加速線性菜單導(dǎo)航。停懸按鈕基元動態(tài)地放大指針下面的選擇(和/或改變選擇的內(nèi)容),以使得用戶能夠瀏覽潛在的選擇而無需實際執(zhí)行。能夠以大量不同的方式在根據(jù)本發(fā)明的GUI中啟動前述各個基元的操作。例如,定位、點擊、停懸、停懸和縮放可以與用戶能夠執(zhí)行的不同姿勢關(guān)聯(lián)。這些姿勢能夠經(jīng)由輸入設(shè)備(不管它是否是自由空間指針、跟蹤球、觸摸墊等)被傳遞到系統(tǒng),并被轉(zhuǎn)換成適當基元的啟動。同樣,各個基元能夠與各自的語音命令關(guān)聯(lián)。在寸氐級的基元1902和高級的應(yīng)用1900之間存在各種軟硬件結(jié)構(gòu)1904,它們用來產(chǎn)生與根據(jù)本發(fā)明的可縮放的GUI關(guān)聯(lián)的圖像。如在圖22中看到的那樣,該結(jié)構(gòu)1904能夠包括手持輸入設(shè)備/定位器、應(yīng)用程序接口(API),可縮放的GUI屏幕、開發(fā)工具等。前面的示例性實施方案在本質(zhì)上是完全描述性的。以各等級提供到用戶的縮放等級個數(shù)以及特殊的信息和控制是變化的。本領(lǐng)域的技術(shù)人員應(yīng)該認識到本發(fā)明提供了革命性的技術(shù)用于使用可縮放的界面來呈現(xiàn)大和小組的媒體項,從而使得用戶能夠容易地搜索、瀏覽、組織和回放媒體項,例如影片和音樂。根據(jù)本發(fā)明的圖形用戶界面在虛擬的表面中組織媒體項選擇,從而使得相似的選擇被組合在一起。最開始,該界面?zhèn)魉蜕鲜霰砻娴目s小視圖,并且在大部分情況下,在該等級是看不見實際的選擇的,而僅僅看到它們的組名。隨著用戶逐漸向內(nèi)縮放,顯示關(guān)于媒體項組或選擇的更多細節(jié)。在各個縮放等級可得到不同的控制,從而使得用戶能夠播放選擇的組或單個的選擇、或者到達虛擬面的其它部分以瀏覽其它相關(guān)的媒體項。根據(jù)本發(fā)明的示例性實施方案的縮放圖形用戶界面能夠包含嵌套到任意深度的圖像種類以及種類的種類。媒體項能夠包括局部存儲的內(nèi)容、廣播提供商的廣播、經(jīng)由來自內(nèi)容提供商的直接連接或在對等基礎(chǔ)上接收的信息。媒體項能夠以日程安排的格式提供,其中,日期/時間信息在一些等級的GUI提供。另夕卜,根據(jù)本發(fā)明的示例性實施方案的架構(gòu)和GUI還能夠應(yīng)用到在其中將用于選擇的項出售給用戶的電視商業(yè)中。分布式軟件架構(gòu)有多種方法可開發(fā)可用于生成以上描述的GUI屏幕以及與該系統(tǒng)相關(guān)聯(lián)的其它用戶界面特性的軟件。本發(fā)明的示例性實施方案提供了一種環(huán)境,用于繪制豐富的可縮放的用戶界面(ZUI),同時筒化了實現(xiàn)上的復(fù)雜性并用于維護ZUI。在下文討論根據(jù)本發(fā)明的示例性實施方案的ZUI架構(gòu)中用到術(shù)語"場景"(scene)和"程序塊"(brick)。場景描述導(dǎo)航變化中用戶可用的ZUI組件的集合。程序塊描述被封裝的ZUI組件,例如,與那些用來顯示按鈕(和處理與按鈕相關(guān)聯(lián)的功能)或圖像一樣簡單的軟件包,或更復(fù)雜的諸如用來生成一個或一組景象的軟件包。圖23描述了從場景或程序塊的設(shè)計到場景的繪制或編輯的示例性數(shù)據(jù)流。其中,UI設(shè)計工具2000提供用于構(gòu)建程序塊或場景的可視化編程環(huán)境,下面給出了一個實施例。通常,藝術(shù)家或應(yīng)用程序開發(fā)員使用UI設(shè)計工具2000并保存程序塊2002或場景2004。程序塊2002和場景2004可引入(reference)存儲在程序塊庫2006或多媒體源2008中的常用UI組件,例如點陣工藝圖(例如前文描述的作為可選擇的在用戶界面上顯示的媒體項的影片封面)。在此示例性架構(gòu)中,場景加載器2010(或工具箱后端)讀入場景文件或字節(jié)流,并動態(tài)在任一被引入的程序塊2002或多媒體源2008中鏈接。這樣就構(gòu)造了用于ZSD編譯器2012或本地場景提供者2014的場景圖,/人而用來在例如電視屏幕上生成用戶界面。根據(jù)本發(fā)明的示例性實施方案,程序塊和場景可使用被稱為可縮放矢量圖形(SVG)的編程語言生成。SVG是可擴展標記語言(XML)中被設(shè)計用于描述二維圖形的語言。SVG在W3C推薦標準2003年1月14日公布的"可縮放矢量圖形(SVG)1.1規(guī)約(ScalableVectorGraphic(SVG)1.1Specification)"中詳細說明,該規(guī)約可見http:〃www.w3.org/TR/2003/REC-SVGl1-20030114/,其公開的內(nèi)容通過引用并入本文。其中,SVG用于三種圖形目標矢量圖形(例如由直線和曲線構(gòu)成的路徑)、圖像和文本。圖形目標可分組、分類、變換以及組合成先前繪制的目標。其特征集包括嵌套變換、裁切路徑、透明遮罩(alphamask)、過濾器效應(yīng)和樣板目標。在SVG中可得到的這些特征中的許多都能用于為創(chuàng)建用戶界面而生成程序塊和場景,例如上文描述的那些特征。然而,根據(jù)本發(fā)明示例性的實施方案,已經(jīng)開發(fā)出了SVG語言的擴展,從而提供某些ZUI功能,包括程序塊構(gòu)造。更特別地,場景和程序塊的描述支持使用ECMA腳本語言(JavaScript的標準版本)的腳本。在其它功能中,腳本增加了場景到場景的導(dǎo)航、動畫、數(shù)據(jù)庫查詢、以及對場景和程序塊功能的J某體控制。腳本支持的一個組件是用于獲得上述功能的應(yīng)用程序接口(API)。該API在本文中被稱為ZUI目標模型(ZOM),ZOM的特征在下文描述。根據(jù)本發(fā)明的示例性實施方案,實現(xiàn)ZOM的一方面包括擴展SVG編程語言,以包括在SVG語言中規(guī)定的元素和屬性的擴展,下面給出了與程序塊和場景相關(guān)聯(lián)的功能性的一些實施方案。在此,元素名稱和屬性名稱表示為"zui:name"的形式,以表示對SVG的元素和屬性的擴展。<zui:brick〉"zui:brick"標記將另一ZML/SVG文件插入指定位置的場景。為程序塊創(chuàng)建新的變量環(huán)境,并且允許用戶通過使用"zui:variable"子標記將變量送入場景。根據(jù)本發(fā)明示例性的實施方案的、改良的SVG的特性提供了在可縮放界面中使用的、以其參數(shù)化圖形性質(zhì)為特征的靈活的編程元素,該元素在可縮放用戶界面中可在多個場景中交叉重復(fù)使用(級聯(lián)(cascade))。程序塊實現(xiàn)的詳細實施方案在下文參照圖24至26和相應(yīng)的軟件代碼給出。<table>tableseeoriginaldocumentpage36</column></row><table><table>tableseeoriginaldocumentpage37</column></row><table>表2<zui:brick〉才示i己屬性<zui:scene〉SVG的該擴展用于指定系統(tǒng)應(yīng)安插一個場景作為當前場景的子場景。<table>tableseeoriginaldocumentpage37</column></row><table>表3<zui:scene〉才示i己屬'l"生<zui:scene-swap>SVG的擴展i殳置場景轉(zhuǎn)換過程中的場景交換效果。<table>tableseeoriginaldocumentpage37</column></row><table>Start整數(shù)根據(jù)轉(zhuǎn)換持續(xù)時間的百分比,交換應(yīng)該開始的時間。0為瞬間轉(zhuǎn)換,100為在轉(zhuǎn)換結(jié)束時交換。End整數(shù)根據(jù)轉(zhuǎn)換持續(xù)時間的百分比,交換應(yīng)該結(jié)束的時間。其應(yīng)總是大于等于start。InheritsAlpha數(shù)字串照相機轉(zhuǎn)換應(yīng)從中繼承狀態(tài)的元素的id。如果為空,使用默認值;如果設(shè)置了,則使用在其它元素中設(shè)置的值作為默認值表4<zui:scene-swap〉標識符屬性<zui:variable〉SVG的該擴展將當前范圍中的指定變量設(shè)置為指定值。變量范圍由"zui:scene"和"zui:brick"標記自動創(chuàng)建。屬性可能值描述idAlpha數(shù)字串由工具箱默認指定;用戶定義的值可使JavaScript更清楚。Name字符串待設(shè)置變量的名稱Value可變的待設(shè)置變量的值表5<zui:variable〉才示i己才尋屬'l"生考慮以下參照圖24到26給出的完全說明性的實施方案,可更好地理解前文所述用于提供程序架構(gòu)(該架構(gòu)尤其可在生成例如電視的可縮放用戶界面中使用)的SVG的擴展。圖24描述了與音樂選擇相關(guān)聯(lián)的示例性的用戶界面的第一可縮放顯示層。其中,GUI屏幕顯示六組(音樂架(musicshelf)),其中的每組包括25個按種類劃分的可選音樂項(5x5個音樂封面樣式圖像)。每個組被實現(xiàn)為包含標題懸浮效應(yīng)的程序塊,例如如圖24所示,用戶游標(未示出)位于以"搖滾與流行(Rock&Pop)"命名的組上,這樣相對于顯示在GUI屏幕上的其它五個組,該組的標題和該組的元素^皮略微放大。為生成該GUI3屏幕,與該程序塊相關(guān)聯(lián)的軟件代碼被給予名為"music"的變量,該變量是以標題類型為"搖滾(Rock)"的用戶音樂集的查詢,如下示例性的軟件代碼中突出顯示的部分所示。<formula>formulaseeoriginaldocumentpage39</formula><zui:variableid="var—26"name="music"value="com.hcrest.music.mds:albums(genrescontains'JazzVocal',@sort='title')"/></zui:brick〉<zui:brickheight="306"id="glob—170"transform="matrix(0'660,0.000,0.000,0.669,245,391)"width="562"xlink:href="./brick_shelfsvg"〉<zui:variableid="var—78"name="music"value="com.hcrest.music.mds:albums(genrescontains'International',@sort='title')'7〉</zui:brick〉<zui:brickheight="306"id="glob—169"transform="matrix(0.660,0.000,0.000,0.669,522,391)"width="562"xlink:href="./brick—shelf.svg"><zui:variableid="var_104"name="music"value="com.hcrest.music.mds:albums(genrescontains'Blues',@sort='title1)7〉</zui:brick><zui:brickheight="306"id="glob—168"transform="matrix(0.660,0.000,0.000,—0.669,799,391)"width="262"xlink:href="./brick—shelfsvg"〉<zui:variableid="var—130"name="music"value="com.hcrest.music.indsralbums(genrescontains'Country',@sort='title')"/></zui:brick〉<zui:brickheight="365"id="svg—0"transform="matrix(0.660,0.000,0.000,0.660,799,127)"width:"350"xlink:hre,"./brick—shelf—soundtrackv2.svg"><zui:variableid="var—51"name="music"value="com.hcrest.music.mds:albums(genrescontains'Soundtracks',@sort='title')7〉</zui:brick〉</g><gid="Layer_3"><zui:brickheight="720"id="playlistBrick"transform="matrix(1.000,0.000,0.000,1.000,0,-56)"width="1280"xlink:href="/playlistBrick/playlist—brick.svg"zui:layeF"playlist0verlay"〉<zui.-variableid="var—156"name="playlistGroup"value="'music'"/><zui:variableid="var—157"name="playlistType"value="'music'"/><zui:variableid="var—158"name="cover—art—field"value="'album,image.uri'7><zui:variableid="var—159"name="title—field"value="'title'"/〉<zui:variableid="var—160"name="watch—uri—field"value="'uri'"/></zui:brick><gid="screw_you_button—6_state—andjoe"><gid="new_slideshow"〉<imageheight="67"id="new_slideshow—on"preserveAspectRatio="xMidYMidmeet"transforroF"matrix(0.342,0.000,0.000,1.221,1071,376)"width="257"xlink:href^"/playlistBrick/images/create_playlist—normal—over.png"/〉<imageheight="65"id="new—slideshow一off'preserveAspectRatio="xMidYMidmeet"transform="matrix(0.342,0.000,0.000,1.221,1071,377)"width="257"xlink:href="/playlistBrick/images/create_playlist—normal.png"/></g></g〉<gid="createplaylist"zi:p6Base="createplaylist-off'zi:p6Down="createplaylist-down"zi:p6Label="true"zi:p60ver="createplaylist-over"zi:p6Sel="createplaylist-sel"zi:p6SelDown="createplaylist-sel—down"zi:p6SelOver="createplaylist-sel—over"〉<imageheight="226"id="createplaylist-sel—down"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0.000,0.734,1081,463)"visibility="hidden"width="124"xlink:href="./images/createplaylist-over.png"/><imageheight="226"id="createplaylist-sel—over"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0.000,0.734,1081,463)"visibility="hidden"width="124"xlink:href="./images/createplaylist-over.png7〉<imageheight="226"id="createplaylist-serpreserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0.000,0.734,1081,463)"visibility="hidden"width="124"xlink:hre&"./images/createplaylist-off.png7〉<imageheight="226"id="createplaylist-down"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0.000,0.734,1081,463)"visibility="hidden"width="124"xlink:href="./images/createplaylist-over,png"/><imageheight="226"id="createplaylist-over"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0.000,0.734,1081,463)"visibility="hidden"width="124"xlink:href="./images/createplaylist-over.png"/><imageheight="226"id="createplaylist-off'preserveAspectRatio="xMidYMidmeet"transform="matrix(0.734,0.000,0細,0.734,1081,463)"width="124"xlink:href="./images/createplaylist-off.png"/〉</g></g〉</svg>根據(jù)本發(fā)明示例性的實施方案,每組中的每個元素(封面樣式圖傳-)也作為程序塊#1編碼。因此,如圖25所示,當用戶在"Rock&Pop"組中的25個元素中的一個元素上暫4f游標時,使該元素(本實施方案中為專輯封面"降落傘(Parachute)"的圖^f象)突出顯示。以下示出了用于實現(xiàn)該GUI屏幕的示例性的程序塊代碼。<xmlversion="1.0"encoding="UTF-8"standalone="no"><!DOCTYPEsvgPUBLIC"-〃W3C〃DTDSVG1.1〃EN""http:〃www.w3.0rg/Graphics/SVG/l.1/DTD/svgl1.dtd"〉<svgheight="365"onload="brick—shelf—system一onload(evt)"width="350"xmlns="http:〃www.w3.org/2000/svg"xmlns:xlink="http:〃www.w3.org/1999/xlink"xmlns:zi="http:〃ns.hcrest.com/ZUIIllustratorExtensions/1.0"xmlns:zui="http:〃ns.hcrest.com/ZUIExtensions/1.0">〈scriptlanguage="javascript"xlink:href="./brick—shelf.js"/〉<gid="Layer—1">〈zui:brickheight=,,46"id="svg24"transform="matrix(1.305,0.000,0.000,1.239,277,2卯)"width=,,47,,xIink:href="./albumCoverEffect.svg"><zui:variableid=,,var—0"name="this"value="music[241"/></zui:brick>〈zui:brickheight="46"id="svg23"transform="matrix(1.305,0.000,0.000,1.239,210,290)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var—1"name="this"value="music[23]"/〉</zui:brick>〈zui:brickheight="46"id="svg22"transform="matrix(1.305,0.000,0.000,1.239,144,290)"width="47"xlink:hre£="./albumCoverEffect.svg"><zui:brickheight="46"id="svg21"transform="matrix(1.305,0.000,0.0001.239,77,290)"width="47"xlink:hre£="./albumCoverEffectsvg"><zui:variableid="var—3"name="this"value="music[21]7></zui:brick><zui:brickheight="46"id="svg20"transform="matrix(1.305,0.000,0.000,1.239,11,290)"width="47"xlink:hre£="./albumCoverEffect.svg"〉<zui:variableid="var—4"name="this"value="music[20]"/〉</zui:brick><zui:brickheight="46"id="svgl9"transform="matrix(1.305,0.000,0.000,1.239,278,228)"width="47"xlink:href="./aIbumCoverEffect.svg"><zui:variableid="var_5"name="this"value="music[19]'7></zui:brick〉<zui:brickheight="46"id="svgl8"transform="matrix(1.305,0.000,0.000,1.239,210,228)"widlh="47"xlink:hrei="./albumCoverEffect.svg"><zui:variableid="var—6"name="this"value="music[18]7></zui:brick〉<zui:brickheight="46"id="svgl7"transform="matrix(1.305,0.000,0.000,1.239,144,228)"width="47"xlink:href="./albumCoverEffect.svg"〉<zui:variableid="var—7"name="this"value="music[17J"/〉</zui:brick〉〈zui:brickheight="46"id="svgl6"transform="matrix(1.305,0.000,0.000,1.239,77,228)"width="47"xlink:hrel="./aIbumCoverEffect.svg"〉<zui:variableid="var—8"name="this"value="music[16]7></zui:brick><zui:brickheight="46"id="svgl5"transform="matrix(1.305,0.000,0.000,1.239,11,228)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var—9"name="this"value="music[15]7></zui:brick〉〈zui:brickheight="46"id="svgl4"transform="matrix(1.305,0.000,0.000,1.239,278,165)"width="47"xlink:href="./albumCoverEffect.svg"〉<zui:variableid="var_10"name="this"value="music[14]"/〉</zui:brick><zui:brickheight="46"id="svgl3"transform="matrix(1.305,0.000,0.000,1.239,210,165)"width="47"xlink:hreP="./albumCoverEffect.svg"><zui:variableid="var—l1"name="this"value="music[13]"/〉</zui:brick〉<zui:brickheight="46"id="svgl2"transform="matrix(1.305,0.000,0.000,1.239,144,165)"width="47"xlink:href="./albumCoverEffect.svg"〉<zui:variableid="var—12"name="this"value="music[12]7></zui:brick><zui:brickheight="46"id="svgl1"transform="matrix(1.305,0扁,0扁1.239,77,165)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var—13"name="this"value="music[ll]"/></zui:brick>〈zui:brickheight="46"id="svgW"transform="matrix(1.305,0.000,0.000,1.239,11,165)"wi她-"47"xlink:hreF="./albumCoverEffect.svg"><zui:variableid="var14"name="this"value="musicri01"/></zui:brick>〈zui:brickheight="46"id="svg9"transform="matrix(1.305,0.000,0.000:1.239,278,101)"width="47"xlink:href="./albumCoverEffect.svg"〉<zui:variableid="var—15"natne="this"value="music[9]7></zui:brick〉〈zui:brickheight="46"id="svg8"transform="matrix(1.305,0.000,0.000,1.239,210,101)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var_16"name="this"value="music[8]"/〉</zui:brick><zui:brickheight="46"id="svg7"transform="matrix(1.305,0.000,0.000,1.239,144,101)"width="47"x[ink:href="./albumCoverEffect.svg"〉<zui:variableid="var—17"name="this"value="music[7]7></zui:brick〉〈zui:brickheight="46"id="svg6"transform="matrix(1.305,0.000,0.000,1.239,77,101)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var_18"name="this"value="music[6]7〉</zui:brick〉0.000,1.239,11,101》'width="47"<zui:brickheight="46"id="svg4"transform="matrix(1.305,0.000,0.000:1.239,278,36)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var—20"name="this"value="music[4]7〉</zui:brick><zui:brickheight="46"id="svg3"transform="matrix(1.305,0.000,0.000.1.239,210,36)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var—21"name="this"value="music[3]7〉</zui:brick>〈zui:brickheight="46"id="svg2"transform="matrix(1.305,0.000,0.000,1.239,144,36)"width="47"xlink:hreP="./albumCoverEfFect.svg"><zui:variableid="var_22"name="this"value="music[2]7></zui:brick〉<zui:brickheight="46"id="svgl"transform="matrix(1.305,0.000,0.0001.239,77,36)"width="47"xIink:href="./albumCoverEffect.svg"><zui:variableid="var_23"name="this"vaIue="music[l]"/></zui:brick><zui:brickheight="46"id="svg『transform="matrix(1.305,0.000,0.000,1.239,11,36)"width="47"xlink:href="./albumCoverEffect.svg"><zui:variableid="var_24"name="this"value="music7〉</zui:brick〉<gid="more"visibility="hidden"zi:p6Base="more-offzi:p6Down="more-down"zi:p6Labd="true"zi:p60vCT="more-over"zi:p6Sel="more-sel"zi:p6SelDown="more-seI—down"zi:p6SelOver="more-sel—over"〉<imageheight="84"id="more-sel—down"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.274,0:000,0.000,0.274,281,9)"visibility="hidden"width="213"xlink:href="../movielink/images/homescreen/more-over.png7〉<imageheight="84"id="more-sel—over"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.274,0:000,0.000,0.274,281,9)"visibility="hidden"width="213"xlink:href="../movielink/images/homescreen/more-over.png7〉<imageheight="84"id="more-sel"preserveAspectRatio="xMidYMidmeet"transform-'matrix(0.274,0.000,0.000,0.274,281,9)"visibility="hidden"width="213"xlink:href="../movielink/images/homescreen/more-off.png"/〉<imageheight="84"id="more-down"preserveAspectRatio-'xMidYMidmeet"transform="matrix(0.274,0扁,O扁,0.274,281,9)"visibility="hidden"width="213"xlink:href="../movielink/images/homescreen/more-over.png7〉<imageheight="84"id="more-over"preserveAspectRatio="xMidYMidmeet"transform="matrix(0.274,0.000,0.000,0.274,281,9)"visibility="hidden"width="213"xlhik:href'=".,/movielink/images/homescreen/more-over.png"/〉<imageheight="84"id="more-off'preserveAspectRatio-'xMidYMidmeet"transform="matrix(0,274,0.000,0.000,0.274,281,9)"width="213"xlink:href="../movielink/images/homescreen/more-off.png"/〉</g〉<zui:text-rectiill="#ffffff'font-family="HelveticaNeueLT67MediumCondensed"font-size="24"height="23"id="genre"pointer-events="none"width="235"x="10"y="9"zui:metadata="music.genres"zui:text-allcaps="originarzui3text-justification-'left"><![CDATA[Genre]]〉</zui:text-rect><viewid="top"viewBox="(-71,-30,493,302)"zui:transition="hcrest—view7〉<aid="top—bounds"xHnk:href="#top"〉<rectheight="302"id="toprect—1"width="493"x="-71"y="-307></a><viewid="bottom"viewBox="(-71,97,493,302)"zui:transition="hcresl—view"/><aid="bpttom—bounds"xlink:href="#bottom">—<rectheight="302"id="bottom—rect—l"width="493"x="-71"y="977〉</a><rectheight="188"id="autopan—up"stroke="#ffOOOO"visibility="hidden"width="399"x="-24"y="-237〉<rectheight="167"id="autopan—down"stroke="#OOffOO"visibility="hidden"width="399"x="-24"y=^2227></g><zui:sceneheight="48"id="trans—xx—25"width="47"x="8"xlink:href="music—detail.svg"y="37"/><zui:sceneheight="48"id="trans_x.x—26"width="47"x="8"xlink:href="music—detail.svg"y="37"/><zui:sceneheight="48"id="trans—xx—27"widtli="47"x:"8"xlink:href="music—detail.svg"y="377〉<zui:sceneheight="48"id="trans_xx—28";idth="47"x="8"xlink:href="music—detail.svg"y="377><zui:sceneheight="48"id="trans—xx—29"\vidth="47"x="8"xlink:href="music—detail.svg"y="377〉〈zui:sceneheight="48"id="trans—xx—30"^idth="47"x="8"xlink:href="music_detail.svg"y="37"/><zui:sceneheight="48"id="trans—xx—31"width="47"x="8"xlink:href="music—detail.svg"y="377〉<zui:sceneheight="48"id="trans—xx—32"width="47"x="8"xlink:href="music_detail.svg"y="377><zui:sceneheight="48"id-'trans—xx—33"width="47"x="8"y="377〉<zui:sceneheight="48"id="trans—xx—34"width="47"x="8"xlink:hrd="music_detail.svg"y="377><zui:sceneheight="48"id="trans_xx—35"_width="47"x="8"xlink:href="music—detail.svg"y="377>〈zui:sceneheight="48"id="trans—xx—36"width="47"x="8"xlink:href="music_detail.svg"y="377><zui:sceneheight="48"id="trans—xx—37"^idth="47"x="8"xlink:href="music_detail.svg"y="377><zui:sceneheight="48"id="trans—xx—38"width="47";"8"xlink:href="music—detail.svg"y="377><zui:sceneheight="48"id="trans—xx—39"width="47"x="8"xlink:href="music—detail.svg"y="377></svg>需要注意上述實施例中加粗的代碼涉及在父類SVG程序塊(music—shelf.svg)中設(shè)置的、變量音樂中的第25個元素。之前的音樂查詢返回25個元素。然后利用名為"this"的變量,該音樂元素(本實施例中為專輯)被傳遞給名為"albumCoverEffect.svg"的子程序塊中。根據(jù)本發(fā)明示例性的實施方案,如上兩個代碼片斷,以及圖24和25中對應(yīng)的GUI屏幕,用來說明與可重復(fù)使用的SVG擴展相關(guān)聯(lián)的兩個有益特性,其本文中被描述用于生成可縮放的圖形用戶界面。首先,SVG程序塊提供程序架構(gòu)以提供從GUI屏幕到GUI屏幕(場景到場景)可重復(fù)使用的代碼。在這種環(huán)境中,重復(fù)使用用于生成圖24的GUI屏幕的程序塊代碼生成圖25的GUI屏幕。此外,程序塊在它們生成的圖形顯示內(nèi)容的至少一些是由元數(shù)據(jù)畫出的意義上被參數(shù)化,這些元數(shù)據(jù)可隨時間改變。這意味著,相同的程序代碼可用來產(chǎn)生多個用戶界面以供選擇例如點播的電影,隨著影片隨時間的改變,在根據(jù)本發(fā)明的任意給定縮放等級的用戶界面上描繪的界面內(nèi)容也相應(yīng)地隨時間改變。程序塊代碼自身可利用例如可視化編程界面生成,圖26示出了一個正在對元素2600(專輯封面圖像)編碼的實施例。與該工具箱功能相關(guān)聯(lián)的示例性代碼如下給出。<xmlversion="1.0"encoding="UTF-8"standalone="no"〉<!DOCTYPEsvgPUBLIC'V/W3C//DTDSVG1.1〃EN""http:〃麗w.w3.org/Graphics/SVG/l.l/DTD/svgll.dtd"><svgheight="46"onload="albumCoverEffect—system—onload(evt)"width="47"xmlns="http:〃www.w3.org/2000/svg"xmlns:xlink="http:〃www.w3.org/1999/xlink"xmlns:zi="http://ns.hcrest.com/ZUIIllustratorExtensions/1.0"xmlns:zui="http:〃ns.hcrest.com/ZUIExtensions/1.0"〉<scriptlanguage="javascript"xlink:href="./albumCoverEffeet.js7〉<gid="layer"〉<aid="anchor—0"xlink:href="zuichild:trans一0"〉<gid="cover"><imageheight="150.00"id="image"preserveAspecrtRatio-"xMidYMidmeet"transform="matrix(0.313,0.000,0.000,0.307,0.000,-0.050)"width="150.00"xlink:href="../placeholders/cdcover.png"zui:metadata="this.image.uri"/><gid="title,,><formula>formulaseeoriginaldocumentpage48</formula>}}〃@Toolkit-end(pseudo-tagforToolkit-generatedcode)〃以上軟件代碼實施方案中的加粗部分中,具有名為"cover"的元素。該封面元素是與待由該程序塊在GUI屏幕的特殊位置上描繪的專輯封面相關(guān)聯(lián)的圖像元數(shù)據(jù)。還要注意其中表述為"zui:metadata='this.image.uri"'的程序行。這一程序行是在第一代碼實施例(父類SVG)中作為所感興趣的專輯而建立的,即該專輯被傳遞給該程序塊,并且相關(guān)聯(lián)的封面樣式被該變量引入。以上示例性的實施方案將使用環(huán)境中的程序塊描述為,基于SVG程序語言擴展的用戶界面構(gòu)建塊,而程序塊可更一般地作為利于分布式軟件設(shè)計的系統(tǒng)構(gòu)建塊使用。例如考慮圖27描述的系統(tǒng)。其中,軟件系統(tǒng)2700提供了用于元數(shù)據(jù)2702(例如與影片、購物、音樂等相關(guān)聯(lián)的數(shù)據(jù))與終端用戶設(shè)備例如電視機2704和遙控設(shè)備2706之間的控制和交互作用的、完整的內(nèi)容傳遞架構(gòu)。更一般地,元數(shù)據(jù)是關(guān)于特殊數(shù)據(jù)集的信息,該數(shù)據(jù)集可描述例如其它數(shù)據(jù)如何、何時、由誰接收、創(chuàng)建、訪問和/或修改,以及如何安排其它數(shù)據(jù)的格式,以及其它數(shù)據(jù)的內(nèi)容、質(zhì)量、條件、歷史記錄和其它特性中的一個或多個。基于預(yù)先定義的程序塊模型,程序塊由程序塊引擎創(chuàng)建為可重復(fù)使用的軟件構(gòu)造,在圖27的示例性系統(tǒng)中,該構(gòu)造體現(xiàn)為適用于與系統(tǒng)相關(guān)聯(lián)的特殊應(yīng)用的架構(gòu)層之上的全部相關(guān)邏輯。為使該邏輯模塊化,可開發(fā)不同層的程序塊,例如應(yīng)用程序?qū)?、小?yīng)用程序?qū)?、語義層和基本層的程序塊,如圖28所示。這些不同類型程序塊中的每一個都將同一些實施方案一起更詳細地描述。最高層是應(yīng)用程序程序塊。在圖27所示的系統(tǒng)實施例中,應(yīng)用程序與元數(shù)據(jù)類型相對應(yīng),例如音樂應(yīng)用程序用于將音樂傳送給終端用戶,電影應(yīng)用程序用于將點播的電影傳送給終端用戶等等。應(yīng)用程序電影程序塊提供了允許用戶瀏覽/搜索/查找電影元數(shù)據(jù)的入口層次,以起到描述終端用戶和電影元數(shù)據(jù)之間的完整交互的迷你(mini)應(yīng)用程序的作用。相似地,電影應(yīng)用程序塊描述了終端用戶和電影元數(shù)據(jù)之間的完整交互。因此,應(yīng)用程序程序塊實質(zhì)上定義了用于圖27所示的示例性系統(tǒng)的、與特殊元數(shù)據(jù)類型相關(guān)聯(lián)的分布式類,并提供了用于識別和區(qū)分相應(yīng)源元數(shù)據(jù)2702的具體才幾制。一旦應(yīng)用程序程序塊被生成,通過創(chuàng)建該應(yīng)用程序程序塊的單獨實例(通過傳遞新的參數(shù)而定制)可重復(fù)使用該應(yīng)用程序程序塊。例如,當電影應(yīng)用程序塊被創(chuàng)建,并在為應(yīng)CinemaNow的點播而提供的電影進行元數(shù)據(jù)分析、用戶界面的生成、以及用戶請求(在其它事情之中)之后,通過將不同的參數(shù)傳遞給該程序塊的另一實例,該程序塊的另一實例可處理其它提供者(如Movielink)提供的電影。因此應(yīng)用程序可看作一種充分操縱頂層元數(shù)據(jù)分類的、自含式的、系統(tǒng)范圍內(nèi)的構(gòu)造。圖16描述的不同功能的圖符中的每一個都可與一種不同的應(yīng)用程序程序塊相關(guān)聯(lián)。在圖28的層中降低一層,應(yīng)用程序程序塊由幾個小應(yīng)用程序程序塊組成。小應(yīng)用程序程序塊是一種充分操縱第二層元數(shù)據(jù)類或充分表示元數(shù)據(jù)特殊功能的、自含式的、系統(tǒng)范圍內(nèi)的構(gòu)造。在這種環(huán)境中,第二層元數(shù)據(jù)指可用于高層元數(shù)據(jù)域內(nèi)的元數(shù)據(jù)類型,例如電影的高層元數(shù)據(jù),第二層元數(shù)據(jù)可包括電影片名、明星、片長等。元數(shù)據(jù)特殊功能指與特殊的高層元數(shù)據(jù)綁定的功能,例如瀏覽/播放電影或瀏覽商品元數(shù)據(jù)/將商品元數(shù)據(jù)放入購物車。例如,布滿與特殊應(yīng)用相關(guān)聯(lián)的書架(bookshelf)的導(dǎo)航屏幕可使用書架導(dǎo)航小應(yīng)用程序程序塊定義。該導(dǎo)航小應(yīng)用程序程序塊映射以適合其更高層應(yīng)用程序程序塊的方式而組織的全部相關(guān)元數(shù)據(jù)。例如,由特殊電影提供者提供的全部內(nèi)容可根據(jù)在電影導(dǎo)航小應(yīng)用程序程序塊中定義的可用的元數(shù)據(jù)而描述為書架的布置。相同的電影導(dǎo)航小應(yīng)用程序程序塊的另一實例可用于為不同電影提供者提供的內(nèi)容生成相似的用戶界面屏幕,并處理交互。小應(yīng)用程序程序塊提供相關(guān)元數(shù)據(jù)(如之前由應(yīng)用程序程序塊組織的元數(shù)據(jù))與用戶界面的場景布置之間的鏈接,以控制界面的各個方面,例如書架的尺寸規(guī)格、封面樣式的尺寸規(guī)格等。小應(yīng)用程序程序塊還能控制用戶和系統(tǒng)之間在該層的功能性交互,例如書架對暫停在其顯示區(qū)域上的游標作出反應(yīng)的方式(見如圖24)。每一個小應(yīng)用程序程序塊可由幾個語義程序塊組成,語義程序塊趨向于作為充分封裝了與系統(tǒng)相關(guān)聯(lián)的特殊語義交互的、自含式的、系統(tǒng)范圍內(nèi)的構(gòu)造而操作。例如,盡管小應(yīng)用程序程序塊可與特殊的元數(shù)據(jù)本體(ontology)相關(guān)聯(lián),例如圖24所示的導(dǎo)航書架用戶界面屏幕,然而語義程序塊也可與特殊的書架相關(guān)聯(lián),例如圖25所示。因此語義程序塊可包括項(例如封面樣式圖像)的大小的詳細描述、封面樣式的詳細描述、語義懸浮的詳細描述(例如當用戶將游標在特殊封面樣式圖像上暫停以生成如圖25所示結(jié)果時,如何生成懸浮放大)、標題的詳細描述等??紤]語義程序塊的如下實施方案。具體地,考慮由程序塊引擎示例-說明的、用以顯示關(guān)于特殊的人(例如可使用界面選擇的電影中的演員)的信息的語義程序塊。該語義程序塊將以下信息顯示給系統(tǒng)中的用戶姓名、出生日期、簡短傳記和相關(guān)工作,例如屬于該語義程序塊中的屬性的、他或她主演的電影。該傳記還包括可滾動的文本框(其可利用圖28所示的最低層的基本程序塊創(chuàng)建)。語義程序塊可重復(fù)用于所有的支持上述屬性的普通元數(shù)據(jù)類型。還要注意到,語義程序塊可示出相關(guān)工作的縮略圖。然而,語義塊還可進一步定義可預(yù)先緩存與每種縮略圖相關(guān)聯(lián)的、在用戶點擊縮略圖進入該視圖時的更大的圖像的功能,這樣減少了達到場景的等待時間。這可視為與面向?qū)ο?OO)類相類似,因為根據(jù)創(chuàng)建者是音樂家、樂團、演員、導(dǎo)演或演員,類"person"具有不同的實例。然而語義程序塊可僅需示出相關(guān)工作的封面樣式,則支持姓名、出生日期、簡短傳記和封面樣式的所有類型的普通元數(shù)據(jù)都可重復(fù)使用該程序塊。在存在相關(guān)工作但不能得到代表該工作的封面樣式的情況下,該程序庫在被調(diào)用時構(gòu)造而替代地在用戶界面上顯示占位符圖像。事實上,根據(jù)元數(shù)據(jù)類型(例如看起來像是電影盤或書),可使用不同類型的占位符圖像。這說明了程序塊處理錯誤的能力。如上所述,基本程序塊是表示基本交互作用的、自含式的、系統(tǒng)范圍內(nèi)的構(gòu)造?;境绦驂K的實施方案有文本框、按鈕、圖片、滾動條等。上述示例性的實施方案在所有方面趨于是用來描述而不是限制本發(fā)明。因此,本發(fā)明能夠在具體的實現(xiàn)中具有許多變種,本領(lǐng)域的技術(shù)人員能夠通過包含在本文中的描述得到這些變種。所有的這些變種和修改被看作是落入本發(fā)明在下面權(quán)利要求中定義的范圍和精神內(nèi)。除非是明確說明,否則在本申請的說明書中使用的元素、動作或指令不能解釋為對本發(fā)明是關(guān)鍵或必要的。而且,如在本文中使用的那樣,冠詞"一(a)"的意圖包括了一個或多個。權(quán)利要求1.一種用于在圖形用戶界面上顯示信息的方法,包括以下步驟以第一放大等級顯示第一多個圖像;接收識別所述多個圖像的子集的第一選擇指示;以及以第二放大等級顯示所述多個圖像的所述被選子集的第一縮放版本,其中,所述第一和第二顯示步驟都通過執(zhí)行至少一個可重復(fù)使用的軟件代碼塊實現(xiàn)。2.如權(quán)利要求l所述的方法,其中,所述至少一個可重復(fù)使用的軟件代碼塊用可縮放矢量圖形(SVG)語言編寫。3.如權(quán)利要求2所述的方法,其中,用于生成所述至少一個可重復(fù)使用的軟件代碼塊的所述SVG語言被修改以包括程序塊構(gòu)造,所述程序塊構(gòu)造具有以下屬性標識(id)值、規(guī)定像素中相應(yīng)節(jié)點的寬度的寬度值、規(guī)定像素中相應(yīng)節(jié)點的高度的高度值、轉(zhuǎn)變值、定位器事件值、可見性屬性、以及對作為程序塊加載的SVG文件的URL。4.如權(quán)利要求l所述的方法,其中,所述至少一個可重復(fù)使用的軟件代碼塊用于繪制包括作為所述第一多個圖像的多個可選項的架。5.如權(quán)利要求4所述的方法,其中,利用作為參數(shù)傳遞給所述至少一個可重復(fù)使用的軟件代碼塊的圖像數(shù)據(jù)在所述用戶界面上繪制所述第一多個圖像。6.如權(quán)利要求5所述的方法,其中,所述參數(shù)是與電影和音樂之一相關(guān)聯(lián)的元數(shù)據(jù)。7.—種用于構(gòu)造與元數(shù)據(jù)處理系統(tǒng)相關(guān)聯(lián)的分布式軟件的方法,所述方法包括以下步驟提供多個第一類型的系統(tǒng)范圍軟件構(gòu)造,其每一個定義用戶與各自的高層元數(shù)據(jù)類型的交互;以及提供至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造,其中所述多個第一類型的系統(tǒng)范圍軟件構(gòu)造中的每一個包括一個或多個所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造。8.如權(quán)利要求7所述的方法,其中,所述至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造定義與第二層元數(shù)據(jù)類型的系統(tǒng)交互、或定義元數(shù)據(jù)特殊功能。9.如權(quán)利要求7所述的方法,其中,所述高層元數(shù)據(jù)類型是電影,且所述第二層元數(shù)據(jù)類型包括電影片名和電影明星的姓名。10.如權(quán)利要求7所述的方法,其中,所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造是利用形式修改的可縮放矢量圖形(SVG)語言構(gòu)造的程序塊。11.一種具有分布式軟件構(gòu)造的元數(shù)據(jù)處理系統(tǒng),包括元數(shù)據(jù)供應(yīng)源,用于為所述元數(shù)據(jù)處理系統(tǒng)提供各種類型的元數(shù)據(jù);多個第一類型的系統(tǒng)范圍軟件構(gòu)造,其每一個定義用戶與各自的高層元數(shù)據(jù)類型的交互;以及至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造,其中所述多個第一類型的系統(tǒng)范圍軟件構(gòu)造中的每一個包括一個或多個所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造。12.如權(quán)利要求11所述的元數(shù)據(jù)處理系統(tǒng),其中,所述至少一個第二類型的低層系統(tǒng)范圍軟件構(gòu)造定義與第二層元數(shù)據(jù)類型的系統(tǒng)交互、或定義元數(shù)據(jù)特殊功能。13.如權(quán)利要求11所述的元數(shù)據(jù)處理系統(tǒng),其中,所述高層元數(shù)據(jù)類型是電影,且第二層元數(shù)據(jù)類型包括電影片名和電影明星的姓名。14.如權(quán)利要求11所述的元數(shù)據(jù)處理系統(tǒng),其中,所述第二類型的低層系統(tǒng)范圍軟件構(gòu)造是利用形式修改的可縮放矢量圖形(SVG)語言構(gòu)造的程序塊。全文摘要根據(jù)本發(fā)明的系統(tǒng)和方法提供了可用于創(chuàng)建可縮放用戶界面的軟件結(jié)構(gòu)(程序塊)。提供圖形顯示器的參數(shù)化變量的程序塊可重復(fù)使用并聯(lián)結(jié)用戶界面上的不同場景。文檔編號H04N5/445GK101233504SQ200680001581公開日2008年7月30日申請日期2006年1月5日優(yōu)先權(quán)日2005年1月5日發(fā)明者丹尼爾·S·辛普金斯,凱文·康羅伊,尼爾·戈亞爾,弗蘭克·A·亨萊特,戴夫·奧夫德海德,斯蒂芬·沙伊雷,查爾斯·W·K·格里東申請人:希爾克瑞斯特實驗室公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1