專利名稱:用于跨接不同用戶界面命令系統(tǒng)的適配器的制作方法
用于跨接不同用戶界面命令系統(tǒng)的適配器為 了提供一致的“外觀和感覺”,軟件提供者可能希望在應(yīng)用程序工具套件內(nèi)的單獨(dú)的應(yīng)用程序工具之間提供一致的用戶界面(UI)。盡管單獨(dú)的應(yīng)用程序工具中的某些可能是用和一致的UI兼容的命令路由(routing)協(xié)議來開發(fā)的,但單獨(dú)的應(yīng)用程序工具中的其它一些可能包括用和一致的UI不兼容的傳統(tǒng)命令路由協(xié)議開發(fā)的“傳統(tǒng)(legacy) ”軟件工具。對于這種UI不兼容問題的一個解決方案是把傳統(tǒng)軟件工具重寫成和一致的UI —起工作。為了在不重寫傳統(tǒng)軟件工具的前提下利用它們,期望有一種將傳統(tǒng)軟件工具和前述的一致的UI相跨接的方法。
發(fā)明內(nèi)容
提供本發(fā)明內(nèi)容以便以簡化形式介紹將在以下的具體實(shí)施方式
中進(jìn)一步描述的概念精選。本概述并非旨在標(biāo)識出所要求保護(hù)的主題的關(guān)鍵特征或必要特征。本概述亦非旨在用于限制所要求保護(hù)的主題的范圍??商峁├脙蓚€不同命令路由協(xié)議的用戶界面。這兩個不同命令路由協(xié)議可包括第一命令路由協(xié)議和第二命令路由協(xié)議。第一命令路由協(xié)議可使用拉模型。第二命令路由協(xié)議可使用推模型。前述概括描述和以下詳細(xì)描述兩者都提供示例且都只是說明性的。因此,前述概括描述和以下詳細(xì)描述不應(yīng)被認(rèn)為是限制性的。此外,除了此處所闡明的那些之外還可提供其他特征或變型。例如,各實(shí)施方式可涉及在詳細(xì)描述中描述的各種特征組合和子組合。
合并在本發(fā)明中并構(gòu)成其一部分的附圖示出本發(fā)明的各種實(shí)施方式。在附圖中圖1是一操作環(huán)境的框圖;圖2示出映射環(huán)境;圖3是用于提供用戶界面跨接的一種方法的流程圖;以及圖4是包括計(jì)算設(shè)備的系統(tǒng)的框圖。
具體實(shí)施例方式以下詳細(xì)描述參考各個附圖。只要可能,就在附圖和以下描述中使用相同的附圖標(biāo)記來指示相同或類似的要素。盡管可能描述了本發(fā)明的各實(shí)施方式,但修改、改編和其他實(shí)現(xiàn)也是可能的。例如,可以對附圖中所示出的要素進(jìn)行置換、添加、或修改,且可以通過對所公開的方法置換、重新排序、或添加階段來修改此處所描述的方法。因此,以下詳細(xì)描述并不限制本發(fā)明。相反,本發(fā)明的正確范圍由所附權(quán)利要求書確定??商峁┙缑婵缃?。和本發(fā)明的實(shí)施例一致,適配器接口可跨接不同的用戶界面 (UI)命令路由協(xié)議(例如,系統(tǒng))。圖1示出操作環(huán)境100。如圖1所示,環(huán)境100可在包括例如顯示器的輸出設(shè)備(例如,以下參考圖4所描述的輸出設(shè)備414中的一個)上顯示。操作環(huán)境100可包括收發(fā)器模塊105、用戶界面模塊110、第一工具模塊115、和第二工具模塊120。用戶界面模塊110可包括但不限于菜單功能區(qū)模塊(例如,以下參照圖2所描述的菜單功能區(qū)模塊205)。用戶界面110可包括多個選項(xiàng)卡125、130、135和140。收發(fā)器模塊105可包括并控制用戶界面模塊110并可知道第一工具模塊115和第二工具模塊120中的哪一個是當(dāng)前活動的。例如當(dāng)用戶將操作環(huán)境100的焦點(diǎn)改變?yōu)榈谝还ぞ吣K115或第二工具模塊120中的相應(yīng)一個時(shí),第一工具模塊115或第二工具模塊120可成為活動工具模塊。 第一工具模塊115可采用第一命令路由協(xié)議而第二工具模塊120可采用第二命令路由協(xié)議。第一命令路由協(xié)議可使用拉模型來組裝其UI命令分級結(jié)構(gòu),而第二路由協(xié)議可使用推模型來組裝其UI命令分級結(jié)構(gòu)。第一命令路由協(xié)議以及用于用戶界面110的路由協(xié)議可以例如用可擴(kuò)展標(biāo)記語言(XML)靜態(tài)地預(yù)定義。然而,當(dāng)命令被同步地推入U(xiǎn)I命令容器(例如,在工具改變時(shí),或當(dāng)焦點(diǎn)改變時(shí))時(shí),第二命令路由協(xié)議可在運(yùn)行時(shí)動態(tài)構(gòu)建。本發(fā)明的實(shí)施例可在原生(native)控制用戶對象在“推”路由協(xié)議中出現(xiàn)和消失時(shí)將“推”路由協(xié)議的原生控制用戶對象重新映射到新的UI命令對象,從而和“拉”路由協(xié)議一起工作。圖2示出映射環(huán)境。如圖2所示,映射環(huán)境200可包括菜單功能區(qū)模塊205、 適配器210、以及活動工具模塊215。菜單功能區(qū)模塊205可包括用戶界面模塊110而活動工具模塊215可包括第一工具模塊115和第二工具模塊120中的一個。菜單功能區(qū)模塊 205可采用第一命令路由協(xié)議而活動工具模塊215可采用第二命令路由協(xié)議。如上所述,第一命令路由協(xié)議可使用拉模型來組裝其UI命令分級結(jié)構(gòu),而第二命令路由協(xié)議可使用推模型來組裝其UI命令分級結(jié)構(gòu)。因此,如參考附圖3所更為詳細(xì)描述的,適配器210可被創(chuàng)建和用于跨接這兩個不同命令路由協(xié)議(例如,推和拉)。圖3是闡明根據(jù)本發(fā)明的一實(shí)施方式的用于提供用戶界面跨接的方法300中所涉及的各概括階段的流程圖。方法300可使用如將在以下參考圖4更詳細(xì)地描述的計(jì)算設(shè)備 400來實(shí)現(xiàn)。以下將更詳細(xì)地描述實(shí)現(xiàn)方法300的各階段的方式。方法300可開始于起始框305并繼續(xù)至階段310,在那里計(jì)算設(shè)備400可響應(yīng)于用戶輸入而激活工具模塊。例如, 用戶可在操作環(huán)境100內(nèi)工作。當(dāng)在操作環(huán)境100內(nèi)工作時(shí),用戶可在第一工具模塊115和第二工具模塊120之間改變操作環(huán)境100的焦點(diǎn)。活動工具模塊可包括第一工具模塊115 活動第二工具模塊120中用戶當(dāng)前正聚焦的一個(例如,活動工具模塊215)。方法300可從階段310 (在此計(jì)算設(shè)備400響應(yīng)于用戶輸入激活工具模塊(例如活動工具模塊215))前進(jìn)至階段320,在此計(jì)算設(shè)備400可由活動工具模塊215把和活動工具模塊215對應(yīng)的至少一個工具命令推入容器。例如,活動工具模塊215可采用“推”命令路由協(xié)議。換言之,當(dāng)命令被同步地推入U(xiǎn)I命令容器時(shí),活動工具模塊215中的命令可在活動工具模塊215的運(yùn)行時(shí)被動態(tài)地構(gòu)建。一旦計(jì)算設(shè)備400在階段320中由活動工具模塊215將對應(yīng)于活動工具模塊215 的至少一個工具命令推入容器,則方法300可繼續(xù)到階段330,在此計(jì)算設(shè)備400可由收發(fā)器模塊300基于活動工具模塊215而選擇菜單功能區(qū)模塊205。例如,收發(fā)器模塊105可包括并控制菜單功能區(qū)模塊205(例如,用戶界面模塊110)并可知道第一工具模塊115和第二工具模塊120中的哪一個是活動工具模塊215。因?yàn)槭瞻l(fā)器模塊105可知道哪個工具模塊是被激活的,所以收發(fā)器模塊105可知道活動工具模塊215應(yīng)該在菜單功能區(qū)模塊205 中顯示什么選項(xiàng)卡。在計(jì)算設(shè)備400在階段330中將對應(yīng)于活動工具模塊215的至少一個工具命令推入容器后,方法300可繼續(xù)到階段340,在此計(jì)算設(shè)備400可從菜單功能區(qū)模塊205向活動工具模塊215發(fā)送定義對應(yīng)于菜單功能區(qū)模塊205的功能區(qū)上的哪些選項(xiàng)卡(例如,多個選項(xiàng)卡125、130、135、140)應(yīng)是活動的(例如,可見的)的請求。例如,盡管收發(fā)器模塊105 可能知道對于給定情形要顯示哪個功能區(qū),但其可能不知道多個選項(xiàng)卡125、130、135、140 中的哪些要為可視的。因此,菜單功能區(qū)模塊205可詢問活動工具模塊215哪些選項(xiàng)卡要為可視的。方法300可從階段340 (在此計(jì)算設(shè)備400發(fā)送定義功能區(qū)上哪些選項(xiàng)卡應(yīng)為活動的請求)前進(jìn)到階段350,在此計(jì)算設(shè)備400可在菜單功能區(qū)模塊205處從活動工具模塊 215接收指示對應(yīng)于菜單功能區(qū)模塊205的功能區(qū)上哪些選項(xiàng)卡應(yīng)為活動的響應(yīng)。例如,響應(yīng)于來自菜單功能區(qū)模塊205的請求,活動工具模塊215可向菜單功能區(qū)模塊205指示,對于給定情形,多個選項(xiàng)卡125、130、135及140中的哪些要為可視。一旦計(jì)算設(shè)備400在階段350中接收了指示對應(yīng)于菜單功能區(qū)模塊205的功能區(qū)上哪些選項(xiàng)卡應(yīng)為活動的響應(yīng),方法300可繼續(xù)到階段360,在此計(jì)算設(shè)備400可從菜單功能區(qū)模塊205向適配器創(chuàng)建模塊420發(fā)送創(chuàng)建至少一個適配器210的請求。適配器210可被配置為在容器中的至少一個工具命令以及可存在于選項(xiàng)卡上的至少一個原生功能區(qū)命令之間進(jìn)行轉(zhuǎn)換。在響應(yīng)中所述至少一個選項(xiàng)卡可被指示為應(yīng)為活動的(例如,可視的) 選項(xiàng)卡。因?yàn)椴藛喂δ軈^(qū)模塊205可采用不同于活動工具模塊215的命令路由協(xié)議,所以這兩個命令路由協(xié)議之間可能存有差距。為了跨接該差距,適配器創(chuàng)建模塊420可被用于創(chuàng)建適配器210。適配器210可在活動模塊215的命令對象出現(xiàn)和消失時(shí),將活動工具模塊 215的原生功能區(qū)控制用戶對象重映射到新的UI命令對象。在計(jì)算設(shè)備400在階段360中發(fā)送創(chuàng)建適配器210的請求后,方法300可前進(jìn)到階段370,此處計(jì)算設(shè)備400可由適配器創(chuàng)建模塊420創(chuàng)建適配器210。例如,如上所述,菜單功能區(qū)模塊205可采用第一命令路由協(xié)議而活動工具模塊215可采用第二命令路由協(xié)議。第一命令路由協(xié)議可使用拉模型來組裝其UI命令分級結(jié)構(gòu),而第二命令路由協(xié)議可使用推模型來組裝其UI命令分級結(jié)構(gòu)。因此,可創(chuàng)建適配器210以跨接這兩個不同的命令路由協(xié)議(例如,推和拉)。特別地,活動工具模塊215的命令對象可利用統(tǒng)一資源定位符 (URL)。菜單功能區(qū)模塊205可采用標(biāo)識多個選項(xiàng)卡125、130、135和140之一的工具條控制ID (Tl⑶)。因此,適配器210可將活動工具模塊215的URL映射到菜單功能區(qū)模塊205 的 TICD。一旦計(jì)算設(shè)備400在階段370創(chuàng)建了適配器210,方法300可繼續(xù)到階段380,在此計(jì)算設(shè)備400可使用適配器210在容器中的至少一個工具命令和可存在于選項(xiàng)卡上的原生功能區(qū)命令之間轉(zhuǎn)換。例如,適配器210可被用于在活動工具模塊215的命令對象出現(xiàn)和消失時(shí),將活動工具模塊215的原生功能區(qū)控制用戶對象重映射到新的UI命令對象。一旦計(jì)算設(shè)備400在階段380使用適配器210進(jìn)行轉(zhuǎn)換,方法300然后就可在階段390處結(jié)束ο根據(jù)本發(fā)明的一實(shí)施例可包括用于提供用戶界面跨接的系統(tǒng)。該系統(tǒng)可包括存儲器存儲和耦合到該存儲器存儲的處理單元。處理單元可操作用于由兩個不同的命令路由協(xié)議提供用戶界面。兩個不同命令路由協(xié)議可包括使用拉模型的第一命令路由協(xié)議和使用推模型的第二命令路由協(xié)議。根據(jù)本發(fā)明的另一實(shí)施例可包括用于提供用戶界面跨接的系統(tǒng)。該系統(tǒng)可包括存儲器存儲和耦合到該存儲器存儲的處理單元。處理單元可操作用于由兩個不同的命令路由協(xié)議創(chuàng)建用戶界面。兩個不同命令路由協(xié)議可包括使用拉模型的第一命令路由協(xié)議和使用推模型的第二命令路由協(xié)議。此外,處理單元可操作用于顯示該用戶界面。根據(jù)本發(fā)明的又一實(shí) 施例可包括用于提供用戶界面跨接的系統(tǒng)。該系統(tǒng)可包括存儲器存儲和耦合到該存儲器存儲的處理單元。處理單元可操作用于由收發(fā)器模塊基于活動工具模塊來選擇菜單功能區(qū)模塊。此外,處理單元可操作用于從菜單功能區(qū)模塊向工具模塊發(fā)送定義對應(yīng)于菜單功能區(qū)模塊的功能區(qū)上的哪些選項(xiàng)卡應(yīng)為活動的請求。此外,處理單元可操作用于在菜單功能區(qū)模塊接收來自工具模塊的指示對應(yīng)于菜單功能區(qū)模塊的功能區(qū)上的哪些選項(xiàng)卡應(yīng)為活動的響應(yīng)。此外,處理單元可操作用于從菜單功能區(qū)模塊向適配器創(chuàng)建模塊發(fā)送創(chuàng)建至少一個適配器的請求,該適配器配置為在容器內(nèi)的至少一個工具命令和可存在于選項(xiàng)卡上的原生功能區(qū)命令之間進(jìn)行轉(zhuǎn)換。在響應(yīng)中所述至少一個選項(xiàng)卡可被指示為應(yīng)為活動的選項(xiàng)卡。并且,該處理單元可操作用于由適配器創(chuàng)建模塊創(chuàng)建該至少一個適配器。圖4是包括計(jì)算設(shè)備400的系統(tǒng)的框圖。根據(jù)本發(fā)明的一個實(shí)施例,上述存儲器存儲和處理單元可以在諸如圖4的計(jì)算設(shè)備400等計(jì)算設(shè)備中實(shí)現(xiàn)??梢允褂糜布?、軟件或固件的任何合適的組合來實(shí)現(xiàn)該存儲器存儲和處理單元。例如,存儲器存儲和處理單元可以用計(jì)算設(shè)備400或結(jié)合計(jì)算設(shè)備400的其他計(jì)算設(shè)備418中的任意一個來實(shí)現(xiàn)。根據(jù)本發(fā)明的各實(shí)施例,上述系統(tǒng)、設(shè)備和處理器是示例,而其他系統(tǒng)、設(shè)備和處理器可以包括上述存儲器存儲和處理單元。此外,計(jì)算設(shè)備400可包括用于上述系統(tǒng)100的操作環(huán)境。系統(tǒng)100可以在其他環(huán)境中操作并且不限于計(jì)算設(shè)備400。參考圖4,根據(jù)本發(fā)明的一實(shí)施方式的系統(tǒng)可包括計(jì)算設(shè)備,諸如計(jì)算設(shè)備400。 在一基本配置中,計(jì)算設(shè)備400可以包括至少一個處理單元402和系統(tǒng)存儲器404。取決于計(jì)算設(shè)備的配置和類型,系統(tǒng)存儲器404可以包括,但不限于,易失性存儲器(例如,隨機(jī)存取存儲器(RAM))、非易失性存儲器(例如,只讀存儲器(ROM))、閃存或任何組合。系統(tǒng)存儲器404可包括操作系統(tǒng)405、一個或多個編程模塊406,且可包括程序數(shù)據(jù)407。操作系統(tǒng)405,例如,可適用于控制計(jì)算設(shè)備400的操作。在一個實(shí)施例中,編程模塊406可包括, 例如,收發(fā)器模塊105、第一工具模塊115、第二工具模塊120、菜單功能區(qū)模塊205、適配器 210、或適配器創(chuàng)建模塊420。此外,本發(fā)明的各實(shí)施方式可以結(jié)合圖形庫、其他操作系統(tǒng)、或任何其他應(yīng)用程序來實(shí)踐,且不限于任何特定應(yīng)用程序或系統(tǒng)。該基本配置在圖4中由虛線408內(nèi)的組件示出。計(jì)算設(shè)備400可具有附加特征或功能。例如,計(jì)算設(shè)備400還可包括附加數(shù)據(jù)存儲設(shè)備(可移動和/或不可移動),諸如例如磁盤、光盤或磁帶。這些附加存儲在圖4中由可移動存儲409和不可移動存儲410示出。計(jì)算機(jī)存儲介質(zhì)可包括以用于存儲諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。系統(tǒng)存儲器404、可移動存儲409和不可移動存儲410都是計(jì)算機(jī)存儲介質(zhì)的示例(即,存儲器存儲)。計(jì)算機(jī)存儲介質(zhì)可以包括,但不限于,RAM、ROM、 電可擦除只讀存儲器(EEPROM)、閃存或其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或可用于存儲信息且可以由計(jì)算設(shè)備400訪問的任何其它介質(zhì)。任何這樣的計(jì)算機(jī)存儲介質(zhì)可以是設(shè)備400的一部分。計(jì)算設(shè)備400還可以具有輸入設(shè)備412,如鍵盤、鼠標(biāo)、筆、聲音輸入設(shè)備、觸摸輸入設(shè)備等。還可包括諸如顯示器、揚(yáng)聲器、打印機(jī)等輸出設(shè)備414。上述設(shè)備是示例且可以使用其他設(shè)備計(jì)算設(shè)備400還可包含可允許設(shè)備400諸如通過例如內(nèi)聯(lián)網(wǎng)或因特網(wǎng)等分布式計(jì)算環(huán)境中的網(wǎng)絡(luò)來與其他計(jì)算設(shè)備416進(jìn)行通信的通信連接418。通信連接416是通信介質(zhì)的一個示例。通信介質(zhì)通常由諸如載波或其他傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)來體現(xiàn),并包括任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”可以描述以對該信號中的信息進(jìn)行編碼的方式設(shè)定或者改變其一個或多個特征的信號。作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接等有線介質(zhì),以及諸如聲學(xué)、射頻(RF)、紅外線和其他無線介質(zhì)等無線介質(zhì)。如此處所使用的術(shù)語計(jì)算機(jī)可讀介質(zhì)可以包括存儲介質(zhì)和通信介質(zhì)兩者。如上所述,可以在系統(tǒng)存儲器404中存儲包括操作系統(tǒng)405在內(nèi)的多個程序模塊和數(shù)據(jù)文件。當(dāng)在處理單元402上執(zhí)行時(shí),編程模塊406(例如、收發(fā)器模塊105、用戶界面模塊110、第一工具模塊115、第二工具模塊120、菜單功能區(qū)模塊205、適配器210、或適配器創(chuàng)建模塊420)可執(zhí)行包括例如如上所述的方法300的一個或多個階段的過程。前述過程是示例,且處理單元402可執(zhí)行其他過程。根據(jù)本發(fā)明的各實(shí)施方式可以使用的其他編程模塊可以包括電子郵件和聯(lián)系人應(yīng)用程序、文字處理應(yīng)用程序、電子表格應(yīng)用程序、數(shù)據(jù)庫應(yīng)用程序、幻燈片演示應(yīng)用程序、繪圖或計(jì)算機(jī)輔助應(yīng)用程序等。一般而言,根據(jù)本發(fā)明的各實(shí)施方式,程序模塊可以包括可以執(zhí)行特定任務(wù)或可以實(shí)現(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其他類型的結(jié)構(gòu)。此外,本發(fā)明的各實(shí)施方式可用其他計(jì)算機(jī)系統(tǒng)配置來實(shí)踐,包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)或可編程消費(fèi)電子產(chǎn)品、小型機(jī)、大型計(jì)算機(jī)等。本發(fā)明的各實(shí)施方式也可以在其中任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計(jì)算環(huán)境中實(shí)現(xiàn)。在分布式計(jì)算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲器存儲設(shè)備中。此外,本發(fā)明的各實(shí)施方式可在包括分立電子元件的電路、包含邏輯門的封裝或集成電子芯片、利用微處理器的電路、或在包含電子元件或微處理器的單個芯片上實(shí)現(xiàn)。本發(fā)明的各實(shí)施方式還可以使用能夠執(zhí)行諸如,例如,AND(與)、0R(或)和NOT(非)等邏輯運(yùn)算的其他技術(shù)來實(shí)踐,包括但不限于,機(jī)械、光學(xué)、流體和量子技術(shù)。另外,本發(fā)明的各實(shí)施方式可以在通用計(jì)算機(jī)或任何其他電路或系統(tǒng)中實(shí)現(xiàn)。例如,本發(fā)明的各實(shí)施方式可被實(shí)現(xiàn)為計(jì)算機(jī)進(jìn)程(方法)、計(jì)算系統(tǒng)或諸如計(jì)算機(jī)程序產(chǎn)品或計(jì)算機(jī)可讀介質(zhì)等制品。計(jì)算機(jī)程序產(chǎn)品可以是計(jì)算機(jī)系統(tǒng)可讀并編碼了用于執(zhí)行計(jì)算機(jī)進(jìn)程的指令的計(jì)算機(jī)程序的計(jì)算機(jī)存儲介質(zhì)。計(jì)算機(jī)程序產(chǎn)品還可以是計(jì)算系統(tǒng)可讀并編碼了用于執(zhí)行計(jì)算機(jī)進(jìn)程的指令的計(jì)算機(jī)程序的載體上的傳播信號。因此, 本發(fā)明能以硬件和/或軟件(包括固件、常駐軟件、微碼等)來具體化。換言之,本發(fā)明的各實(shí)施方式可以采用其上包含有供指令執(zhí)行系統(tǒng)使用或結(jié)合其使用的計(jì)算機(jī)可使用或計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可使用或計(jì)算機(jī)可讀存儲介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品的形式。計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是可包含、存儲、通信、傳播、或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或結(jié)合其使用的任何介質(zhì)。計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是,例如,但不限于,電、磁、光、電磁、紅外、 或半導(dǎo)體系統(tǒng)、裝置、設(shè)備或傳播介質(zhì)。更具體的計(jì)算機(jī)可讀介質(zhì)示例(非窮盡列表),計(jì)算機(jī)可讀介質(zhì)可以包括以下具有一條或多條導(dǎo)線的電連接、便攜式計(jì)算機(jī)盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPR0M或閃存)、光纖、和便攜式壓縮盤只讀存儲器(CD-ROM)。注意,計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)甚至可以是其上打印有程序的紙張或另一合適的介質(zhì),因?yàn)槌绦蚩梢越?jīng)由例如對紙張或其他介質(zhì)的光學(xué)掃描而電子地捕獲,隨后如有必要被編譯、解釋,或以其他合適的方式處理,并隨后存儲在計(jì)算機(jī)存儲器中。以上參考例如根據(jù)本發(fā)明的各實(shí)施方式的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品的框圖和 /或操作圖示描述了本發(fā)明的各實(shí)施方式??蛑兴⒚鞯母鞴δ?動作可以按不同于任何流程圖所示的次序出 現(xiàn)。例如,取決于所涉及的功能/動作,連續(xù)示出的兩個框?qū)嶋H上可以基本上同時(shí)執(zhí)行,或者這些框有時(shí)可以按相反的次序來執(zhí)行。盡管已經(jīng)描述了本發(fā)明的某些實(shí)施方式,但也可能存在其他實(shí)施方式。此外,雖然本發(fā)明的各實(shí)施方式被描述為與存儲在存儲器和其他存儲介質(zhì)中的數(shù)據(jù)相關(guān)聯(lián),但數(shù)據(jù)還可以被存儲在或讀取自其他類型的計(jì)算機(jī)可讀介質(zhì),如輔助存儲設(shè)備,像硬盤、軟盤、或 CD-ROM ;來自因特網(wǎng)的載波;或其他形式的RAM或ROM。此外,所公開的各方法的各階段可以按任何方式來修改,包括通過對各階段重新排序和/或插入或刪除階段,而不背離本發(fā)明。包括此處所包括的代碼中的版權(quán)在內(nèi)的所有權(quán)利都?xì)w屬于申請人并且是本申請人的財(cái)產(chǎn)。申請人保持并保留此處所包括的代碼中的所有權(quán)利,并授予僅關(guān)于所授權(quán)的專利的再現(xiàn)且未出于其他目的再現(xiàn)該材料的許可。雖然本說明書包括各示例,但本發(fā)明的范圍由所附權(quán)利要求書來指示。此外,盡管用對結(jié)構(gòu)特征和/或方法動作專用的語言描述了本說明書,但權(quán)利要求書并不限于上述特征或動作。相反,上述具體特征和動作是作為本發(fā)明的各實(shí)施方式的示例來公開的。
權(quán)利要求
1.一種用于提供用戶界面跨接的系統(tǒng),該系統(tǒng)包括存儲器存儲(404);以及耦合至所述存儲器存儲(404)的處理單元(402),其中所述處理單元(402)可操作用于由兩個不同命令路由協(xié)議提供用戶界面,所述兩個不同命令路由協(xié)議包括使用拉模型的第一命令路由協(xié)議和使用推模型的第二命令路由協(xié)議。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述處理單元(402)可操作用于顯示所述用戶界面。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述處理單元(402)可操作用于顯示所述用戶界面,該用戶界面包括具有多個選項(xiàng)卡(125、130、135、140)的功能區(qū)。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一命令路由協(xié)議是靜態(tài)地預(yù)定義的。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第一命令路由協(xié)議是用可擴(kuò)展標(biāo)記語言(XML)靜態(tài)地預(yù)定義的。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第二命令路由協(xié)議是在運(yùn)行時(shí)動態(tài)地構(gòu)建的。
7.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述第二命令路由協(xié)議是在命令被同步地推入用戶界面命令容器中時(shí)在運(yùn)行時(shí)動態(tài)地構(gòu)建的。
8.一種用于提供用戶界面跨接的方法,該方法包括由收發(fā)器模塊(105)基于被激活的工具模塊(115、120、215)選擇(330)菜單功能區(qū)模塊(205);從所述菜單功能區(qū)模塊(205)向所述工具模塊(115、120、215)發(fā)送(340)定義對應(yīng)于所述菜單功能區(qū)模塊(205)的功能區(qū)上的哪些選項(xiàng)卡(125、130、135、140)應(yīng)為活動的請求;在所述菜單功能區(qū)模塊(205)接收(350)來自所述工具模塊(115、120、215)的指示對應(yīng)于所述菜單功能區(qū)模塊(205)的功能區(qū)上的哪些選項(xiàng)卡(125、130、135、140)應(yīng)為活動的響應(yīng);從所述菜單功能區(qū)模塊(205)向適配器創(chuàng)建模塊(420)發(fā)送(360)創(chuàng)建至少一個適配器(210)的請求,該適配器配置為在容器內(nèi)的至少一個工具命令和所述功能區(qū)上的至少一個選項(xiàng)卡之間進(jìn)行轉(zhuǎn)換(380),所述至少一個選項(xiàng)卡在所述響應(yīng)中被指示為應(yīng)為活動的選項(xiàng)卡;以及由所述適配器創(chuàng)建模塊(420)創(chuàng)建(370)所述至少一個適配器(210)。
9.如權(quán)利要求8所述的方法,其特征在于,還包括響應(yīng)于用戶輸入而激活(310)所述工具模塊(115、120、215)。
10.如權(quán)利要求9所述的方法,其特征在于,還包括響應(yīng)于被激活,由所述工具模塊 (115,120,215)將對應(yīng)于所述工具模塊(115、120、215)的所述至少一個工具命令推(320) 入所述容器。
11.如權(quán)利要求8所述的方法,其特征在于,還包括使用所述至少一個適配器(210)在所述容器內(nèi)的所述至少一個工具命令和在所述選項(xiàng)卡上存在的所述至少一個本機(jī)功能區(qū)命令之間進(jìn)行轉(zhuǎn)換(380)。
12.如權(quán)利要求8所述的系統(tǒng),其特征在于,創(chuàng)建(370)所述至少一個適配器(210)包括在兩個不同的命令路由協(xié)議之間映射,該兩個不同的命令路由協(xié)議包括使用推模型的第一命令路由協(xié)議和使用拉模型的第二命令路由協(xié)議。
13.如權(quán)利要求12所述的方法,其特征在于,創(chuàng)建(370)所述至少一個適配器(210)包括創(chuàng)建所述至少一個適配器(210),其中第一命令路由協(xié)議是靜態(tài)地預(yù)定義的。
14.如權(quán)利要求12所述的方法,其特征在于,創(chuàng)建(370)所述至少一個適配器(210)包括創(chuàng)建所述至少一個適配器(210),其中第二命令路由協(xié)議是在運(yùn)行時(shí)動態(tài)地構(gòu)建的。
15.如權(quán)利要求14所述的方法,其特征在于,創(chuàng)建(370)所述至少一個適配器(210)包括創(chuàng)建所述至少一個適配器(210),其中第二命令路由協(xié)議是在命令被同步地推入到所述容器中時(shí)在運(yùn)行時(shí)動態(tài)地構(gòu)建的。
全文摘要
可提供利用兩個不同命令路由協(xié)議的用戶界面。這兩個不同命令路由協(xié)議可包括第一命令路由協(xié)議和第二命令路由協(xié)議。第一命令路由協(xié)議可使用拉模型。第二命令路由協(xié)議可使用推模型。第一命令路由協(xié)議可用可擴(kuò)展標(biāo)記語言(XML)來靜態(tài)地預(yù)定義。第二命令路由協(xié)議可在命令被同步地推入用戶界面命令容器中時(shí)在運(yùn)行時(shí)動態(tài)地構(gòu)建。用戶界面可被顯示,其中包括具有多個選項(xiàng)卡的功能區(qū)。
文檔編號G06F9/06GK102246138SQ200980150049
公開日2011年11月16日 申請日期2009年11月6日 優(yōu)先權(quán)日2008年12月10日
發(fā)明者U·穆勒 申請人:微軟公司