對象堆棧的製作方法
2023-10-17 21:31:04 1
對象堆棧的製作方法
【專利摘要】對應於系統對象的堆棧元素與堆棧項目關聯並聚集在該堆棧項目中。上下文引擎提供對堆棧項目和堆棧元素的上下文控制。
【專利說明】對象堆棧
[0001]本申請是申請號為200880102053.7、申請日為2008年5月30日、發明名稱為「對象堆棧」的申請的分案申請。
【背景技術】
[0002]圖形用戶界面允許大量的圖形對象或項目同時顯示在顯示屏上。主要的個人計算機作業系統,例如Apple Mac 0JS?,提供了其中可以根據用戶的需要顯示系統對象的多個圖形表示的用戶界面。系統對象實例包括系統功能、報警、窗口、外圍設備、文件和應用程式。任務條、菜單、虛擬按鈕、滑鼠、鍵盤及其它用戶接口元件提供了用於訪問和/或激活與所顯示的表示相對應的系統對象的機制。
[0003]然而,圖形對象及對相應系統對象和相關功能的訪問應當以便於直觀的用戶體驗的方式給出。表示具體、熟悉想法的比喻的使用方便了這種直觀的用戶體驗。例如,文件夾的比喻可以用於存儲文檔;文件櫃的比喻可以用於在硬碟上存儲信息;而桌面的比喻可以用於作業系統界面。
[0004]然而,隨著處理設備能力的發展,還需要以直觀方式向用戶傳遞信息的圖形用戶界面。
【發明內容】
[0005]在此公開了用於圖形用戶界面對象堆棧的系統、裝置和方法。在一種實現中,圖形用戶界面包括多個堆棧元素,每個堆棧元素對應於一個應用程式。堆棧元素包括與應用程式文檔文件關聯的文件元素和與可執行應用程式關聯的應用程式元素。一個堆棧項目與多個堆棧元素關聯。堆棧項目包括堆棧元素的聚集,其中應用程式元素是突出放置的。
[0006]在另一種實現中,生成多個堆棧元素,每個堆棧元素對應於一個計算機系統對象。所述多個堆棧元素與一個堆棧項目關聯,且堆棧元素聚集到該堆棧項目中。提供了對堆棧項目的上下文控制。
[0007]在另一種實現中,計算機可讀介質存儲可以由處理設備執行的指令,而且所述指令在執行時將使處理設備在顯示設備上生成圖形用戶界面。圖形用戶界面包括多個堆棧元素,每個堆棧元素對應於一個系統對象,且一個堆棧項目與多個堆棧元素關聯。堆棧項目包括堆棧元素的聚集。指令還包括當被處理設備執行時提供對堆棧項目的上下文控制的上下文引擎。
【專利附圖】
【附圖說明】
[0008]圖1是可以用於實現在此描述的系統和方法的示例系統的框圖。
[0009]圖2是示例用戶界面體系結構的框圖。
[0010]圖3是示例可視化對象容器(receptacle)的圖像。
[0011]圖4是示例堆棧項目的圖像。
[0012]圖5是示例用戶界面引擎體系結構的框圖。
[0013]圖6是可以用於實現在此描述的系統和方法的示例系統層結構的框圖。
[0014]圖7是示例多維桌面環境的框圖。
[0015]圖8是示例多維桌面環境的另一框圖。
[0016]圖9是示例多維桌面環境的另一框圖。
[0017]圖10是示例多維桌面環境的另一框圖。
[0018]圖11是另一示例多維桌面環境的框圖。
[0019]圖12是另一示例多維桌面環境的框圖。
[0020]圖13是另一示例多維桌面環境的框圖。
[0021]圖14是另一示例多維桌面環境的框圖。
[0022]圖15是另一示例多維桌面環境的框圖。
[0023]圖16A-D是其它示例多維桌面環境的框圖。
[0024]圖17是示例桌面轉換的框圖。
[0025]圖18A-18D是示例可視化對象容器指示器的框圖。
[0026]圖19A和19B是用於可視化對象容器的示例上下文菜單的框圖。
[0027]圖20是包括類型在前(type-ahead)指示的示例可視化對象容器的框圖。
[0028]圖2IA和2IB是用於可視化模型的示例選擇指示符的框圖。
[0029]圖22是另一示例多維桌面環境的框圖。
[0030]圖23是另一示例可視化對象容器的框圖。
[0031]圖24是示例堆棧項目的框圖。
[0032]圖25是另一示例堆棧項目的框圖。
[0033]圖26是另一示例堆棧項目的框圖。
[0034]圖27是另一示例堆棧項目的框圖。
[0035]圖28A和28B是色彩編碼的示例堆棧項目的框圖。
[0036]圖29是例示應用到示例堆棧項目的示例上下文控制策略的框圖。
[0037]圖30是例示示例可視化模型對示例堆棧項目的應用的框圖。
[0038]圖31A和31B是例示另一示例可視化模型對示例堆棧項目的應用的框圖。
[0039]圖32是例示另一示例可視化模型對示例堆棧項目的應用的框圖。
[0040]圖33A是示例堆棧項目的示例組關聯的框圖。
[0041]圖33B是系統對象的示例組關聯的框圖。
[0042]圖34是用於轉換桌面的示例處理的流程圖。
[0043]圖35是用於在桌面類型之間轉換的另一示例處理的流程圖。
[0044]圖36是用於生成多維桌面環境的示例處理的流程圖。
[0045]圖37是用於在多維桌面環境中展現(render)側表面的示例處理的流程圖。
[0046]圖38是用於在多維桌面環境中滾動側表面的示例處理的流程圖。
[0047]圖39是用於生成選擇指示符的示例處理的流程圖。
[0048]圖40是用於?宣染桌面項目的不例處理的流程圖。
[0049]圖41是用於在多維桌面環境中生成示例應用環境的示例處理的流程圖。
[0050]圖42是用於在應用環境之間轉換的示例處理的流程圖。
[0051]圖43是用於生成可視化對象容器的示例處理的流程圖。
[0052]圖44是用於色彩編碼可視化對象的示例處理的流程圖。
[0053]圖45是用於色彩編碼相關系統對象的可視化對象的示例處理的流程圖。
[0054]圖46是用於生成可視化對象容器的另一示例處理的流程圖。
[0055]圖47是用於生成堆棧項目的示例處理的流程圖。
[0056]圖48是用於根據模態顯示堆棧元素的示例處理的流程圖。
[0057]圖49是用於選擇交互模型和/或可視化模型的示例處理的流程圖。
[0058]圖50是用於生成堆棧項目的另一示例處理的流程圖。
[0059]圖51是用於根據執行上下文顯示堆棧項目的示例處理的流程圖。
[0060]圖52是用於生成和顯示堆棧項目的示例處理的流程圖。
[0061]圖53是用於自動地選擇交互模型並將交互模型應用到堆棧項目的示例處理的流程圖。
[0062]圖54是用於自動地選擇交互模型並將交互模型應用到堆棧項目的另一示例處理的流程圖。
[0063]圖55是用於自動地選擇交互模型並將交互模型應用到堆棧項目的另一示例處理的流程圖。
[0064]圖56是用於自動地選擇交互模型並將交互模型應用到堆棧項目的另一示例處理的流程圖。
[0065]圖57是用於生成尾標(divet)的示例處理的流程圖。
[0066]圖58是用於生成尾標上下文菜單的示例處理的流程圖。
【具體實施方式】
[0067]圖1是可以用於實現在此描述的系統和方法的示例系統100的框圖。系統100例如可以在計算機設備(例如,可以從Apple公司獲得的任何一款個人計算機設備,或者其它電子設備)上實現。其它示例實現還可以包括視頻處理設備、多媒體處理設備、可攜式計算設備、可攜式通信設備、機頂盒及其它電子設備。
[0068]示例系統100包括處理設備102、第一數據存儲器104、第二數據存儲器106、圖形設備108、輸入設備110、輸出設備112及網絡設備114。諸如數據總線和母板的總線系統116可以用於建立並控制部件102、104、106、108、110、112和114之間的數據通信。然而,也可以使用其它的示例系統體系結構。
[0069]處理設備102例如可以包括一個或多個微處理器。第一數據存儲器104例如可以包括隨機訪問存儲器存儲設備(例如,動態隨機訪問存儲器)或者其它類型的計算機可讀介質存儲器設備。第二數據存儲器106例如可以包括一個或多個硬碟驅動器、閃速存儲器和/或只讀存儲器,或者其它類型的計算機可讀介質存儲器設備。
[0070]圖形設備108例如可以包括視頻卡、圖形加速卡或者顯示適配器,並且配置為生成圖像並將其輸出到顯示設備。在一種實現中,圖形設備108可以在連接到總線系統116的專用硬體卡中實現。在另一種實現中,圖形設備108可以在集成到總線系統116的晶片集中的圖形控制器中實現。也可以使用其它實現。
[0071]示例輸入設備110可以包括鍵盤、滑鼠、觸筆、攝像機、多觸摸表面等,而示例輸出設備112可以包括顯示設備、音頻設備等。
[0072]網絡接口 114例如可以包括有線的或無線的網絡設備,這些設備可操作為將數據傳送到網絡118或者從網絡118傳送數據。網絡118可以包括一個或多個區域網(LAN)或廣域網(WAN),例如網際網路。
[0073]在一種實現中,系統100包括定義存儲在第一數據存儲器104和/或第二數據存儲器106中的作業系統的指令。示例作業系統可以包括MAC OSli X系列作業系統、基於WINDOWS?的作業系統,或者其它作業系統。當執行作業系統指令時,使得能夠訪問各種系統對象。示例系統對象包括數據文件、應用程式、功能、窗口等。為了便於直觀的用戶體驗,系統100包括提供對各種系統對象的用戶訪問並以直觀方式將關於系統100的信息傳遞到用戶的圖形用戶界面。
[0074]圖2是示例用戶界面體系結構200的框圖。用戶界面體系結構200包括提供對各種系統對象204的用戶訪問並將關於系統100的信息傳遞到用戶的用戶界面(UI)引擎202。
[0075]當執行時,UI引擎202可以使圖形設備108在諸如顯示設備的輸出設備112上輸出圖形用戶界面。在一種實現中,圖形用戶界面可以包括多維桌面210和多維應用環境212。在一種實現中,多維桌面210和多維應用環境212包括x、y和z軸方位,例如高度、寬度和深度方位。X、y和z軸方位可以定義三維環境,例如包括諸如深度的z軸方位的「3D」或「2.5D」環境。
[0076]在一種實現中,多維桌面210可以包括用戶界面元素,例如可視化對象220、可視化對象容器222和堆棧項目224。在有些實現中,可視化對象220、可視化對象容器222和堆棧項目224可以在偽三維(即,「2.5D")或三維環境中作為具有深度方位的圖形對象給出。
[0077]可視化對象220例如可以是系統對象的可視表示。在有些實現中,可視化對象220是圖標。也可以使用其它可視化對象,例如報警通知窗口、菜單命令條、窗口或者系統對象的其它可視表示。
[0078]在一種實現中,多維應用環境212可以包括沿深度方位分布的應用環境。例如,如應用程式窗口的內容框可以在第一表面上給出,而例如工具條命令的控制元素可以在第二表面上給出。
[0079]圖3是示例可視化對象容器300的圖像。在一種實現中,可視化對象容器300可以包括X、y和z軸方位,例如高度、寬度和深度。在另一種實現中,可視化對象容器300可以只有I和z軸方位,例如寬度和深度。在另一種實現中,可視化對象容器300可以只有X和I軸方位,例如高度和寬度。可視化對象容器300的示例實現是MAC OS? X Leopard作業系統中的「碼頭(Dock)」用戶界面。也可以使用其它實現。
[0080]在有些實現中,或者更多的可視化對象(例如,圖標304、306、308和310)可以放到可視化對象容器300 (例如,圖標容器300)中。在一種實現中,應用照明和陰影效果來強調可視化對象容器300的深度方位,如由圖標304、306、308和310中每一個下面的對應陰影305,307,309和311以及反射312、314、316和318所例示的。
[0081]在有些實現中,可視化對象容器300可以包括前表面319,以生成高度方位。在有些實現中,在可視化對象容器300中可以包括切口(notch)320。切口 320例如可以用於關於特定的程序或功能排列可視化對象,例如文件和文件夾可以位於切口 320的第一側,而應用程式可以位於切口 320的第二側;或者用戶可以根據切口 320定義排列等。
[0082]在有些實現中,可視化對象容器300可以包括位於前表面319上的狀態指示符,例如330和332。狀態指示符330和332例如可以表現為指示與對應可視化對象關聯的系統對象或功能的狀態的照明。在有些實現中,狀態指示符可以是基於所識別出的狀態而進行色彩編碼的。例如,狀態指示符330可以黃色照明,以便指示文件夾304在接收文件下載,而狀態指示符332可以綠色照明,以便指示與可視化對象308關聯的程序正在運行。
[0083]在有些實現中,可視化對象容器300可以只定義深度方位,例如可視化對象容器300可以不包括前表面319。在有些實現中,可視化對象容器300的上表面可以建模為用於表示可視化對象的添加和除去的液體。例如,當可視化對象添加到可視化對象容器300時,相鄰的可視化對象可以移開以定義開放的空間,而所添加的可視化對象就可以從表面顯現到該開放的空間中。可以生成表面微擾(例如,波紋)以增強添加可視化對象的可視效果。可視化對象可以通過基本相反的可視效果除去。
[0084]在另一種實現中,當將可視化對象添加到可視化對象容器300時,相鄰的可視化對象可以移開以定義開放的空間,且所添加的可視化對象可以落到表面上並進入該開放的空間。可以生成表面微擾(例如,波紋和濺斑)以便增強添加可視化對象的可視效果。可視化對象可以通過基本上相反的可視效果除去。可視化對象容器及位於其中的可視化對象的附加特徵將在下面更具體地加以描述。
[0085]圖4是示例堆棧項目400的圖像。在一種實現中,堆棧項目400是包括例如堆棧元素402、404、406和408的多個堆棧元素的系統對象,所述堆棧元素例如是對應於系統對象的圖標或者系統對象的其它可視化。堆棧項目400與堆棧元素402、404、406和408關聯,使得對堆棧項目的選擇可以提供對任何堆棧元素402、404、406和408的訪問。在一種實現中,例如,堆棧元素可以由系統對象的對應可視化對象來實現。在另一種實現中,例如,堆棧元素可以由系統對象的對應縮略圖圖標來實現。在另一種實現中,例如,堆棧元素可以由系統對象的不同的對應圖標來實現。在另一種實現中,例如,堆棧元素可以由共同的堆棧元素圖標來實現。也可以使用利用圖標和/或其它可視化對象的其它堆棧元素實現。
[0086]在一種實現中,堆棧項目標識符410可以顯示在頂部堆棧元素(例如,堆棧元素402)上。在一種實現中,堆棧項目標識符410例如可以包括描述堆棧類型的標題,例如「圖像」或「文檔」。在另一種實現中,堆棧項目標識符410例如可以包括指示堆棧的一個方面的可視指示符,例如可以針對包括關於財務分析工具的系統對象的堆棧項目顯示美元符號$ ;或者硬幣的表示可以作為堆棧項目下的表面顯示,等等。堆棧項目標識符410例如可以自動生成,或者可以由用戶生成。也可以使用其它的堆棧項目標識符。
[0087]在一種實現中,堆棧元素402、404、406和408以交疊的布置聚集,如圖4所示。也可以使用其它的堆棧布置。在一種實現中,每個堆棧元素402、404、406和408都顯示對應的唯一標記412、414、416和418,例如與堆棧元素關聯的圖像的縮略圖預覽或者與堆棧元素關聯的文檔的第一頁。也可以使用其它的唯一一個或多個標記。例如,對應於圖像的堆棧元素可以具有相同的圖像外觀,例如4x5外觀和9x12外觀等。同樣,對應於文檔的堆棧項目可以具有相同的頁面選擇外觀,例如8.5x11外觀、A4外觀等。也可以使用其它的唯一一個或多個標記,例如文檔大小和/或文檔日期可以在每個堆棧元素中顯示,等等。
[0088]在有些實現中,堆棧元素402、404、406和408可以標準化到或者處於類似的顯示外觀。例如,通過添加圍繞縮略圖圖像的縮略圖的邊界,具有不同外觀(例如,4x5外觀和9x12外觀等)的對應於圖像的堆棧元素可以具有相同的顯示外觀。這種標準化可以便於具有例如不同格式化大小的非一致特徵的系統對象的一致呈現。
[0089]堆棧項目400可以包括關於不同類型系統對象的可視化對象。例如,堆棧項目可以包括關於例如硬碟驅動器、通用串行總線設備等的外圍設備的堆棧元素;或者可以包括關於應用程式窗口的堆棧元素;或者可以包括關於例如菜單、關機功能、睡眠功能、備份功能等的系統功能的堆棧元素;或者可以包括關於最近系統報警的堆棧元素;或者其它系統對象。
[0090]在有些實現中,堆棧項目400可以包括關於不同系統視圖的可視化對象。例如,堆棧元素402可以對應於工作環境;堆棧元素404可以對應於遊戲環境;堆棧元素406可以對應於音樂環境;而堆棧元素408可以對應於電影環境。針對對應元素402-408中任一個的選擇可以使用戶界面轉換到對應的環境。
[0091]在有些實現中,堆棧項目400可以包括關於多個監視器的可視化對象。例如,如果在雙監視器用戶環境中的一個監視器被禁用,則顯示在被禁用的監視器上的對應可視化對象可以倒到剩餘監視器上的監視器堆棧中。
[0092]堆棧項目和對應堆棧元素的附加特徵在下面更具體地予以描述。
[0093]圖5是示例用戶界面引擎體系結構500的框圖。Π引擎202例如可以包括交互和可視化模型引擎502、物理引擎504及上下文引擎506。也可以包括其它引擎。
[0094]在一種實現中,交互和可視化模型引擎502可以識別例如圖標的所關聯可視化對象的關聯特徵。所關聯的圖形元素可以一同顯示在例如對象堆棧中,或者可以分布在桌面/文件夾層次中,其中只顯示一個圖標。基於所識別出的特徵,交互和可視化模型引擎502可以自動選擇定義用戶如何與所關聯的圖形元素交互並觀看其的交互模型和/或可視化模式。例如,如果識別出的關聯特徵是所關聯圖標的數量,則用於瀏覽關於該圖標的文檔的交互模型和/或可視化模型可以基於該數量來選擇。例如,如果所關聯圖標的數量小於第一閾值,例如四,則在這四個所關聯圖標中任何一個上的滑鼠懸停可以並置地呈現所關聯的圖標。同樣,如果所關聯圖標的數量大於第一閾值並小於第二閾值,例如16,則在所關聯圖標中任何一個上的滑鼠懸停可以按照交疊顯示呈現所關聯的圖標,其中圖標從後向前循環。此外,如果所關聯的圖標的數量大於第二閾值,則在所關聯圖標中任何一個上的滑鼠懸停可以呈現所關聯文檔的可滾動列表。
[0095]其它的交互模型和可視化模型選擇策略也可以實現。例如,交互和可視化模型引擎502可以使得當選擇特定的可視化對象類型時,相關的可視化對象跨用戶界面移動,例如對字處理程序圖標的選擇可以使字處理文檔圖標朝字處理程序圖標移動。在另一種實現中,對可視化對象的選擇可以使不相關的可視化對象不再被強調(例如,尺寸減小)和/或相關的可視化對象被強調(例如,尺寸增加)。在另一種實現中,對可視化對象的選擇可以使相關的可視化對象變得被照亮。
[0096]在一種實現中,物理引擎504可以將例如基於質量、速度等的牛頓物理模型的物理外觀應用到系統對象的可視表示,例如圖標。在一種實現中,圖標可以建模為剛性體或非剛性體。例如,在一個表面上將一個圖標靠近相鄰圖標放置可以使相鄰圖標響應於來自所述圖標放置的受激幹擾而移動位置。在一種實現中,圖標磁性(magnetism)可以被用戶有選擇地啟用或禁用。在一種實現中,當禁用磁性外觀時,圖標返回其初始位置。在另一種實現中,磁性圖標可以具有由用戶選擇的磁性外觀,例如關於字處理應用程式的磁性、關於兩個或更多個應用程式的磁性或者例如最近兩天之內的關於文檔最後訪問時間的磁性等。
[0097]也可以應用其它的物理模型。例如,應用程式圖標可以包括磁性外觀,並且將磁性應用程式圖標放到桌面上可以使關於應用程式圖標的圖標(例如,代表應用程式文檔文件的圖標)被磁性圖標吸引並朝著磁性圖標移動。同樣,用於不相關系統對象的圖標,例如其它應用程式圖標和其它文檔圖標,可以建模為具有與所選磁性圖標不同的磁極性,因此將被排斥並從所選的磁性圖標移開。
[0098]上下文引擎506例如可以基於上下文提供對堆棧項目的上下文控制。例如,堆棧項目(例如,堆棧項目400)可以根據保護上下文來定義。相應地,對應於堆棧項目中堆棧元素的系統對象在與堆棧項目去關聯之前也不能被刪除。在有些實現中,堆棧項目400可以具有鎖定的上下文,且對堆棧項目400的訪問可以是受密碼保護的。其它的上下文控制也可以提供,例如基於時間上下文的上下文控制,例如最近添加的系統對象的新對象堆棧;下載上下文,例如用於最近下載的文件的下載堆棧;或者執行上下文,或者其它上下文類型。
[0099]圖6是可以用於實現在此描述的系統和方法的示例系統層600的框圖。然而,也可以使用其它的系統層實現。
[0100]在一種實現中,用戶界面引擎,例如UI引擎202或者能夠生成三維用戶界面環境的另一 Π引擎,在應用層602工作並實現通過應用程式接口(API)層604可用的圖形功能與特徵。示例圖形功能與特徵包括由圖形API支持的圖形處理、由圖像API支持的圖像處理和由視頻API支持的視頻處理。
[0101]API層604又與圖形庫層606接口。圖形庫層606例如可以實現為與圖形硬體的軟體接口,例如OpenGL規範的實現。驅動器/硬體層608包括驅動器和關聯的圖形硬體,例如圖形卡和關聯的驅動器。
[0102]圖7是示例多維桌面環境的框圖700。在該示例實現中,多維桌面環境700包括從觀看表面704軸向(例如,沿z軸)定位的後表面702。在一種實現中,後表面702例如可以是兩維的桌面環境,包括一個或多個菜單701和703。在一種實現中,觀看表面704可以由顯示設備上的整個圖像來定義,例如「前面板」。一個或多個側表面(例如,側表面706、708,710和712)從後表面702延伸到觀看表面704。在一個或多個側表面(例如,側表面706)上生成可視化對象容器(例如,圖標714)。儘管只示出了一個可視化對象容器,但附加的圖標容器也可以例如沿側表面708顯示。
[0103]在一種實現中,可以在側表面706(例如,「地板」)上生成反射區域716。在一種實現中,可以生成後表面702和放到反射區域716上的圖形項目的反射,例如形狀760和762在反射區域716中生成反射761和763。
[0104]在一種實現中,可視化對象容器714位於反射區域716的前進界標(terminus) 718。在一種實現中,前進界標718可以從觀看表面704偏移軸向距離d。在另一種實現中,前進界標718可以在由觀看表面704定義的平面上終止。
[0105]在一種實現中,側表面706、708、710和712可以分別在相交部707、709、711和713處相交。儘管在圖7中示出了四個側表面,但可以定義更少或更多數量的側表面;例如,在一種實現中,只定義了側表面706、708和712,而沒有「頂部的」側表面710。
[0106]在一種實現中,側表面706、708、710和712的相交部707、709、711和713可以出現在不同的位置。例如,多維桌面環境可以包括水平放置的相交部707a、709a、711a和713a ;或者垂直放置的相交部707b、709b、711b和713b,或者是垂直、傾斜和水平相交部的組合。
[0107]在一種實現中,側表面706、708、710和712被著色以突出後表面702和反射區域716。例如,側表面706、708、710和712可以是黑色,或者可以在每個側表面上展現各自的圖案或顏色。也可以使用包括色彩策略與圖形策略的其它區別策略。
[0108]可視化對象容器714可以包括多個可視化對象,例如圖標720、722、724、726、728、730、732、734、736、738、740 和 742。圖標 720、722、724、726、728、730、732、734、736、738、740和742例如可以對應於一個或多個系統對象,例如應用程式、文檔和功能。可視化對象容器714 和圖標 720、722、724、726、728、730、732、734、736、738、740 和 742 可以包括如關於圖 3的可視化對象容器300所描述的和如以下更具體描述的特徵。
[0109]在一種實現中,堆棧項目750、752、754、756和758插入在可視化對象容器714和後表面702之間。堆棧項目750、752、754、756和758可以包括如以上關於圖4所描述的和如以下更具體描述的特徵。在圖7的實現中,堆棧項目750、752、754、756和758分別定義了類型關聯,例如圖像、電影、文檔、展示和下載。也可以使用其它關聯。堆棧項目750、752、754,756和758可以在反射區域716中生成反射751、753、755、757和759。
[0110]如果堆棧項目中的特定堆棧元素代表應用程式文檔,則選擇該堆棧元素例如可以啟動所關聯的應用程式;或者如果堆棧元素代表系統功能,則執行該系統功能;或者可以例示某種其它系統處理。
[0111]在一種實現中,堆棧項目可以放到可視化對象容器714上。在另一種實現中,堆棧項目在可視化對象容器714中時的行為類似於該堆棧項目放置到反射區域716上時的行為。
[0112]在一種實現中,系統對象的表示(例如,圖標、堆棧項目等)可以放置到側表面708,710和712上。例如,顯示在後表面702上的窗口可以被選擇並拖到側表面708、710或712中的一個上。同樣,諸如堆棧項目750的堆棧項目也可以拖動並放置到側表面708、710或712中的一個上。
[0113]在一種實現中,堆棧項目是當系統對象的表示(例如,圖標)被放到反射區域716的表面上時創建的。例如,關於文檔的圖標可以在表面712上顯示;當在反射區域716上選擇、拖動和放置圖標時,創建堆棧項目,該堆棧項目至少有該圖標作為堆棧元素。在一種實現中,堆棧項目還可以通過鍵盤輸入創建;例如,用戶可以通過Ctrl-W輸入創建用於打開窗口的堆棧項目,或者通過Ctrl-P輸入創建用於外圍設備的堆棧項目,等等。也可以使用其它創建堆棧項目的處理。
[0114]在一種實現中,現有的堆棧項目移位,以便為新創建的堆棧項目提供空間。在一種實現中,反射區域716可以通過表面外觀定義,例如均勻的紋理,而堆棧項目750、752、754、756和758則根據物理模型(例如,剛性體牛頓物理模型)移位。在另一種實現中,反射區域716可以通過柵格外觀定義,而堆棧項目750、752、754、756和758根據柵格捕捉(gridsnap)移位。
[0115]也可以使用其它的紋理和表面行為。在一種實現中,運動模型依賴於所選的表面外觀。例如,均勻的紋理(例如,硬木地板或拋光金屬表面的圖像)可以與剛性體牛頓物理模型關聯;相反,可見的柵格外觀或者浮凸型的紋理(例如,地毯、卵石等的圖像)可以與柵格捕捉關聯。在另一種實現中,運動模式和紋理可以單獨地選擇。
[0116]在一種實現中,最大數量的堆棧項目可以顯示在反射區域716中。當插入或創建新的堆棧項目時,一個或多個現有的堆棧項目從反射區域716除去。在一種實現中,可以創建合併的堆棧項目。合併的堆棧項目例如可以是堆棧項目的集合,其中每個堆棧項目由對應的堆棧元素表示。針對合併的堆棧項目中對應堆棧元素的選擇將使得對應的堆棧項目被放置到反射區域上,並將同樣地使另一個堆棧項目放到合併的堆棧項目中。
[0117]在另一種實現中,通過轉到反射區域716的邊緣並從視野中隱去,一個或多個現有的堆棧項目可以從反射區域716除去,例如,堆棧項目750可以朝相交部707移動並通過霧化效果、墜落效果或者某種其它效果隱去。在另一種實現中,通過轉到反射區域716的邊緣並移動到一個側表面上,一個或多個現有的堆棧項目從反射區域716除去,例如,堆棧項目750可以朝相交部707移動並移動到側表面708上。
[0118]圖8是示例多維桌面環境的另一框圖800。在圖8的框圖中,可視化對象容器714已經沿深度軸(例如,z軸)可調整地放置成使得可視化對象容器714位於後表面702上。在一種實現中,可視化對象容器714例如可以是突出顯示的。例如可以通過使得可視化對象容器714在其它圖形對象前面來突出顯示可視化對象容器714。例如,可視化對象容器714中的圖標742顯示在堆棧項目750的前面。也可以採用其它方法來突出顯示可視化對象容器714,例如使得顯示在可視化對象容器前面的圖形對象為半透明對象。
[0119]圖9是示例多維桌面環境的另一框圖900。實現多維桌面環境圖形用戶界面的系統(例如,圖1的系統100)接收到了對堆棧項目750的選擇命令。對堆棧項目的選擇命令可以通過例如滑鼠懸停、滑鼠點擊、鍵盤輸入或者通過某種其它輸入來生成。
[0120]在圖9所示的實現中,使堆棧元素772、774、776和778以交疊模式排列的可視化模型被應用到堆棧項目750。因此,響應於用戶輸入,例如選擇或滑鼠懸停,第一堆棧項目750從第一模態進入第二模態,且最前面的堆棧元素772向上展開(fan),然後是堆棧元素774和776。在堆棧項目750被選擇的同時,通過將光標放到堆棧元素772、774、776和778中的一個上並選擇該元素(例如,用滑鼠光標點擊該元素),用戶例如可以選擇並打開與堆棧元素772、774、776和778中的一個相關的文檔。對堆棧項目750的去選擇,例如停止滑鼠懸停,使堆棧元素772、774、776和778倒回堆棧項目750中,且堆棧項目返回第一模態。也可以使用其它選擇處理。
[0121]在一種實現中,堆棧元素772、774、776和778根據固定的展開路徑780展開。在另一種實現中,堆棧元素772、774、776和778可以根據由從用戶接收到的滑鼠輸入所定義的路徑展開。在另一種實現中,展開可以定義朝中心區域的路徑,因此每個堆棧的堆棧元素可以根據各自的展開路徑780、782、784、786和788展開。
[0122]在一種實現中,幾種交互和/或可視化模型中的一種可以自動選擇以應用到諸如堆棧項目750的堆棧項目。選擇例如可以基於堆棧項目750的特徵,例如堆棧元素772、774、776和778的個數,堆棧元素772、774、776和778的類型或者某種其它特徵。例如,如果所識別出的關聯特性是所關聯圖標的數量,則用於瀏覽並與圖標相關文檔交互的可視化和/或交互模型可以基於該數量來選擇。如果所關聯圖標的數量大於第一閾值,例如三,則任何一個堆棧元素772、774、776和778的滑鼠懸停可以將堆棧元素772、774、776和778以展開布置給出,如圖9所示。
[0123]也可以使用其它一個或多個交互和/或可視化模型選擇準則。例如,堆棧項目754中與文檔關聯的堆棧元素可以以交疊翻頁(leafing)模式顯示,其中顯示文檔的標題,這是因為與文檔第一頁的縮略圖圖像相比,用戶更有可能從標題辨別文檔的相關性。
[0124]圖10是示例多維桌面環境的另一框圖1000。實現多維桌面環境圖形用戶界面的系統(例如,圖1的系統100)接收到了對堆棧項目750的選擇命令,且使堆棧元素772、774、776和778作為單個實例(例如,單個圖標)以矩陣顯示布置的可視化模型被自動地選擇並應用到堆棧項目750。在圖10的實現中,選擇準則例如可以基於數量。例如,如果所關聯圖標的數量小於第一閾值,例如五,則對堆棧項目750的選擇可以將堆棧元素772、774、776和778按照基本並置的方式呈現,如圖10所示。
[0125]在一種實現中,可以生成選擇指示符,來指示所選的堆棧項目。例如,可以生成下照明效果1002,來指示對堆棧項目750的選擇。也可以使用其它選擇指示符,例如背光效果、放大效果、輪廓效果或其它效果。
[0126]對應於在線夥伴和音樂的目錄的附加堆棧項目1004和1006也顯示在框圖1000中。在一種實現中,諸如堆棧項目1004和1006的堆棧項目可以是根據上下文控制的。例如,在一種實現中,當實現圖10的圖形用戶界面的系統(例如,圖1的系統100)接收到與被指定為「在線夥伴」的另一用戶關聯的事件已經發生(例如「在線夥伴」已經登錄到網絡)的通知時,堆棧項目1004可以自動出現。
[0127]在另一種實現中,諸如堆棧項目1006的堆棧項目可以在對應於該堆棧項目的應用程式被選擇或執行時自動出現。例如,選擇示例性地對應於音樂應用程式的圖標732將根據選擇和/或執行上下文例示堆棧項目1006。
[0128]也可以使用其它的上下文控制,例如模態、時間上下文等。
[0129]圖11是另一示例多維桌面環境的框圖。圖11的多維桌面環境包括從觀看表面1104軸向(例如,沿z軸)放置的後表面1102。在一種實現中,後表面1102例如可以是兩維的桌面環境,包括一個或多個菜單1101和1103。在一種實現中,觀看表面可以由顯示設備上的整個圖像定義,例如「前面板」。一個或多個側表面(例如,側表面1106、1108、1110和1112)從後表面延伸到觀看表面。可視化對象容器1114在諸如側表面1106的一個或多個側表面上生成。
[0130]在一種實現中,可以在側表面1106(例如,「地板」)上生成反射區域1116。反射區域1116例如可以生成後表面1102和放在反射區域1116上的桌面項目的反射。
[0131]在一種實現中,側表面1106、1108、1110和1112被著色以突出後表面1102和反射區域1116。例如,側表面1106、1108、1110和1112是黑色的,或者可以在每個側表面上展現各自的圖案、顏色或圖像。也可以使用包括色彩策略和圖像策略的其它區別策略。
[0132]可視化對象容器1114可以包括多個可視化對象,例如圖標1120、1122、1124、1126、1128和1130。圖標1120、1122、1124、1126、1128和1130例如可以包括對應於一個或多個系統對象的可視化對象,例如應用程式、文檔和功能。例如,圖標1120、1122和1124可以對應於應用程式;圖標1126和1128可以對應於堆棧項目;而圖標1130可以對應於刪除功能。也可以表示其它的系統對象,例如文件項目、外圍設備項目等。
[0133]在一種實現中,堆棧項目1140、1142、1144和1146插入在可視化對象容器1114和後表面1102之間。例如可以生成選擇指示符,來指示所選的堆棧項目。例如,放大效果可以用於指示對堆棧項目1146的選擇。也可以採用其它的選擇指示符。
[0134]在一種實現中,反射區域1116可以通過柵格外觀1150來定義,而堆棧項目1140、1142、1144和1146根據柵格捕捉移位。在一種實現中,柵格外觀1150可以是可見的,例如柵格的輪廓,或者是與紋理圖像的關聯。在另一種實現中,柵格外觀可以是不可見的。
[0135]在另一種實現中,堆棧項目可以在表面1106上從一側到另一側和/或從前向後(或從後向前)滾動。例如,當例如通過在表面1106上點擊而選擇表面1106時,表面1106可以在由箭頭1152和1154指示的方向滾動。地板表面可以包括滾動入口和滾動出口,其中滾動方向從滾動入口轉到滾動出口。例如,相交部1156和1158可以定義用於從左向右滾動方向的滾動入口和滾動出口,或者反射區域1116的左邊緣1157和右邊緣1159可以定義用於從左向右滾動方向的滾動入口和滾動出口。在一種實現中,堆棧項目放置在地板表面1106上的滾動入口 1156(或1157)處,並在滾動出口 1158(或1159)處從地板表面1106移出。在一種實現中,一個或多個現有的堆棧項目通過從視野中隱去(例如,通過霧化效果、通過墜落效果或通過某種其它效果隱去)而從表面1106移出。
[0136]在另一種實現中,一個或多個現有的堆棧項目從表面1106移出,從而移動到一個側表面(例如,表面1112)上。在另一種實現中,一個或多個現有的堆棧項目通過移到包括被移位堆棧(例如,靠近相交部1156和1158的「錨」堆棧)的堆棧兀素中而從表面1106除去。
[0137]在一種實現中,諸如窗口 1160、1162和1164的窗口可以在後表面1102上顯示。窗口 1160、1162和1164例如可以被選擇並放到一個或多個表面1106、1108、1110和1112上。在一種實現中,將窗口放到一個表面(例如,表面1106上的反射區域1116)上生成將所選窗口作為堆棧元素的堆棧項目。選擇該堆棧項目例如可以使窗口再次出現在後表面1102上最初的位置。
[0138]在一種實現中,將窗口放到一個表面(例如,表面1108)上生成窗口的表不,例如表面1108上的窗口縮略圖1170。對應的窗口例如可以通過將窗口縮略圖拖到後表面1102上或者通過選擇並在窗口縮略圖1170上雙擊或者通過某種其它命令調用來恢復。
[0139]在一種實現中,照明外觀可以生成用於放到側表面上的系統對象的表示的陰影和/或反射。例如,照明外觀可以生成窗口縮略圖1170的反射或陰影1172。在一種實現中,從後表面1102投到反射區域1116上的陰影和/或反射可以限定到所選的系統對象的表示。例如,如果當前選擇了窗口 1160,則反射區域1116上的陰影或反射可以限定到窗口 1160,而其餘的窗口 1162和1164將不生成反射。
[0140]在另一種實現中,照明外觀可以在一個或多個表面上生成來自窗口縮略圖1170的照明效果。例如,照明效果可以包括從窗口 1170發出的模擬日光束。在一種實現中,照明效果可以根據本地環境狀態改變,例如日光束可以根據本地時間跨過表面;日光束的強度可以根據通過網絡118接收的本地時間和本地天氣條件來調整,例如,對于晴天而言是高強度,對於陰天和傍晚而言是低強度,和/或在本地日落時間後消除並在本地日出時間後生成。
[0141]在另一種實現中,以上所述的照明外觀可以與可以顯示在一個或多個表面上的天氣窗口小部件關聯。對天氣窗口小部件的選擇例如可以提供所選區域的具體天氣概況。
[0142]在另一種實現中,諸如堆棧項目1128的堆棧項目可以操作性地與諸如窗口 1160、1162和1164的窗口實例關聯。在一種實現中,響應於第一命令,窗P 1160、1162和1164分別被最小化為堆棧項目1128中的堆棧元素1161、1163和1165,並且,響應於第二命令,窗口1160、1162和1164從最小化狀態顯示到後表面1102上。
[0143]在一種實現中,第一和第二命令是切換(toggle)命令。例如,通過在堆棧項目1128上滑鼠懸停並同時接收點擊命令對整個堆棧項目1128的選擇可以使與堆棧元素關聯的所有窗口(例如,窗口 1160、1162和1164)都出現在後表面1102上。當停止點擊命令時,窗口 1160、1162和1164回復到最小化狀態。
[0144]在另一種示例實現中,對堆棧元素的選擇,例如通過在光標在堆棧元素1163上停留超過一個時間段後接收到點擊命令而對堆棧元素1163的選擇,可以使堆棧元素1163從堆棧項目1128中除去。作為響應,窗口 1162可以再次出現在後表面1102上。
[0145]在一種實現中,照明外觀可以配置成對系統對象的每個表示生成陰影效果。例如,所選的窗口可以在後續的窗口上投下陰影,以突出深度方位和總體的用戶界面關係;堆棧項目可以在相鄰的系統對象表示上投下陰影;選擇並拖動圖標可以使得當圖標移動時在側表面和後表面上生成圖標的陰影。
[0146]圖12是另一示例多維桌面環境的框圖。在圖12的實現中,反射區域1116是由具有均勻紋理的表面外觀定義的,在其上堆棧項目響應於新的堆棧項目而移位。例如,堆棧項目1202、1204、1206和1208可以響應於新堆棧項目1210的添加而移動。當新的堆棧項目1210落到表面1106上時,堆棧項目1206和1208響應於由新堆棧項目1210誘發的移位而移動。
[0147]在一種實現中,最大數量的堆棧項目可以顯示在表面1106上。如果新堆棧項目的添加使得所顯示堆棧項目的個數超出,則離表面相交部最近的堆棧項目可以從表面移出。例如,如果要顯示的堆棧項目的最大數量是四,則堆棧項目1208可以繼續移動到表面1106的邊緣,在那裡堆棧項目1208被移出,例如從視野中隱去、霧化等。
[0148]在一種實現中,表面1108和1112例如可以顯示特定類型的桌面項目。例如,桌面1108可以顯示文件桌面項目1220,例如文檔圖標,而表面1112可以顯示程序桌面項目,例如應用程式圖標1222。在一種實現中,文件桌面項目1220對應於在應用程式窗口 1224中打開的文件,而應用程式圖標1222對應於執行的應用程式。
[0149]在另一種實現中,多個文件桌面項目和應用程式桌面項目可以顯示在對應的表面1108和1112上。例如,表面1112可以顯示對應於兩個執行應用程式的兩個圖標。對一個應用程式圖標的選擇例如可以使對應的應用程式窗口顯示在後表面1102上,而對應的文檔圖標顯示在表面1108上。
[0150]圖13是另一示例多維桌面環境的框圖。在這種示例實現中,後表面1302不包括菜單項,例如菜單1101和1103。通過分別選擇堆棧元素1306和1308,堆棧項目1304用於訪問對應於菜單1101和1103的菜單。在一種實現中,對堆棧項目1304的選擇和堆棧項目在後表面1302上的定位可以使對應的菜單項1101和1103再次出現在後表面1302的頂部。
[0151]圖13的多維桌面環境例如還可以方便多維應用環境。例如,可以在後表面1302上顯示應用程式內容表示表面1310(例如,顯示可編輯數據的應用程式實例),而一個或多個應用程式控制元素可以顯示在一個或多個側表面上。例如,工具條1312可以顯示在表面1108上,以提供對工具條功能按鈕1314、1316、1318、1320、1322和1324的訪問。
[0152]同樣,菜單項目1330可以顯示在表面1112上。在一種實現中,對菜單項的選擇生成軸向放置的文本菜單,使得該文本菜單看起來是懸在後表面1302和觀看表面之間。例如,從菜單項目1330選擇「文件」菜單可以生成浮動的文本菜單1332,該文本菜單1332例如可以包括在後表面1302上的陰影效果1334。
[0153]圖14是另一示例多維桌面環境的框圖。圖14的多維桌面環境還可以方便多維應用環境。例如,應用程式內容框架1410(例如,顯示可編輯數據的窗口)可以顯示在後表面1102上,而一個或多個應用程式控制元素可以顯示在一個或多個側表面上。例如,三維功能圖標布置1420可以顯示在表面1108上,而菜單項目1430可以顯示在表面1112上。
[0154]三維功能圖標布置1420例如可以包括三維功能圖標1422、1424、1426和1428。在一種實現中,每個三維功能圖標1422、1424、1426和1428都包括在每個表面上的功能命令,且每個三維功能圖標1422、1424、1426和1428都可以通過使用諸如滑鼠的輸入設備來旋轉、定位和操縱。
[0155]在一種實現中,三維功能圖標可以例如通過使用菜單(例如,表面1112上的「定製」菜單)而添加到表面1108。在一種實現中,物理模型可以應用到三維功能圖標1422、1424、1426和1428的模型旋轉、運動和移位。例如,除去三維功能圖標1428可以使剩餘的三維功能圖標1422、1424和1426在表面1108上沿向下方向「降落」。
[0156]在一種實現中,三維登錄可視化對象1442可以用於方便用戶登錄和/或用戶環境。例如,登錄可視化對象1442的三個側面可以對應於用戶的登入/登出命令;而立方體剩餘的三個側面可以對應於針對當前用戶會話的用戶環境和/或其它用戶可定義功能。
[0157]在一種實現中,入口(portal) 1440可以包括在諸如後表面1102的表面上。入口1440可以被選擇成轉換到另一個多維環境。在一種實現中,入口 1440可以方便在不同的應用環境之間轉換,例如在當前執行的兩個應用程式之間轉換。在另一種實現中,入口可以方便在不同的多維桌面環境之間轉換,例如從配置成用於工作環境的第一環境到配置成用於休閒環境的第二環境的轉換。在另一種實現中,入口 1440可以方便在兩維桌面環境和三維桌面環境之間轉換。其它轉換也可以通過入口 1440而變得容易。
[0158]圖15是另一示例多維桌面環境的框圖。在圖15的實現中,窗口可以跨一個或多個表面拖動或移位。例如,堆棧項目1128可以包括分別對應於窗口 1502和1504的堆棧元素1503和1505。在一種實現中,對諸如堆棧元素1503的堆棧元素的選擇使對應的窗口 1502從表面1108進入視野並放到後表面1102上。同樣,對應於未選堆棧兀素1505的窗口 1504通過跨後表面1102和表面1112滑動而移出視野。移位、隱藏或者以別的方式使系統對象(例如,窗口)不再被突出的其它處理也可以使用。
[0159]在一種實現中,堆棧項目1510可以包括對應於入口的堆棧元素1512和1514。例如,對堆棧元素1512的選擇可以使圖形用戶界面轉換為兩維桌面,而對堆棧元素1514的選擇可以轉換到另一應用環境。
[0160]附加的特徵也可以通過其它實現來獲得。例如,在一種實現中,多維桌面環境中的每個表面都可以實現不同的行為和/或功能特性。在一種實現中,每個表面可以實現不同的展示特性。例如,在底部表面1106上,圖標及其它系統對象表示可以根據大比例顯示;在側表面1108上,圖標及其它系統對象表示可以根據小比例顯示;在後表面1102上,圖標及其它系統對象表示可以以列表格式顯示;等等。從一個表面選擇並向另一個表面拖動圖標或其它系統對象表示將同樣地使該圖標及其它系統對象表示根據其最終要放置的表面的展示特徵來顯示。
[0161]在另一種實現中,表面可以實現刪除特性。例如,圖標及其它系統對象表示的最後訪問時間可以被監視。如果圖標或其它系統對象表示的最後訪問時間超過第一閾值,則該圖標或其它系統對象表示可以自動地轉到實現刪除特性的表面,例如表面1112。此外,如果位於表面1112上的圖標或其它系統對象表示的最後訪問時間超過第二閾值,則該圖標或其它系統對象表示可以自動地從視野中刪除。
[0162]在一種實現中,可以採用配置工具來便於用戶對每個表面的表面特性進行配置。例如,配置菜單可以給出一個或多個展示特性,用於與一個或多個表面關聯。這一個或多個展示特性例如可以通過與每個表面關聯的複選框來關聯。也可以使用其它配置工具。
[0163]圖16A是另一示例多維桌面環境的框圖。圖16A的多維桌面環境例如可以實現關於圖2-5和7-15描述的特徵。在該示例實現中,多維桌面環境1600包括從觀看表面1604軸向(例如,沿z軸)布置的拱形後表面1602。在一種實現中,反射區域1116可以在側表面1606(例如,「地板」)上生成。在一種實現中,側表面1606、1608、1610和1612可以由分別具有彎曲相交部1607、1609、1611和1613的拱形區域定義。
[0164]彎曲的可視化對象容器1614可以包括可視化對象1620、1622、1624和1626,並可以位於反射區域1616上。堆棧項目1630和1632例如可以分別靠近彎曲相交部1607和1609放置。也可以使用其它布置。
[0165]也可以使用其它的多維桌面環境幾何結構。例如,在一種實現中,多維桌面環境可以遵循四面體形狀的環境,其中四面體的前表面定義觀看表面,而剩餘的三個表面定義左表面、底表面和側表面。在另一種實現中,多維桌面環境可以遵循三角形環境,其中三角形的一個軸定義觀看表面,而三角形剩餘的兩側定義左表面和右表面。也可以使用其它幾何結構。
[0166]在一種實現中,配置工具可以用於方便用戶對多維桌面環境進行配置。例如,配置菜單可以給出一種或多種用於讓用戶選擇的多維桌面環境幾何結構,例如矩形幾何結構、拱形幾何結構、三角形幾何結構,等等。對幾何結構的選擇可以使多維桌面環境根據所選的幾何結構來展現。
[0167]圖16B是另一不例多維桌面環境的框圖。除了後表面1640和底表面706定義桌面環境之外,圖16B的環境類似於上面圖2-5和7-15的環境。以上關於圖2_5中底表面706描述的特徵可以在圖16B的桌面環境中實現。
[0168]圖16C是另一不例多維桌面環境的框圖。除了後表面1650定義桌面環境之外,圖16C的環境類似於以上圖16B的環境。定義深度方位的可視化對象容器1652也可以靠近後表面1650的底部顯示。在有些實現中,深度方位通過在可視化對象容器1652的表面上生成反射來進一步突出。例如,後表面1650上的可視化對象(例如,文件夾圖標1656和應用程式窗口 1658)可以在可視化對象容器1652的表面上生成反射1654和1656。
[0169]在有些實現中,可視化對象容器1652可以具有平的高度方位,例如,可視化對象容器1652的表面可以看起來象實心的平面或者半透明或透明的平面。在其它實現中,可以生成高度方位。
[0170]可視化對象(例如,圖標1662、1664、1666、1668、1670和1672)可以位於可視化對象容器1652的頂部。在有些實現中,狀態指示符1669可以照亮來指示狀態。例如,堆棧項目1668可以對應於最近的下載,例如系統更新、文檔等,並給出照明以指示下載當前在進行中。狀態指示符1669例如可以根據色彩編碼來照亮,以指示不同的狀態。
[0171 ] 在有些實現中,選擇堆棧項目使得該堆棧項目擴大,以便根據可視化模型顯示堆棧元素,例如,堆棧元素1676、1678和1680按照矩陣布置顯示。在有些實現中,當堆棧項目的內容(例如,堆棧元素1676、1678和1680)根據可視化模型示出時可以生成倒下的窗口小部件1670,且可以顯示圍繞堆棧元素1676、1678和1680的對應可視化框架1674。
[0172]在有些實現中,如果堆棧項目1676、1678和1680存儲在共同的文件夾中,則「在取景器中顯示」命令對象1682的選擇可以顯示用於包含堆棧項目1676、1678和1680的文件夾的取景器窗口。在另一種實現中,即使堆棧項目1676、1678和1680沒有存儲在共同的文件夾中,「在取景器中顯示」命令對象1682也可以顯示包含堆棧項目1676、1678和1680的取景器窗口。
[0173]在有些實現中,堆棧項目集合處理可以識別桌面上的可視化對象並將這些對象倒到堆棧項目中。例如,應用程式窗口 1658和1659可以被識別並倒到堆棧項目中。在有些實現中,可視化對象的倒入包括動畫效果,例如「精靈」效果、「旋風」效果等。
[0174]在有些實現中,與可視化對象關聯的文本串(例如,與圖標關聯的文件名)可以是中間刪節的。中間刪節的串顯示文本串的開頭和文本串的結尾。在有些實現中,文件擴展可以由中間刪節示出。在其它實現中,文件擴展可以忽略。將光標放到文本串上或者放到與該文本串關聯的可視化對象上可以顯示整個的文本串。例如,如圖16C所示,文本串1677,即「Page生日影像.mpg」被刪節成「Page...影像.mpg」。相反,放到光標下的文本串1679,即「Julia的影像.mpg",則完全顯示了。
[0175]圖16D是另一示例多維桌面環境的框圖。除了對堆棧項目1676、1678和1680顯示展開的可視化模型之外,圖16D的環境類似於以上圖16C的環境。在所示的實現中,與堆棧項目1676、1678和1680關聯的文檔標題靠近堆棧項目顯示。在有些實現中,與可視化對象關聯的文本串(例如,圖標的文件名)以展開的可視化模型完全顯示。
[0176]圖17是示例桌面轉換的框圖。在一種實現中,計算機系統(例如,圖1的系統100)可以配置成在兩維桌面1702和三維桌面1730之間轉換。例如,兩維桌面1702定義觀看表面1703,並包括文件夾1704、1706、1708和1710、對應於硬碟驅動器的圖標1712、對應於網絡的圖標1714及顯示多個圖標1722的圖標顯示區域1720。
[0177]響應於轉換命令,系統例如可以從觀看表面1703深度轉換兩維桌面1702,以定義後表面1732,而一個或多個側表面(例如,側表面1706、1708和1710)可以從後表面1732向觀看表面1703延伸。可視化對象容器1730可以在表面1706上生成,而對應於桌面項目的一個或多個圖標1732可以放置到可視化對象容器中。在圖17的示例實現中,圖標1732對應於圖標1722。
[0178]在一種實現中,堆棧項目(例如,堆棧項目1742、1744、1746和1748)可以從兩維桌面項目(例如,桌面文件夾1704、1706、1708和1710)生成。在一種實現中,在轉換到三維桌面1730後沒有被對應圖標表示的兩維桌面項目例如可以保留在後表面1732上。例如,圖標1712和1714可以保留在後表面1732上。在另一種實現中,在轉換到三維桌面1730後沒有被對應圖標表示的兩維桌面項目例如可以從後表面1732消除。在另一種實現中,在轉換到三維桌面1730後沒有被對應圖標表示的兩維桌面項目例如可以從後表面1732消除並被諸如堆棧項目1750的「抓住全部(catch all)」堆棧項目中的對應堆棧元素表示。
[0179]從兩維桌面1702到三維桌面1730的轉換基本上可以逆轉成從三維桌面1730到兩維桌面1702的轉換。
[0180]圖18A是示例可視化對象容器指示符的框圖。示例可視化對象容器1802包括可視化對象,例如圖標1804、1806、1808、1810、1812和1814。在一種實現中,選擇指示符1820可以用於指示所選擇的圖標。在一種實現中,選擇指示符1820是通過照亮被選圖標(例如,圖標1806)下面的可視化對象容器1802的表面的下照明效果生成的。也可以使用其它選擇指示符,例如選擇狀態指示符1821或者背光效果、輪廓效果或者其它指示符。
[0181]圖18B是另一示例可視化對象容器指示符的框圖。在一種實現中,選擇指示符1822可以用於指示所選的圖標。在一種實現中,選擇指示符1822是通過諸如圖標1806的被選圖標相對於相鄰圖標的放大以及照亮被選圖標1806及相鄰圖標1804和1808下面的可視化對象容器1802的表面的下照明效果來生成的。在包括選擇狀態指示符1821的實現中,選擇狀態指示符1821可以擴成大選擇狀態指示符1823。
[0182]圖18C是另一示例可視化對象容器指示符的框圖。在一種實現中,選擇指示符1824可以用於指示所選的圖標。在一種實現中,選擇指示符1824是通過諸如圖標1806的被選圖標相對於相鄰圖標的放大以及照亮被選圖標1806下面的可視化對象容器1802的表面並照亮相鄰圖標1804和1808的背光效果來生成的。
[0183]圖18D是另一示例可視化對象容器指示符的框圖。可視化對象容器1802例如可以包括一個或多個狀態指示符,來指示與一個或多個圖標關聯的系統對象的狀態。例如,指示未選但正在執行的應用程式的狀態指示符1830可以通過第一種顏色的下照明效果來生成;指示被選和正在執行的應用程式的狀態指示符1832可以通過第二種顏色的下照明效果來生成;而指示正在啟動的應用程式的狀態指示符1834可以通過第三種顏色的下照明效果來生成。
[0184]也可以使用其它狀態指示符策略。例如,在一種實現中,指示正在啟動的應用程式的狀態指示符1834可以通過脈動式的下照明效果來生成。在另一種實現中,狀態指示符可以通過強度來指示狀態;例如,對應於打開的文檔的圖標(例如,文檔圖標、堆棧項目或者應用程式圖標)可以以相對高的強度打背光,而對應於打開但未選的文檔的圖標可以以相對低的強度打背光。例如,在利用狀態指示符1831、1833和1835的實現中,狀態指示符可以根據類似的色彩策略照明。
[0185]圖19A和19B是用於可視化對象容器1802的示例上下文菜單的框圖。在有些實現中,可選擇的尾標1902可以靠近圖標(例如,圖標1804)顯示,以指示與由圖標1804所表示的系統對象關聯的可動作狀態。例如,如果圖標1804代表系統更新處理或程序,則可選擇的尾標1902可以在當系統更新可用的時候顯示。
[0186]可選擇的尾標1902例如可以是靠近圖標1804的浮動圓球。也可以使用其它的形狀或者可見表示。在有些實現中,可選擇的尾標1902根據顏色編碼進行色彩編碼,以指示對應的可動作狀態。
[0187]圖19B例示了響應於對可選擇尾標1902的選擇而可以靠近圖標1804顯示的示例上下文菜單1910。上下文菜單1910可以包括關於圖標1804的一個或多個菜單選項,例如菜單選項1912和1914。在有些實現中,尾標1902 —直保留到採取必要的動作為止。在其它實現中,尾標1902可以通過對上下文菜單1910中一個菜單選項的對應選擇而除去。在有些實現中,如果尾標1902在一個時間段(例如,30分鐘)之後沒有被選擇,則其可以從視野中隱去。
[0188]圖20是包括類型在前的指示的可視化對象容器的框圖。在有些實現中,一個或多個突出顯示的指示符2000、2002和2004以及/或者2001、2003和2005響應於類型輸入數據(例如,通過鍵盤輸入而生成的數據)而生成。這一個或多個突出顯示的指示符2000、2002和2004以及/或者2001、2003和2005可以對具有對應於鍵盤輸入的文本描述的圖標生成,而且可以響應於類型輸入數據而調整,使得只有具有由類型輸入數據定義的文本描述的圖標被突出顯示。例如,如果圖標1804、1810和1812的文本描述是「時鐘(Clock)」、「計算器(Calculator) 」和「古典音樂(Classics) 」,則突出顯示的指示符2000、2002和2004以及/或者2001、2003和2005將響應於鍵盤輸入「c」而照亮。後續的鍵盤輸入「I」將使得突出顯示的指示符2002和/或2003關閉;而第三個鍵盤輸入「ο」將使得突出顯示的指示符2004和/或2005關閉。因此,對應於文本描述「時鐘(Clock) 」的圖標1804將通過類型輸入數據C、I和ο而被選擇。
[0189]也可以使用其它基於類型輸入的選擇指示。例如,來自堆棧項目的堆棧元素可以響應於類型輸入而消失。因此,如果堆棧項目包括標題為「時鐘(Clock)」、「計算器(Calculator) 」、「古典音樂(Classics) 」、「 電影(Movie) 」 和「遠徵探險(Safari) 」 的堆棧元素,則鍵盤輸入「c」將使得「電影(Movie) 」和「遠徵探險(Safari) 」可視化對象消失。後續的鍵盤輸入「a」將使得「時鐘(Clock) 」和「古典音樂(Classics) 」可視化對象消失。
[0190]除了基於以類型輸入數據開始的文本描述的選擇,基於類型輸入數據的選擇也可以基於可視化對象的文本描述是否包含文本輸入或者以文本結束。例如,所有具有「.mac」擴展的堆棧元素都可以通過選擇「以…結束」類型輸入選項並輸入類型輸入和「c」來可視化。
[0191]圖21A和21B是用於可視化模型的示例選擇指示符的框圖。在圖21A中,堆棧元素2104、2106、2108、2110、2112和2114根據可視化模型(例如,矩陣布置)來顯示。一個或多個突出顯示的指示符2109和2111 (例如,聚焦環)可以響應於鍵盤輸入數據而生成。聚焦環2109和2111可以響應於輸入數據的類型而調整,使得只有具有由類型輸入數據定義的文本描述的可視化對象被突出顯示,如以上關於圖20所描述的。例如,聚焦環2109和2111可以響應於鍵盤輸入「c」而生成。後續的鍵盤輸入「I」將使得聚焦環2111從視野中隱去。
[0192]在圖21B中,堆棧元素2104、2106、2108、2110、2112和2114根據可視化模型(例如,矩陣布置)顯示。在這種實現中,突出顯示的指示符是基於光標位置生成的。例如,如果滑鼠光標2120首先放到可視化對象2110上,則第一個聚焦環2111可以完全或部分地圍繞可視化對象2110生成。但是,如果滑鼠光標2120移動到可視化對象2108上的位置,則第一個聚焦環2111將從視野中隱去,而第二個聚焦環2109將圍繞可視化對象2108生成。
[0193]在有些實現中,聚焦環持續圍繞著可視化對象,直到滑鼠光標2120放到另一個可視化對象上。在有些實現中,只有當滑鼠光標2120放到可視化對象上時,聚焦環才持續圍繞著可視化對象。用於生成和除去選擇指示符的其它處理也可以使用。
[0194]圖22是另一示例多維桌面環境的框圖。在一種實現中,指示符例如可以用於指示具有關聯的系統對象的表示。例如,圖標2206、堆棧項目2208、文件夾2210和窗口 2212可以通過將對應的系統對象關聯到例如應用程式來關聯,例如,圖標2206可以是應用程式圖標;堆棧項目2208可以提供對與該應用程式關聯的特定文檔的訪問;文件夾2210可以定義存儲所有應用程式文檔的數據存儲器;而窗口 2212可以是正在執行的應用程式的實例。在一種實現中,對圖標2206、堆棧項目2208、文件夾2210或窗口 2212中任何一個的選擇可以生成用於所有項目的共用選擇指示符。該共用的選擇指示符例如可以通過諸如背光效果的照明效果、通過暫時的脈動效果或者通過某種其它永久或瞬時的效果來實現。
[0195]圖23是另一示例可視化對象容器2302的框圖。示例可視化對象容器2302包括多個可視化對象行2312和2314及多個可視化對象列2322、2324、2326、2328、2330和2332。在一種實現中,可視化對象容器2302包括根據可視化對象行2312和2314及可視化對象列2322、2324、2326、2328、2330和2332位於可視化對象容器2302中的多個可視化對象2304。
[0196]儘管示出了兩個可視化對象行和六個可視化對象列,但可視化對象容器可以包括更多或更少的可視化對象行和可視化對象列。在一種實現中,可視化對象行和可視化對象列的子集例如可以在任何一個時間可見。
[0197]可視化對象行和可視化對象列例如可以通過一致地移動行和/或列而來回移動,如由實心箭頭所指示的。例如,當光標放在可視化對象容器上時,例如光標處於由可視化對象行2312和可視化對象列2332的相交部定義的位置,命令(例如,控制點擊命令)可以使可視化對象行和/或可視化對象列響應於光標的移動而一致地偏移。在另一種實現中,每個可視化對象行和可視化對象列例如可以通過偏移特定的行或列而獨立地來回移動,如由虛線箭頭所指示的。例如,當光標放在可視化對象容器2302上時,選項點擊命令可以使對應的可視化對象行2312和/或對應的列2332響應於光標的移動而獨立地偏移。也可以使用其它可視化對象容器導航策略。
[0198]圖24是示例堆棧項目2400的框圖。堆棧項目2400包括多個堆棧元素2402、2404、2406、2408和2410,其中每個堆棧兀素對應於一個或多個系統對象。在一種實現中,由堆棧元素2402、2404、2406、2408和2410定義的邊界2420定義了與堆棧項目2400關聯的包含區域。在一種實現中,將圖標放在包含區域內將生成與該圖標關聯的堆棧元素。同樣,將堆棧元素放到包含區域之外將使該堆棧元素與堆棧項目2400去關聯。在另一種實現中,包含區域可以與堆棧項目隔開。
[0199]在有些實現中,堆棧項目2400的顯示尺寸可以根據狀態改變。例如,如果對應於堆棧項目2400中的堆棧元素的系統對象需要注意,則堆棧項目2400的尺寸被調整成以較大的顯示尺寸展現。同樣,將滑鼠光標放到堆棧項目2400上可以使堆棧項目2400以較大的顯示尺寸展現。
[0200]在有些實現中,堆棧項目2400可以根據狀態改變朝向和/或外觀。例如,將滑鼠光標放到堆棧項目2400上可以使堆棧項目2400旋轉,或者可以使該堆棧項目2400中的堆棧元素隨機改變位置。
[0201]圖25是另一示例堆棧項目2500的框圖。堆棧項目2500包括多個堆棧元素2502、2504、2506、2508和2510,其中每個堆棧元素對應於一個文檔系統對象。在一種實現中,堆棧元素2502、2504、2506、2508和2510顯示對應的唯一標記,例如與堆棧元素關聯的圖像的縮略圖預覽或者與堆棧元素關聯的文檔的第一頁。也可以使用其它的一個或多個唯一標記,例如與圖像外觀比率的對應性,文檔尺寸和/或文檔日期的顯示可以在每個堆棧元素2502、2504、2506、2508 和 2510 中顯示,等等。
[0202]圖26是另一示例堆棧項目2600的框圖。堆棧項目2600包括多個堆棧元素2602、2604、2606、2608和2610。堆棧元素2602對應於應用程式系統對象的應用程式圖標,而堆棧元素2604、2606、2608和2610對應於文檔系統對象。在一種實現中,堆棧元素2602例如可以關於堆棧元素2604、2606、2608和2610而突出地放置。例如,堆棧元素2602可以永久性地放到堆棧元素2604、2606、2608和2610聚集的頂部。因此,堆棧項目2600中堆棧元素位置的偏移,例如通過選擇堆棧元素2612並將該堆棧元素2612放到堆棧元素2602的頂部或者添加新的堆棧元素,將不會使堆棧元素2602從突出位置移開。
[0203]突出放置與應用程式圖標關聯的堆棧元素的其它方法也可以使用。例如,圖27是另一示例堆棧項目2700的框圖,其中,通過關於堆棧元素2604、2606、2608和2610放大應用程式元素2602,堆棧元素2602被突出地放置。在另一種實現中,堆棧元素2604、2606、2608和2610可以利用半透明的效果展現,而堆棧元素2602可以利用不透明的效果展現,使得不管堆棧元素2602在堆棧項目中的什麼位置,堆棧元素2602的整體都是可辨別的。
[0204]圖28A是進行了色彩編碼的示例堆棧項目2802、2804和2806的框圖。在圖28A的示例實現中,每個堆棧項目2802、2804和2806的實例化可以相應地進行時間上下文和色彩編碼。例如,時間上下文可以定義日期範圍,且堆棧項目2802、2804和2806可以與每個日期範圍關聯並相應地進行色彩編碼,例如,綠色用於日期範圍「今天」、黃色用於日期範圍「上周」,而紅色用於日期範圍「上個月」。
[0205]在一種實現中,如果與系統對象關聯的相關日期在與堆棧項目關聯的日期範圍之內,則與該系統對象關聯的堆棧元素進一步與該堆棧項目關聯。例如,如果堆棧項目2802、2804和2806用於根據「最後修改」日期對字處理文檔系統對象進行訪問,則堆棧項目2802中的堆棧元素對應於今天修改的字處理文檔;堆棧項目2804中的堆棧元素對應於在上周內修改的字處理文檔;而堆棧項目2806中的堆棧元素對應於在上個月內修改的字處理文檔。
[0206]圖28B是進行了色彩編碼的示例堆棧項目2810的框圖。在圖28B的實現中,堆棧元素2820、2822、2824、2830、2832、2840和2842根據時間上下文進行色彩編碼。例如,堆棧元素2820、2822和2824色彩編碼成識別在當天添加的系統對象;堆棧元素2830和2832色彩編碼成識別在上周添加的系統對象;而堆棧元素2840和2842色彩編碼成識別在上個月添加的系統對象。也可以使用其它的色彩編碼策略,例如應用程式類型、最後修改的文件大小或者甚至是用戶定義的設置。
[0207]圖29是例示應用到示例堆棧項目2900的示例上下文控制策略的框圖。例如,上下文控制可以是應用程式上下文2910,它定義正在執行且被選的狀態2912、正在執行但未選的狀態2914和沒有執行的狀態2916。正在執行且被選的狀態2912可以在例如當正在執行或啟動的應用程式的應用程式窗口被選擇時發生。正在執行但未選的狀態2914可以在例如當除該應用程式之外的另一個過程被選擇時發生。沒有執行的狀態2916可以在例如當應用程式的執行終止時發生。在一種實現中,堆棧項目在正在執行且被選的狀態2912下顯示;在正在執行但未選的狀態下最小化,例如不再突出;而在沒有執行的狀態2916下被抑制,例如不分配或者從視野中隱去。
[0208]也可以使用其它類型的上下文控制。例如,基於與系統對象關聯的用戶級別(例如,根用戶級別或者主管級別)的上下文控制可以控制堆棧項目的實例化和/或堆棧項目中堆棧元素的實例化,而且還可以例如進一步控制用戶可用的命令。
[0209]圖30是例示示例可視化模型應用到示例堆棧項目3000的框圖。可視化模型例如可以根據第一模態和第二模態來實現。在第一模態下,堆棧項目3000以基本交疊的布置顯示堆棧元素3002、3004、3006、3008和3010。在第二模態下,堆棧元素3002、3004、3006、3008和3010根據自動選擇的可視化模型顯示。可視化模型可以如上所述地進行選擇。
[0210]圖30所例示的示例可視化模型例如可以定義由第一界標3020和第二界標3022定義的多維路徑,並沿該多維路徑生成堆棧元素3002、3004、3006、3008和3010的放置。例如,響應於用戶輸入,堆棧元素3002、3004、3006、3008和3010可以在第一界標3020和第二界標3022之間沿任意方向轉換。
[0211]在一種實現中,指示符可以指示堆棧元素的突出放置。例如,當處於定義第一界標3020的突出位置時,堆棧項目3002可以通過聚焦環而突出顯示。
[0212]圖31A是例示用於示例堆棧項目3100的另一示例可視化模型的框圖。可視化模型例如可以根據如關於圖30所述的第一和第二模態來實現。在第二模態下,堆棧元素3102、3104,3106和3108是根據自動選擇的可視化模型來顯示的,其中自動選擇的可視化模型以基本並置方式生成堆棧元素3102、3104、3106和3108的布置。堆棧元素3002、3004、3006和3008例如可以沿由與堆棧元素3102、3104、3106和3108共同的環形軌跡定義的環形路徑轉換。
[0213]在一種實現中,指示符可以指示堆棧元素的突出放置。例如,當處於由左上象限位置定義的突出位置時,堆棧項目3002可以通過聚焦環而突出顯示。
[0214]圖31B是例示另一示例可視化模型應用到示例堆棧項目3120的框圖。除了堆棧元素3122、3124、3126、3128、3130和3132可以穿過對應路徑而以顯示矩陣顯示之外,該可視化模型類似於圖31A的可視化模型。儘管圖31B中所示的路徑是曲線的,但也可以使用其它路徑,例如直線路徑、螺旋路徑、正弦曲線路徑或者這些路徑的組合。
[0215]圖32是例示另一示例可視化模型應用到示例堆棧項目3200的框圖。堆棧項目3200例如可以包括幾十個、幾百個或者甚至幾千個堆棧元素。例如,堆棧元素3202、3204、3206、3208和3210可以顯示為不透明的堆棧元素,而堆棧元素3212可以顯示為半透明的堆棧元素,或者可以是靠近消失點的最後一個堆棧元素。
[0216]可視化模型例如可以根據如關於圖30所述的第一和第二模態來實現。在第二模態下,所有堆棧元素的子集,例如堆棧元素3202、3204、3206、3208和3210,根據自動選擇的可視化模型來顯示,其中自動選擇的可視化模型以列表視圖格式生成堆棧元素的布置。導航控制3220例如可以靠近堆棧元素的布置顯示,且對「上」方向部分3222或「下」方向部分3224的選擇分別可以使堆棧元素在向上或向下的方向穿過列表視圖格式。例如,選擇「下」方向部分3224將使得堆棧元素3202從列表視圖顯示中除去,使得堆棧元素3204、3206、3208和3210在列表視圖顯示中向下移動,並使得堆棧元素3212出現在列表視圖顯示的頂部。
[0217]對導航尾標3226的選擇可以生成包括一個或多個分類命令的上下文菜單。示例分類命令包括通過添加日期分類、通過文件大小分類、通過文件類型分類,等等。
[0218]在圖32的實現中,列表視圖穿過由曲線箭頭3230指示的致動路徑,例如,在中心堆棧元素(例如,堆棧元素3206)對於觀看平面是正常的曲面模型。因此,對於觀看表面不正常的堆棧元素,例如堆棧元素3202、3204、3208和3210,包括由曲面定義的彎曲變形。也可以使用其它的列表視圖格式,例如其中堆棧元素不變形的直線路徑。
[0219]在有些實現中,例如圖2中Π引擎202的用戶界面引擎可以預緩存用於以列表視圖格式顯示的堆棧元素的子集的顯示數據。預緩存可以限定到要在列表視圖中顯示的特定數量堆棧元素中的堆棧元素。例如,堆棧元素3200可以包括幾千個照片圖像文件;但是,通過分別選擇「上」方向部分3222和「下」方向部分3224,UI引擎202可以只預緩存接下來要顯示的五個堆棧元素的縮略圖圖像。
[0220]在另一種實現中,堆棧項目當選擇時可以旋轉到側面並將堆棧元素呈現為例如書架中一系列書脊的圖形表示。依賴於堆棧元素的數量,書架可以是一層、多層,或者可以響應於用戶輸入而延伸到消失點並被穿過。響應於用戶輸入,例如滑鼠命令或者滑鼠懸停,可視化對象可以從書架中「拉出」,而接下來的命令,例如滑鼠點擊,可以打開與該可視化對象關聯的文件。也可以使用其它的可視化模型。
[0221]圖33A是示例堆棧項目3310的示例組關聯3300的框圖。組關聯3300例如可以基於堆棧元素3312、3314、3316和3318的一個或多個識別出的關聯特性。例如,組關聯3300可以包括項目關聯,例如,與利用第一項目應用程式3302開發的並使用來自與第二項目應用程式3304關聯的文件的數據的表示關聯的文件。
[0222]在一種實現中,交互模型可以基於項目關聯來選擇。在一種實現中,多個啟動交互模型可以在與堆棧元素3312、3314、3316和3318相關的任何一個系統對象被打開時選擇。在一種實現中,多個啟動交互模型例如可以確認兩個應用程式3302和3304的啟動。在另一種實現中,多個啟動交互模型例如可以提供上下文菜單,其中應用程式3302和3304中的一個或者兩個可以被選擇用於啟動。也可以使用其它的多個啟動交互模型。
[0223]在另一種實現中,同步交互模型可以在與堆棧元素3312、3314、3316和3318相關的一個系統對象保存到諸如硬碟驅動器的數據存儲器時選擇。當任何一個堆棧元素已經更新後,同步交互模型例如可以提供一個或多個上下文菜單或者其它的交互外觀,以提示用戶同步所有的堆棧元素。也可以使用其它的同步交互模型。
[0224]在另一種實現中,調和(reconciliat1n)交互模型可以在與堆棧元素3312、3314、3316和3318相關的一個系統對象被改變時(例如,與堆棧元素3312關聯的文件被新文件替換時)選擇。當任何一個堆棧元素被替換後,調和交互模型例如可以提供一個或多個上下文菜單或者其它的交互外觀,以提示用戶調和所有的堆棧元素。也可以使用其它的調和交互模型。
[0225]交互和/或可視化模型也可以應用到系統對象的其它表示。例如,在一種實現中,系統對象可以包括多維桌面環境中的窗口實例,而關聯特性可以包括未最小化窗口實例的數量。因此,依賴於打開的窗口的數量,為了方便對打開的窗口的操作,可以自動地選擇交互模型。例如,如果打開的窗口的個數大於五,則對瀏覽命令的選擇可以使打開的窗口自動地以交疊布置顯示以用於瀏覽;而如果打開的窗口的個數小於五,則對瀏覽命令的選擇可以使打開的窗口自動地以矩陣布置顯示以用於瀏覽。
[0226]圖33B是系統對象的示例組關聯的框圖。組關聯3350例如可以基於系統對象的一個或多個所識別出的關聯特性,例如文檔3360、3362和3364。如上所述,組關聯3350例如可以用於選擇一個或多個可視化和/或交互模型。但是,文檔3360、3362和3364不需要在堆棧項目中關聯,例如,文檔3360、3362和3364可以各自與不同的堆棧項目關聯,或者不與任何堆棧項目關聯。
[0227]圖34是用於轉換桌面的示例處理3400的流程圖。處理3400例如可以在諸如圖1中系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0228]階段3402將兩維桌面從觀看表面深度轉換到後表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以從觀看表面到後表面(例如,如圖17所示從觀看表面1703到後表面1732)深度轉換兩維桌面(例如,圖17的桌面1702)。
[0229]階段3404生成從後表面向觀看表面延伸的一個或多個側表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成從後表面向觀看表面延伸的一個或多個側表面,例如圖17的側表面1706、1708和1710。
[0230]階段3406在一個或多個側表面上生成可視化對象容器,例如圖標容器。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在一個或多個側表面上生成圖標容器,例如圖17中表面1706上的可視化對象容器1730。
[0231]階段3408將對應於桌面項目的一個或多個可視化對象(例如,圖標)放到可視化對象容器中。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將對應於桌面項目的一個或多個圖標放到可視化對象容器中,例如可視化對象容器1730中的圖標1732,它對應於圖17的圖標1722。
[0232]圖35是用於在桌面類型之間轉換的另一種示例處理3500的流程圖。處理3500例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0233]階段3502識別兩維桌面環境中的兩維桌面項目。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以識別兩維桌面環境中的兩維桌面項目,例如圖17的文件夾1704、1706、1708 和 1710。
[0234]階段3504基於所識別出的兩維桌面項目生成三維桌面項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以基於所識別出的兩維桌面項目生成三維桌面項目,例如圖17的堆棧項目1742、1744、1746和1748,它們對應於文件夾1704、1706、1708和1710。
[0235]階段3506將兩維桌面項目從視野中消除。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將兩維桌面項目從視野中消除,例如將文件夾1704、1706、1708和1710從圖17的後表面1732消除。
[0236]階段3508在至少一個表面(例如,側表面)上生成三維桌面項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在至少一個側表面上生成三維桌面項目,例如圖17中底部側表面1706上的堆棧項目1742、1744、1746和1748。
[0237]圖36是用於生成多維桌面環境的示例處理3600的流程圖。處理3600例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所述的示例實現。
[0238]階段3602從觀看表面軸向放置後表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以從觀看表面軸向放置後表面,例如後表面1102是從觀看表面1104軸向放置的,如圖11所示。
[0239]階段3604從後表面向觀看表面延伸出一個或多個側表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以從後表面向觀看表面延伸出一個或多個側表面,例如如圖11所示的側表面1106、1108、1110和1112。
[0240]階段3606在一個或多個側表面上生成可視化對象容器。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在一個或多個側表面上生成圖標容器,例如如圖11所示的在側表面1106上的可視化對象容器1114。
[0241]階段3608在可視化對象容器中生成對應於一個或多個系統對象的一個或多個可視化對象(例如,圖標)。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在可視化對象容器中生成對應於一個或多個系統對象的一個或多個圖標,例如如圖11所示的圖標 1120、1122、1124、1126、1128 和 1130。
[0242]圖37是用於展現多維桌面環境中側表面的示例處理3700的流程圖。處理3700例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所述的示例實現。
[0243]階段3702在表面(例如,側表面)上生成堆棧項目。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在側表面上生成堆棧項目,例如在側表面1106上生成的堆棧項目1140、1142、1144和1146,如圖11所示。
[0244]階段3704展現表面上的表面紋理。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以展現表面上的表面紋理,例如側表面1106上的柵格紋理1150,如圖11所
/Jn ο
[0245]圖38是用於滾動多維桌面環境中側表面的示例處理3800的流程圖。處理3800例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所述的示例實現。
[0246]階段3802響應於滾動命令而滾動側表面。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以響應於滾動命令而滾動側表面,例如側表面1106在由一個或多個箭頭1152和1154所指示的方向上滾動,如圖11所示。
[0247]階段3804在滾動方向上滾動堆棧項目。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在滾動方向上滾動堆棧項目,例如堆棧項目1140、1142、1144和1146在由一個或多個箭頭1152和1154所指示的方向上滾動,如圖11所示。
[0248]階段3806在滾動出口從側表面移走堆棧項目。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在滾動出口(例如,滾動出口 1158(或1159),如圖11所示)從側表面移走堆棧項目。
[0249]階段3808在滾動入口在側表面上放置堆棧項目。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在滾動入口(例如,滾動入口 1156(或1157),如圖11所示)在側表面上放置堆棧項目。
[0250]圖39是用於生成選擇指示符的示例處理3900的流程圖。處理3900例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所述的示例實現。
[0251]階段3902生成下照明效果作為選擇指示符。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以生成下照明效果作為選擇指示符,例如圖18B的選擇指示符1822。
[0252]階段3904生成放大效果作為選擇指示符。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成放大效果作為選擇指示符,例如圖18B所示的堆棧指示符1806的放大。
[0253]圖40是用於展現桌面項目的示例處理4000的流程圖。處理4000例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所述的示例實現。
[0254]階段4002在第一側表面上生成對應於多個桌面項目的堆棧項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在第一側表面上生成對應於多個桌面項目的堆棧項目,例如堆棧項目1202、1204、1206、1208和1212,及可視化對象容器1114和圖標1122、1124、1126、1128、1130 和 1132,如圖 12 所示。
[0255]階段4004在第二側表面生成對應於程序項目的圖標。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在第二側表面上生成對應於程序項目的圖標,例如表面1112上的應用程式圖標1222,如圖12所示。
[0256]階段4006在第三側表面上生成對應於文件項目的圖標。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在第三側表面上生成對應於文件項目的圖標,例如圖12中的表面1108上的文件桌面項目1220。
[0257]圖41是用於在多維桌面環境中生成示例應用環境的示例處理4100的流程圖。處理4100例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0258]階段4102從觀看表面軸向放置後表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以從觀看表面軸向放置後表面,例如圖14中從觀看表面軸向放置的後表面 1102。
[0259]階段4104從後表面向觀看表面延伸出一個或多個側表面。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以從後表面向觀看表面延伸出一個或多個側表面,例如如圖14中所示的側表面1106、1108和1112。
[0260]階段4106在後表面上生成用於應用程式的應用程式內容框架。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在後表面上生成用於應用程式的應用程式內容框架,例如如圖14中所示的後表面1102上的應用程式內容框架1410。
[0261]階段4108在一個或多個側表面上生成用於該應用程式的一個或多個應用程式控制元件。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在一個或多個側表面上生成用於該應用程式的一個或多個應用程式控制元件,例如如圖14中所示的功能圖標1422、1424、1426和1428。應用程式控制元素(例如,功能圖標1422、1424、1426和1428)可以用於控制應用程式的功能,例如在後表面上的應用程式內容框架中所顯示的用於編輯環境的編輯命令。
[0262]圖42是用於在應用環境之間轉換的示例處理4200的流程圖。處理4200例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0263]階段4202在一個側表面上生成應用程式入口。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在一個側表面上生成應用程式入口,例如包括對應於入口的堆棧元素1512和1514的堆棧項目1510,如圖15所示。
[0264]階段4204響應於對應用程式入口的選擇而從第一應用環境轉換到第二應用環境。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以響應於應用程式入口的選擇而從第一應用環境轉換到第二應用環境。如關於圖15所描述的,對堆棧元素1514的選擇可以轉換到另一個應用環境。
[0265]圖43是用於生成可視化對象容器的示例處理4300的流程圖。處理4300例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0266]階段4302生成沿深度方位放置的可視化對象容器。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以生成沿深度方位放置的可視化對象容器,例如可視化對象容器1114,如圖12所示。
[0267]階段4304生成放置在可視化對象容器中的一個或多個可視化對象。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以生成放置在可視化對象容器中的一個或多個可視化對象,例如可視化對象1122、1124、1126、1128、1130和1132,如圖12所示。
[0268]階段4306突出地顯示可視化對象容器。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以突出地顯示可視化對象容器,例如通過靠近圖12的觀看表面顯示可視化對象容器或者通過象關於圖8的可視化對象容器714所描述的那樣顯示可視化對象容器。
[0269]階段4308生成至少一個可視化對象作為堆棧項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成至少一個可視化對象作為堆棧項目,例如如圖12所示的堆棧項目1128和1130。
[0270]圖44是用於色彩編碼可視化對象的示例處理4400的流程圖。處理4400例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0271]階段4402將第一顏色與正在執行的應用程式關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以將第一顏色與正在執行的應用程式關聯,例如狀態指示符1830,如圖18D所示。
[0272]階段4404將第二顏色與被選且正在執行的應用程式關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以將第二顏色與被選且正在執行的應用程式關聯,例如狀態指示符1832,如圖18D所示。
[0273]階段4406將第三顏色與應用程式的啟動關聯。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將第三顏色與應用程式的啟動關聯,例如狀態指示符1834,如圖18D所示。
[0274]圖45是用於色彩編碼所關聯的系統對象的可視化對象的示例處理4500的流程圖。處理4500例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0275]階段4502色彩編碼放置在可視化對象容器內的被選可視化對象。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以色彩編碼放置在可視化對象容器內的被選可視化對象,例如色彩編碼可視化對象2206,如圖22所示。
[0276]階段4504將對應的顏色編碼應用到與被選可視化對象關聯的桌面項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將對應的顏色編碼應用到與被選可視化對象關聯的桌面項目,例如色彩編碼堆棧項目2208、文件夾2210和窗口 2212,如圖22所示。
[0277]圖46是用於生成可視化對象容器的另一示例處理4600的流程圖。處理4600例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0278]階段4602在可視化對象容器中定義可視化對象行。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在可視化對象容器中定義可視化對象行,例如可視化對象行2312和2314,如圖23所示。
[0279]階段4604在可視化對象容器中定義可視化對象列。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在可視化對象容器中定義可視化對象列,例如可視化對象列 2322、2324、2326、2328、2330 和 2332,如圖 23 所示。
[0280]階段4606根據可視化對象行和可視化對象列在可視化對象容器中放置可視化對象。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以根據可視化對象行和可視化對象列在可視化對象容器中放置可視化對象,如圖23中所示的實線和虛線箭頭所指示的。
[0281]圖47是用於生成堆棧項目的示例處理4700的流程圖。處理4700例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0282]階段4702生成或識別對應於計算機系統對象的多個堆棧元素。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成或識別對應於計算機系統對象的多個堆棧元素,例如圖29中所示的堆棧元素。
[0283]階段4704將多個堆棧元素與一個堆棧項目關聯。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將多個堆棧兀素與一個堆棧項目(例如,堆棧項目2900,如圖29所示)關聯。
[0284]階段4706將堆棧元素聚集到堆棧項目中。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將堆棧元素聚集到堆棧項目中,例如圖29中通過交疊堆棧元素來形成堆棧項目。
[0285]階段4708提供對堆棧項目的上下文控制。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以提供對堆棧項目的上下文控制,例如應用程式上下文2910,如圖29所示。
[0286]圖48是用於根據模態顯示堆棧元素的示例處理4800的流程圖。處理4800例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0287]階段4802在第一模態下以基本上交疊的布置顯示堆棧元素。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在第一模態下以基本上交疊的布置顯示堆棧元素,例如在第一模態下堆棧元素3000中堆棧項目的交疊布置,如圖30所示。
[0288]階段4804在第二模態下以瀏覽布置顯示堆棧元素。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在第二模態下以瀏覽布置顯示堆棧元素,例如由第一界標3020和第二界標3022所定義的展開布置,如圖30所示。
[0289]階段4806在第二模態下使得能夠選擇堆棧元素。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以在第二模態下使得能夠選擇堆棧元素,例如對突出放置的堆棧元素3002的選擇,如圖30所示。
[0290]圖49是用於選擇交互模型和/或可視化模型的示例處理4900的流程圖。處理4900例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0291]階段4902識別與堆棧項目關聯的堆棧元素的特性。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別與堆棧項目關聯的堆棧元素的數量,例如堆棧元素3002、3004、3006、3008和3010的數量,如圖30所示,或者與堆棧項目關聯的類型。
[0292]階段4904識別交互模型和/或可視化模型。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別多種可視化模型,例如瀏覽布置,如關於圖30和31所描述的瀏覽布置,或者交互模型,如關於圖33A和33B所示的交互模型。
[0293]階段4906基於堆棧元素的特性(例如,堆棧元素的數量或者堆棧元素的類型)選擇交互模型和/或可視化模型。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以選擇多種瀏覽布置中的一種,例如選擇展開布置,如圖30所示,或者選擇多種交互模型中的一種,如關於圖33A和33B所描述的。
[0294]圖50是用於生成堆棧項目的另一示例處理5000的流程圖。處理5000例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0295]階段5002定義用於時間上下文的日期範圍。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以定義用於時間上下文的日期範圍,例如關於圖28A和28B所描述的日期範圍。
[0296]階段5004將對應的堆棧項目與每個日期範圍關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以將對應的堆棧項目與每個日期範圍關聯,例如圖28A和28B中的堆棧項目2802、2804和2806。
[0297]階段5006為每個堆棧元素確定與每個所關聯的系統對象關聯的日期。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以為每個堆棧元素確定與每個所關聯的系統對象關聯的日期,例如文件修改日期,如關於圖28A和28B所描述的。
[0298]階段5008基於與堆棧項目關聯的日期範圍和與每個系統對象關聯的日期來將堆棧元素與堆棧項目關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以基於與堆棧項目關聯的日期範圍和與每個系統對象關聯的日期來將堆棧元素與堆棧項目關聯,例如與堆棧項目2802、2804和2806關聯的堆棧元素,如圖28所示。
[0299]圖51是用於根據執行上下文顯示堆棧項目的示例處理5100的流程圖。處理5100例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0300]階段5102將堆棧項目與應用程式系統對象關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以將堆棧項目與應用程式系統對象關聯,例如堆棧項目2900與應用程式的關聯,如圖29所示。
[0301]階段5104將與應用程式系統對象關聯的堆棧元素和與應用程式系統對象關聯的堆棧項目關聯。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將與應用程式系統對象關聯的堆棧元素和與應用程式系統對象關聯的堆棧項目關聯,例如堆棧項目2900的堆棧元素,如圖29所示。
[0302]階段5106在執行上下文過程中顯示與應用程式系統對象關聯的堆棧項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以在執行上下文過程中顯示與應用程式系統對象關聯的堆棧項目,例如在執行並被選的狀態2912下顯示堆棧項目2900,如圖29所示。
[0303]圖52是用於生成和顯示堆棧項目的示例處理5200的流程圖。處理5200例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0304]階段5202將多個堆棧元素與應用程式關聯。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將多個堆棧元素與應用程式關聯,例如堆棧元素2600與應用程式,如圖26和27所示。
[0305]階段5204識別堆棧文件元素和堆棧應用程式元素。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別堆棧文件元素和堆棧應用程式元素,例如文件元素2604、2606、2608和2610及應用程式元素2602,如圖26和27所示。
[0306]階段5206將堆棧項目與多個堆棧元素關聯。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以將堆棧項目與多個堆棧元素關聯,例如堆棧項目2600和堆棧元素 2602、2604、2606、2608 及 2610,如圖 26 和 27 所示。
[0307]階段5208聚集堆棧元素,以生成堆棧項目。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以聚集堆棧元素,以生成堆棧項目,例如圖26或27中所示的聚集。
[0308]階段5210突出地放置應用程式元素。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以突出地放置應用程式元素,例如突出放置的堆棧元素2602,如圖26或27所示。
[0309]圖53是用於自動地選擇並將交互模型應用到堆棧項目的示例處理5300的流程圖。處理5300例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0310]階段5302關聯繫統對象的可視化。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以關聯繫統對象的可視化,例如對應於堆棧元素3002、3004、3006、3008和3010的可視化,如圖30所示。
[0311]階段5304識別所關聯的可視化的一個或多個關聯特性。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以識別所關聯的可視化的一個或多個關聯特性,例如圖30中所示的堆棧元素的個數。
[0312]階段5306基於所識別出的一個或多個關聯特性自動地從多個交互模型中選擇一個交互模型。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以基於所識別出的一個或多個關聯特性從多個交互模型中選擇一個交互模型,例如選擇圖30和31中所示的一種交互模型。
[0313]階段5308將所選的交互模型應用到所關聯的可視化。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以將所選的交互模型應用到所關聯的可視化,例如圖30中所示的展開布置。
[0314]圖54是用於自動地選擇並將交互模型應用於堆棧項目的另一示例處理5400的流程圖。處理5400例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0315]階段5402識別堆棧關聯中可視化的數量。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別堆棧關聯中可視化的數量,例如堆棧元素3102、3104、3106和3108的數量,如圖31A所示。
[0316]階段5404基於該數量從多種交互模型中選擇一種交互模型。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以基於該數量從多種交互模型中選擇一種交互模型,例如圖31A中所示的交互模型。
[0317]圖55是用於自動地選擇並將交互模型應用於堆棧項目的另一示例處理5500的流程圖。處理5500例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0318]階段5502識別堆棧關聯中堆棧元素的類型。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以識別堆棧關聯中堆棧元素的類型,例如文檔類型。
[0319]階段5504基於該類型從多種交互模型中選擇一種交互模型。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以基於該類型從多種交互模型中選擇一種交互模型,例如為文檔類型設計的交互模型。
[0320]圖56是用於自動地選擇並將交互模型應用於堆棧項目的另一示例處理5600的流程圖。處理5600例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0321]階段5602識別堆棧關聯中堆棧元素的組關聯。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別堆棧關聯中堆棧元素的組關聯,例如圖33A的項目關聯。
[0322]階段5604基於該組關聯從多種交互模型中選擇一種交互模型。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以基於該組關聯從多種交互模型中選擇一種交互模型,例如多啟動交互模型、同步交互模型或者調和交互模型。
[0323]圖57是用於生成尾標的示例處理5700的流程圖。處理5700例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0324]階段5702生成沿深度方位放置的可視化對象容器。例如,實現圖2、5和6中所述任何一種π引擎的系統100可以生成圖19A的可視化對象容器1802。
[0325]階段5704生成在可視化對象容器中放置的一個或多個可視化對象。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成圖19A中的一個或多個可視化對象1804、1806、1808、1810、1812 和 1814。
[0326]階段5706識別與一個可視化對象關聯的可動作狀態。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以識別與圖19A中可視化對象1804關聯的可動作狀態,例如系統更新可用性。
[0327]階段5708生成靠近可視化對象顯示的尾標,以指示與該可視化對象關聯的可動作狀態。例如,實現圖2、5和6中所述任何一種Π引擎的系統100可以生成圖19A的尾標1902。
[0328]圖58是用於生成尾標上下文菜單的示例處理5800的流程圖。處理5800例如可以在諸如圖1的系統100的處理設備中實現,從而實現用戶界面軟體和/或硬體,例如關於圖2、5和6所描述的示例實現。
[0329]階段5802接收對尾標的選擇。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以接收對圖19A中尾標1902的選擇,例如滑鼠點擊。
[0330]階段5804響應於接收到選擇尾標而靠近可視化對象生成上下文菜單。例如,實現圖2、5和6中所述任何一種UI引擎的系統100可以生成圖19B的上下文菜單1910。
[0331]在本專利文檔中所描述的裝置、方法、流程圖和結構框圖可以在包括程序代碼的計算機處理系統中實現,其中程序代碼包括可以由計算機處理系統執行的程序指令。其它實現也可以使用。此外,在本專利文檔中所描述的流程圖和結構框圖也可以用於實現對應的軟體結構和算法及其等價物,其中在本專利文檔中所描述的流程圖和結構框圖描述了支持所公開結構性裝置的步驟和對應功能的特定方法和/或對應動作。
[0332]所寫的描述闡述了本發明的最佳模式,還提供了描述本發明並使得本領域普通技術人員能夠製造和使用本發明的示例。所寫的描述不將本發明限定到所闡述的精確術語。因此,儘管本發明參考以上所述的示例進行了具體描述,但是,在不背離本發明範圍的情況下,本領域的普通技術人員可以對這些示例進行變更、修改和變化。
【權利要求】
1.一種用於存儲可由處理設備執行的指令的計算機可讀介質,其中指令使處理設備執行以下操作: 在圖形用戶界面中給出多個堆棧元素,每個堆棧元素都對應於一個系統對象; 在圖形用戶界面中給出與所述多個堆棧元素關聯的堆棧項目,該堆棧項目包括堆棧元素的聚集;及 提供對所述堆棧項目的上下文控制。
2.如權利要求1所述的計算機可讀介質,其中: 上下文控制包括應用到堆棧項目的多個模態。
3.如權利要求2所述的計算機可讀介質,其中: 多個模態包括: 第一模態,在該第一模態下堆棧兀素以基本交疊的布置顯不;及 第二模態,在該第二模態下堆棧元素顯示為單式實例。
4.如權利要求3所述的計算機可讀介質,其中: 第一模態和第二模態是切換狀態。
5.如權利要求3所述的計算機可讀介質,其中: 堆棧元素包括窗口實例。
6.如權利要求3所述的計算機可讀介質,其中: 堆棧元素包括外圍設備的表示。
7.如權利要求2所述的計算機可讀介質,其中: 多個模態包括: 第一模態,在該第一模態下堆棧兀素以基本交疊的布置顯不;及 第二模態,在該第二模態下堆棧元素根據可視化模型顯示。
8.如權利要求7所述的計算機可讀介質,其中: 在第二模態下的每個顯示的堆棧元素都是可選擇的。
9.如權利要求8所述的計算機可讀介質,其中: 可視化模型以基本並置方式生成堆棧元素的布置。
10.如權利要求8所述的計算機可讀介質,其中: 可視化模型定義由第一界標和第二界標定義的多維路徑;及 可視化模型沿該多維路徑生成堆棧元素的放置。
11.如權利要求8所述的計算機可讀介質,其中: 每個堆棧元素都包括基於與堆棧元素關聯的系統對象所關聯的數據的唯一標記,其中該標記與堆棧元素一起顯示。
12.如權利要求11所述的計算機可讀介質,其中: 唯一標記包括基於所關聯數據的圖像。
13.如權利要求7所述的計算機可讀介質,其中: 可視化模型是基於堆棧元素的數量而自動選擇的。
14.如權利要求2所述的計算機可讀介質,其中: 上下文控制對堆棧項目和堆棧元素中至少一個的實例化進行控制。
15.如權利要求14所述的計算機可讀介質,其中: 堆棧項目和堆棧元素中至少一個的實例化是基於時間上下文。
16.如權利要求15所述的計算機可讀介質,其中: 時間上下文定義日期範圍; 對應的堆棧項目與每個日期範圍關聯;及 如果與系統對象關聯的相關日期在與堆棧項目關聯的日期範圍之內,則與該系統對象關聯的堆棧元素進一步與堆棧項目關聯。
17.如權利要求16所述的計算機可讀介質,其中: 每個堆棧項目是根據日期範圍進行色彩編碼的。
18.如權利要求14所述的計算機可讀介質,其中: 堆棧項目和堆棧元素中至少一個的實例化是基於應用程式上下文的。
19.如權利要求18所述的計算機可讀介質,其中: 應用程式上下文定義了執行上下文和非執行上下文。
20.如權利要求19所述的計算機可讀介質,其中: 對應的堆棧項目與應用程式系統對象關聯; 與該堆棧項目關聯的對應堆棧元素和與該應用程式系統對象關聯的應用程式文件系統對象關聯;及 對應的堆棧項目在執行上下文過程中顯示。
21.如權利要求20所述的計算機可讀介質,其中: 對應的堆棧項目在非執行上下文過程中被抑制。
22.如權利要求1所述的計算機可讀介質,其中: 每個堆棧元素都對應於一個桌面菜單系統對象。
23.如權利要求1所述的計算機可讀介質,其中: 系統對象包括圖標; 圖形用戶界面包括: 與堆棧項目關聯的包含區域;及 其中圖標在包含區域內的放置生成與該圖標關聯的堆棧元素。
24.如權利要求23所述的計算機可讀介質,其中: 包含區域與堆棧元素一致;及 堆棧元素不在包含區域內的放置使得該堆棧元素與堆棧項目去關聯。
25.如權利要求1所述的計算機可讀介質,其中: 圖形用戶界面包括: 下照明效果,以指示對堆棧項目的選擇。
26.—種計算機實現的方法,包括: 生成多個堆棧元素,每個堆棧元素對應於一個計算機系統對象; 將多個堆棧元素與一個堆棧項目相關聯; 將所述堆棧元素聚集到堆棧項目中;及 提供對堆棧項目的上下文控制。
27.如權利要求26所述的方法,其中: 提供對堆棧項目的上下文控制包括基於多個模態提供對堆棧項目的上下文控制。
28.如權利要求27所述的方法,包括: 在第一模態下以基本交疊的布置顯示所述堆棧元素;及 在第二模態下將所述堆棧元素顯示為單式實例。
29.如權利要求28所述的方法,其中: 第一模態和第二模態是切換狀態;及 堆棧元素包括窗口實例。
30.如權利要求27所述的方法,包括: 在第一模態下以基本交疊的布置顯示所述堆棧元素; 在第二模態下以瀏覽布置顯示所述堆棧元素;及 在第二模態下使得能夠選擇一個堆棧元素。
31.如權利要求30所述的方法,包括: 在第二模態下接收對一個堆棧元素的選擇;及 響應於該選擇,生成啟動與所選堆棧元素關聯的應用程式的指令。
32.如權利要求26所述的方法,包括: 識別與堆棧項目關聯的堆棧元素的數量; 識別多種瀏覽布置 '及 基於堆棧元素的數量來選擇一種瀏覽布置。
33.如權利要求30所述的方法,其中: 以一種瀏覽布置顯示堆棧元素包括: 定義多維路徑; 沿該多維路徑放置堆棧元素的至少一個子集。
34.如權利要求29所述的方法,包括: 識別系統對象數據 '及 基於該系統對象數據,顯示用於每個堆棧元素的唯一標記。
35.如權利要求26所述的方法,其中: 提供對堆棧項目的上下文控制包括: 基於時間上下文來控制堆棧項目和堆棧元素中至少一個的實例化。
36.如權利要求35所述的方法,包括: 定義用於時間上下文的日期範圍; 將對應的堆棧項目與每個日期範圍關聯; 對於每個堆棧元素,確定與每個所關聯的系統對象關聯的日期;及基於與堆棧項目關聯的日期範圍和與每個系統對象關聯的日期,將堆棧元素與堆棧項目關聯。
37.如權利要求36所述的方法,包括: 根據對應的日期範圍,色彩編碼每個堆棧項目。
38.如權利要求26所述的方法,其中: 提供對堆棧項目的上下文控制包括: 基於應用程式上下文來控制堆棧項目和堆棧元素中至少一個的實例化。
39.如權利要求26所述的方法,包括: 將堆棧項目與應用程式系統對象關聯; 進一步將與該應用程式系統對象關聯的堆棧元素和與該應用程式系統對象關聯的堆棧項目關聯 '及 在執行上下文過程中顯示與該應用程式系統對象關聯的堆棧項目。
40.如權利要求26所述的方法,其中: 每個堆棧元素對應於一個桌面菜單系統對象。
41.如權利要求26所述的方法,包括: 生成下照明選擇指示符,以指示所選的堆棧項目。
42.如權利要求26所述的方法,其中: 提供對堆棧項目的上下文控制包括: 基於從多個可視化模型中對一種可視化模型的自動選擇來控制堆棧項目。
43.如權利要求42所述的方法,包括: 識別與堆棧項目關聯的堆棧元素的數量;及 基於該數量,從多個可視化模型中選擇一個可視化模型。
44.如權利要求42所述的方法,包括: 識別與堆棧項目關聯的堆棧元素的類型;及 基於該類型,從多個可視化模型中選擇一個可視化模型。
45.如權利要求26所述的方法,包括: 對堆棧項目應用組關聯;及 提供對堆棧項目的上下文控制包括: 基於根據組關聯對一種交互模型的自動選擇來控制堆棧項目。
46.一種圖形用戶界面,包括: 多個堆棧元素,其中每個堆棧元素對應於一個應用程式,所述多個堆棧元素包括與應用程式文檔文件關聯的文件元素和與可執行應用程式關聯的應用程式元素;及 與多個堆棧元素關聯的堆棧項目,該堆棧項目包括堆棧元素的聚集,該聚集包括應用程式元素的突出放置。
47.如權利要求46所述的圖形用戶界面,其中: 所述聚集包括堆棧項目的交疊顯示。
48.如權利要求47所述的圖形用戶界面,其中: 所述應用程式元素的突出放置包括在交疊顯示之上對應用程式元素的顯示。
49.如權利要求47所述的圖形用戶界面,其中: 所述應用程式元素的突出放置包括應用程式元素相對於文件元素的放大。
50.如權利要求47所述的圖形用戶界面,其中: 所述應用程式元素的突出放置包括: 使得文件元素展現為半透明元素;及 使得應用程式元素展現為不透明元素。
51.一種存儲可由處理設備執行的指令的計算機可讀介質,當執行該指令時,使處理設備在顯示設備上生成圖形用戶界面,所述計算機可讀介質包括: 多個第一裝置,顯示為指示對應的多個系統對象;第二裝置,顯示為指示所述多個第一裝置的集合性關聯?』及用於提供對所顯示的第二裝置和所顯示的多個第一裝置的上下文控制的裝置。
【文檔編號】G06F3/0482GK104182131SQ201410274743
【公開日】2014年12月3日 申請日期:2008年5月30日 優先權日:2007年6月8日
【發明者】I·A·查德裡, J·O·勞琦, C·海納斯, T·W·布姆加德納, E·S·佩頓 申請人:蘋果公司