復合控件的制作方法
【專利摘要】一種包括編碼在計算機存儲介質上的計算機程序的用于指定復合控件的方法、系統以及設備。方法之一包括識別第一應用程序。所述方法包括顯示畫布。所述方法包括在畫布上顯示與第一應用程序相關聯的第一顯示對象。所述方法包括識別第二應用程序,第二應用程序是計算機可執行程序。所述方法包括在用戶界面上顯示與第二應用程序相關聯的第二顯示對象。所述方法包括響應于使第二顯示對象與第一顯示對象相關聯的用戶動作而配置第一應用程序以調用第二應用程序。所述方法包括創建第三顯示對象,第三顯示對象包括第一選擇器對象集合和第二選擇器對象集合。
【專利說明】
復合控件
技術領域
[0001]本說明書涉及圖形用戶接口。
【背景技術】
[0002]圖形用戶接口(GUI)使得用戶能夠經由圖形圖標和視覺指示來與計算機或類似裝置進行交互。用戶可以通過與顯示器上所呈現的圖形圖標進行交互來與GUI進行交互。GUI可以用于使得用戶能夠向數據處理系統提供數據值。
[0003]復雜的計算通常可以通過(被稱為“數據流圖”的)有向圖表示為數據流,其中計算的組件與圖的頂點相關聯并且組件之間的數據流與圖的鏈接(弧、邊)相對應。這些組件可以包括:數據處理組件,用于在一個或多個輸入端口處接收數據,處理該數據,并且從一個或多個輸出端口提供該數據;以及數據集組件,其用作數據流的源(source)或宿(sink)。可以使用參數來配置數據流圖。在美國專利5,966,072 “EXECUTING COMPUTAT1NS EXPRESSEDAS GRAPHS”中說明了實現這種基于圖的計算的系統。
【發明內容】
[0004]通常,本說明書中所述的主題的一個創新方面可以采用如下方法來實施,所述方法包括用于識別第一應用程序的動作,所述第一應用程序是計算機可執行程序。所述方法包括用于在用戶界面中顯示用于顯示一個或多個顯示對象的畫布的動作。所述方法包括用于在所述畫布中顯示與所述第一應用程序相關聯的第一顯示對象的動作,其中,所述第一顯示對象包括第一選擇器對象集合并且包括所述第一選擇器對象集合與所述第一應用程序的一個或多個參數之間的映射。所述方法包括用于識別第二應用程序的動作,所述第二應用程序是計算機可執行程序。所述方法包括用于在所述用戶界面中顯示與所述第二應用程序相關聯的第二顯示對象的動作,其中,所述第二顯示對象包括第二選擇器對象集合并且包括所述第二選擇器對象集合與所述第二應用程序的一個或多個參數之間的映射。所述方法包括用于響應于使所述第二顯示對象與所述第一顯示對象相關聯的用戶動作而配置所述第一應用程序以調用所述第二應用程序的動作。所述方法包括用于創建第三顯示對象的動作,所述第三顯示對象包括所述第一選擇器對象集合和所述第二選擇器對象集合。
[0005]該方面的其它實施例包括各自用于進行所述方法的動作的相應的計算機系統、設備以及一個或多個計算機存儲裝置上所記錄的計算機程序。一個或多個計算機的系統可以被配置為通過具有系統上所安裝的軟件、固件、硬件或它們的組合來進行特定動作,其中,所述一個或多個計算機在工作中使該系統進行所述動作。一個或多個計算機程序可以被配置為通過包括指令來進行特定動作,其中所述指令在由數據處理設備執行的情況下使所述設備進行所述動作。
[0006]上述實施例和其它實施例可以各自可選地單獨或以組合的方式包括一個或多個以下特征。所述方法可以包括用于從文件讀取所述第二顯示對象的動作。所述方法可以包括生成用于使用所述用戶界面來配置所述第一應用程序和所述第二應用程序的第三應用程序的動作。所述第三應用程序可以包括第一顯示對象和第二顯示對象。改變與所述第一顯示對象相關聯的值可以改變與所述第二顯示對象相關聯的值。所述第一應用程序可以是第一數據流圖并且可配置的所述第二應用程序可以是第二數據流圖。使所述第二應用程序與所述第一應用程序相關聯包括配置所述第一數據流圖以執行所述第二數據流圖。
[0007]方面可以包括一個或多個以下優點。與傳統方法相比,可以更容易設計并維護圖形用戶接口。可以更容易配置數據流圖以調用并執行其它數據流圖。針對復合控件的改變可以獨立于針對其它控件或用戶界面的改變。可以創建并優化標準控件以提高性能。控件可以包括嵌入式邏輯。在不同界面中重復使用控件可以使得能夠重復使用嵌入式邏輯。
[0008]根據以下說明、以及根據權利要求書,本發明的其它特征和優點將變得明顯。
【附圖說明】
[0009]圖1示出復合控件的示例。
[0010]圖2示出用于創建并使用復合控件的示例性數據處理系統。
[0011]圖3A示出數據流圖和參數的示例。
[0012]圖3B示出用于設置諸如可配置數據流圖等的可配置應用程序有關的參數的示例性配置界面。
[0013]圖4示出用于創建以GUI控件為焦點的配置界面的構建器界面400的示例。
[0014]圖5示出使用復合控件使數據流圖與其它數據流圖相關聯。
[0015]圖6是用于使用復合顯示元素來配置應用程序的示例處理的流程圖。
【具體實施方式】
[0016]圖1示出復合控件的示例。圖形用戶接口(GUI)開發環境100可以包括控件的面板102。面板102包括可以從面板中選擇并添加至界面的一個或多個控件。例如,面板102包括文本框表不104、下拉列表框表不106、列表框表不108和復合控件表不110。
[0017]通過從面板102中選擇表示,GUI設計者可以將相應的控件放置在畫布(canvas)130上。如這里所使用的,畫布是保持各種繪制元素(線、形狀、文本、包含其它元素的框、控件、標簽等)的容器。一些實現還定義空間表示并且使得用戶能夠經由圖形用戶接口與元素進行交互。GUI開發環境可以創建用戶可訪問的應用程序、網頁或類似呈現機制,以使得在設計和編輯處理期間畫布上所顯示的控件與執行應用程序或訪問網頁時的控件的呈現在外觀上非常相似。
[0018]在本示例中,從面板102中選擇文本框表示104并且將文本框表示104放置在畫布130上,以創建地址文本框114。類似地,從面板102中選擇文本框表示104并且將文本框表示104放置在畫布130上,以創建城市文本框116。
[0019]選擇復合控件表示110并將復合控件表示110放置在畫布130上,這樣生成復合控件118。通常,復合控件包含一個或多個基本控件。例如,復合控件118包括國家下拉列表框120和州下拉列表框122。復合控件還可以包含一個或多個其它復合控件。
[0020]復合控件還可以包括可執行邏輯。該邏輯可以涉及基本控件之間的交互。例如,國家下拉列表框120可以包括不同國家的列表。復合控件118可以包括如下的編程邏輯:在用戶從國家下拉列表框120中選擇值的情況下,使得利用適當的州/省的列表來填充州下拉列表框122。例如,在國家下拉列表框120中選擇“美國”,這使得利用美國的州的列表來填充州下拉列表框。類似地,在國家下拉列表框120中選擇“加拿大”,這使得利用加拿大的省和地區來填充州下拉列表框。還可以發生其它改變。例如,標簽124可以從“州:”改變為“省/地區”。
[0021]在一些實現中,復合控件還可以接受參數。這些參數例如可以是與復合控件中的基本控件相關聯的參數。這些參數還可以作為整體特定于復合控件。例如,GUI設計者能夠針對國家下拉列表框和州下拉列表框設置用以識別查找表或其它數據源的參數。可選地,GUI設計者可以提供例如詞典數據類型或散列表的供給所請求的值的數據結構。
[0022]在一些實現中,復合控件可以包括針對可以使用控件的環境的限制。例如,一些復合控件可以被配置為僅允許處于彈出窗口中或者僅存在于主顯示窗口中。
[0023]在一些實現中,可以在GUI開發環境中創建復合控件。例如,GUI設計者可以選擇將項目作為復合控件保存在畫布上。復合控件可以保存為GUI開發環境可訪問的單獨文件。
[0024]圖2示出用于創建并使用復合控件的示例性數據處理系統200。系統200包括數據源202,其中該數據源202可以包括諸如存儲裝置或者至線上數據流的連接等的一個或多個數據的源,其中該一個或多個數據的源各自可以以各種存儲格式(例如,數據庫表、電子表格文件、非結構文本(flat text)文件或大型機所使用的原本格式)中的任何類型的存儲格式來存儲數據。執行環境204包括圖配置模塊206和用戶接口模塊212。執行環境204例如可以在諸如UNIX操作系統等的適當的操作系統的控制下安裝在一個或多個通用計算機上。例如,執行環境204可以包括包含使用多個中央處理單元(CPU)的計算機系統的結構的多節點并行計算環境,可以是本地的(例如,諸如SMP計算機等的多處理器系統)或本地分布式的(例如,作為集群所連接的多個處理器或MPP)、或者遠程或遠程分布式的(例如,經由局域網(LAN)和/或廣域網(WAN)連接的多個處理器)、或者它們的任何組合。
[0025]如以下更詳細所述,圖配置模塊206改變數據流圖的配置。用戶接口模塊212向用戶220顯示配置信息并且從用戶220接收配置動作。用戶接口模塊212還與基于用戶220的動作來配置數據流圖的圖配置模塊206進行通信。例如,數據流圖可以存儲在數據源202中。提供數據源202的存儲裝置相對于執行環境204可以是本地的,例如,可以存儲在連接至運行執行環境204的計算機的存儲介質(例如,硬盤驅動器208)上,或者相對于執行環境204可以是遠程的,例如,安裝在經由局域數據網絡或廣域數據網絡與運行執行環境204的計算機進行通信的遠程系統(例如,大型機210)上。
[0026]執行環境204與包含用戶接口模塊212用來顯示用戶界面所使用的信息的數據存儲系統216進行通信。開發環境218也可以訪問數據存儲系統216,其中在開發環境218中,開發者220能夠開發用戶界面,并且這些開發界面被存儲在數據存儲系統216中并且由用戶接口模塊212使用來顯示用戶界面。
[0027]在一些實現中,數據源202是用于開發作為數據流圖的應用程序的系統,其中數據流圖包括頂點(組件或數據集),并且這些頂點通過頂點之間的有向鏈接(directed link)(表示工作元素的流)相連接。例如,在通過引用包含于此的標題為“MANAGING PARAMETERSFOR GRAPH-BASED APPLICAT1NS”的美國專利公開號2007/0011668中更詳細地說明了這種環境。
[0028]可以將數據流圖視為在處理來自一個或多個數據源的數據的數據流圖執行環境內所執行的計算機程序。根據數據流圖來操作并處理來自數據源的數據并且將這些數據導出至一個或多個數據宿。數據源和數據宿例如可以包括文件、數據庫、數據流或隊列。將數據流圖表示為包括如下節點的有向圖:表示各自包括用于處理來自至少一個數據輸入的數據并向至少一個數據輸出提供數據的代碼的數據處理組件的節點、以及表示用于訪問數據源和/或宿的數據集對象的節點。這些節點利用源自于數據源且終止于數據宿的表示組件之間的數據的流動的有向鏈接相連接。上游組件的數據輸出端口連接至下游組件的數據輸入端口。這些數據流圖可以重復用于利用數據集對象所表示的不同數據源和不同數據宿。例如,用于實現數據流圖的數據結構和程序代碼可以通過被參數化以使得能夠容易地替換不同的源和宿,來支持多個不同的配置。此外,在一些設置中,可以通過使用參數來改變數據流圖的流,以使得可以繞過某一組件或一系列組件。通常,參數表示可以配置或改變的數據流圖的屬性。屬性的示例是“輸入文件”,其中該“輸入文件”的值標識用作數據流圖的數據源的數據文件。該屬性可以在數據流圖的使用之間改變,并且作為該變化的結果,數據流圖可以以不同的方式進行操作。數據流圖可以被配置為:在編譯時,通過改變圖預編譯來進行特定動作,或者在運行時,通過設置數據流圖所使用的參數或改變數據流圖所使用的配置文件來進行特定動作。
[0029]例如,參考圖3A,數據流圖302可以包括數據源306a、306b、組件308a?C、圖接口組件310和數據宿312。源、組件和宿各自可以與參數的集合304a?f相關聯。一個源、組件或宿所用的參數可以用來評價不同的源、組件或宿所用的參數。在本示例中,源306a、306b連接至組件308a、308c的輸入端口。組件308a的輸出端口連接至組件308b的輸入端口,并且圖接口組件310的輸出端口連接至數據宿312。源、組件和宿之間的連接定義數據流。
[0030]圖接口組件310是使得圖能夠在執行時動態地執行其它圖的圖的組件。例如,在執行數據流圖302時,圖接口組件310可以動態地加載并執行數據流圖316或數據流圖318。在一些實現中,圖接口組件310可以定義接受數據的輸入流并產生數據的輸出流的接口。可以基于參數、來自數據元素的數據值或任何其它值來確定所加載并執行的數據流圖。
[0031]一些數據源、組件或宿可以具有輸入參數304a?f,其中這些輸入參數304a?f可以定義圖的一些行為。例如,參數可以定義數據源或宿在物理盤上的位置。參數還可以定義組件的行為;例如,參數可以定義分選組件如何對輸入進行分選。在一些設置中,一個參數的值可以依賴于其它參數的值。例如,源306a可以存儲在特定目錄的文件中。參數集304a可以包括被稱為“DIRECT0RY(目錄)”的參數和被稱為“FILENAME(文件名),,的另一參數。在這種情況下,FILENAME參數將依賴于DIRECTORY參數(例如,DIRECTORY可以是“/usr/local/”并且FILENAME可以是“/usr/local/input.dat”)。參數還可以依賴于其它組件所用的參數。例如,宿312的物理位置可以依賴于源306a的物理位置。在本示例中,宿312包括參數的集合304f,其中參數的集合304f包括依賴于源306a的DIRECTORY參數的FILENAME參數;例如,集合304f 中的FILENAME參數可以是“/usr/local/input.dat”,其中,值“/usr/local/”是從集合304a中的DIRECTORY參數所獲得的。
[0032]類似地,數據流圖316和318可以分別具有參數集304g和304h。
[0033]在一些實現中,參數集304a?f可以合并成包含數據流圖整體所用的參數的單個參數集,例如,參數集314。然而,由于圖接口組件310在運行時動態地加載并執行數據流圖,因此參數列表整體可能是未知的。例如,如果圖接口組件310要使得加載并執行數據流圖316,則可能需要填充參數集304g。
[0034]參數集(例如,參數集314)可以是公開的或者可以使得參數集(例如,參數集314)可用在開發環境(例如,圖2的開發環境218)中。公開的參數集可以被稱為數據流圖的應用程序編程接口(API)的一部分。
[0035]客戶端裝置上所呈現的配置界面使得用戶220能夠訪問圖2的圖配置模塊206。再參考圖3,在配置界面內,可以將參數集304a?304f或參數集314中的參數重組織成用于與用戶進行交互的反映商業考慮而非技術考慮的不同組。用于接收基于用戶輸入的參數的值的配置界面可以以不必受服務器上的開發環境的方面約束的靈活方式來根據參數之間的關系顯示不同的參數。
[0036]在一些情況下,數據流圖的構造在本質上可以是高度技術性的。在為了實現特定商業目的而寫入的情況下,基于技術考慮來確定圖的下層結構和構造。例如,可以選擇圖組件以使得重復使用性最大化或者使得支持并行處理。另一方面,如何使用圖以及在何處使用圖大多可以是商業決定。與參數化的數據流圖相關聯的一些參數可以用于在不要求商業用戶理解數據流圖實現背后的技術復雜性的情況下使得用戶能夠定制數據流圖。參數化的數據流圖簡化了定制并且便于重復使用。用于構造數據流圖的參數值的識別所用的配置界面可以呈現在客戶端機器上。例如,在通過引用包含于此的標題為“SPECIFYING USERINTERFACE ELEMENTS”的美國專利公開號2011/0145748中更詳細地說明了這種環境。
[0037]配置界面還可以用于對執行流圖進行配置。執行流圖是描述要執行外部處理的順序的有向圖。例如,執行流圖可以指定要執行的數據流圖的序列的順序。
[0038]在一些情況下,用以構造數據流圖的參數值的識別所用的配置界面的開發在本質上同樣可以是高度技術性的。如上所述,通常基于技術考慮來構造下層圖,而基于商業考慮來開發配置界面。結果,配置界面可以針對一個或多個數據流圖提供參數。各數據流圖具有API所提供的單獨參數集。此外,配置界面的開發包括與下層數據流圖的開發不同的技巧。因此,配置界面的開發需要結合技術、商業和使用性考慮。
[0039]為了便于生成配置界面,可以向客戶端機器的用戶呈現構建器界面。構建器界面可以是開發環境218的一部分。
[0040]圖3B示出用于設置與諸如可配置數據流圖等的可配置應用程序有關的參數的示例性配置界面。在本示例中,界面320中所示的兩個數據流圖302和306與配置界面320相關聯。在本示例中,可以使用參數304來配置可配置數據流圖302。類似地,可以使用參數308、310和312來配置數據流圖306。
[0041]例如,配置界面320使得用戶能夠具有要由數據流圖來處理的數據的商業知識,以對這些參數進行賦值,由此使用單個配置界面來配置這兩個數據流圖。在本示例中,配置界面320包括參數I欄322。使用參數I欄來對界面320中所表示的參數312進行賦值。類似地,使用參數2欄324來對參數310進行賦值。使用參數3欄來對參數304進行賦值。使用參數4欄328來對參數308進行賦值。
[0042]可以基于要輸入的數據的類型來選擇參數欄。例如,參數I欄322是使得用戶能夠輸入任意值(例如,整數、浮點型值等)的文本框。參數2欄324是使得用戶能夠從列表中選擇值的列表框。參數3欄326是使得用戶能夠從少量選項(在本示例中為兩個選項值)中選擇值的單選按鈕框。參數4欄328是使得用戶能夠輸入更大量的文本的更大的文本框。
[0043]可以選擇其它GUI控件。例如,用戶能夠打開文件選擇器以選擇特定輸入文件或者要經由網絡來下載文件的位置。
[0044]圖4示出用于創建以GUI控件為焦點的配置界面的構建器界面400的示例。構建器界面400包括模板名稱402。模板名稱402標識創建中的配置界面。構建器界面400的用戶界面標簽404包括顯示區域430。顯示區域呈現配置界面的構造所用的“所見即所得(what yousee is what you get,WYSIWYG)”界面。顯示區域430可以被視為開發者放置GUI控件的畫布。開發者可以從組件區塊422中選擇GUI控件并且將該GUI控件添加至顯示區域430以創建配置界面。在本示例中,顯示區域430包括框控件406,框控件406包括與源文件相對應的文本輸入控件410以及與目標文件相對應的文本輸入控件412。顯示區域430還包括框控件414,框控件414包括文件選擇器控件418。顯示區域可以使用諸如分割器416等的分割器將GUI分區成區塊。可以使用分區來通過向用戶提供基本結構而簡化界面的創建。
[0045]組件區塊422包括可以添加至顯示區域430的不同控件。可用的GUI控件包括接受用戶輸入并對參數賦值的輸入控件。可用的GUI控件還包括諸如框等的分組控件,其中框用于創建使一個或多個控件成組的視覺輪廓。開發者還可以選擇使得開發者能夠創建欄間依賴性的基于規則的控件。例如,商業規則控件使得開發者能夠配置如下參數:該參數提供商業規則控件的輸出與用于配置可配置應用程序的參數之間的映射。開發者還可以選擇使得配置界面的用戶能夠查看圖所產生的數據的基于數據的控件。
[0046]組件區塊422還可以包括復合控件。例如,過濾器圖配置(Filter GraphConfigurat 1n )432可以是包括足以配置過濾器圖的原始控件和可執行指令的復合控件。通常,原始控件是諸如窗口或文本框等的用于顯示用戶可改變的信息設置的圖形用戶接口(GUI)的元素。原始控件是合并在應用程序中的基本的視覺構建塊,該基本的視覺構建塊保持應用程序所處理的所有數據以及與該數據有關的可用交互。
[0047]各控件可以具有一個或多個特性。這些特性可以顯示在控件特性區域426中。在本示例中,控件特性區域426顯示文本輸入控件410的特性。控件特性區域426使得用戶能夠對控件的任何屬性值賦予參數值。例如,選擇值屬性428提供S0URCEJJRL參數430的值。
[0048]開發者還可以建立規定配置界面的其它圖形特征的規則。例如,開發者可以指定,除非滿足預定義的標準的集合,否則不顯示特定GUI控件;例如,除非填充了源文件控件410,否則可以不顯示目標文件控件412。
[0049]在一些實現中,還可以在復合控件內指定規則。例如,復合控件可以指定,除非滿足預定義的標準的集合,否則不顯示復合控件中的特定原始控件。在另一示例中,如上所述,可以基于復合控件中的原始控件所提供的值來填充另一原始控件。
[0050]參考圖5,可以創建復合控件以設置與數據流圖相關聯的參數。如上所述,可以使用用戶界面來配置數據流圖的參數。在本示例中,復合控件502包括使得用戶能夠設置與數據流圖504相關聯的參數的欄。如上所述,復合控件可以包括對組成復合控件的基本控件和其它邏輯之間的交互進行控制的編程指令。在本示例中,復合控件502包括設置數據流圖504所用的參數的編程指令。用戶界面506表示構建器界面的顯示區域;例如,用戶界面506可以是圖4的構建器界面400的顯示區域430。
[0051 ]用戶界面506包括可以放置復合控件的區域510。在一些實現中,用戶界面506可以包括引導并限制如何放置控件的模板。例如,用戶界面506可以將控件的放置限制為表格形式。可選地,用戶界面506可以將用戶界面506分割成有區別的區塊,其中各區塊能夠保持一個或多個控件。在其它實現中,用戶界面506可以使得用戶能夠在用戶界面506的任何位置配置控件。
[0052]在本示例中,設計用戶界面506以設置數據流圖508所用的參數。數據流圖506的一部分包括組件516。組件516連接至圖接口組件512。如上所述,圖接口組件512被配置為執行多個不同的潛在數據流圖。圖接口組件512連接至數據宿514。
[0053]在創建用于配置數據流圖508的GUI時,用戶可以選擇要通過圖接口組件512來執行的數據流圖。在本示例中,用戶確定數據流圖504應通過圖接口組件512來執行。
[0054]用戶可以通過選擇與數據流圖504相關聯的復合控件502并且將復合控件502放置在區域510中來使數據流圖504與圖接口組件512相關聯。添加復合控件502,這在用戶界面中創建了商業用戶可以對數據流圖508和數據流圖504進行配置的區域。例如,商業用戶可以保存或導出用戶界面506,并在以后訪問用戶界面506。向商業用戶呈現完成的用戶界面。通過在用戶界面506的欄中供給值,商業用戶對包括數據流圖504的數據流圖508進行配置。
[0055]在一些實現中,區域510與圖接口組件512相關聯。在另一實現中,系統基于與圖接口組件和數據流圖這兩者相關聯的接口來確定要與數據流圖相關聯的適當的圖接口組件。例如,數據流圖504需要兩個輸入數據流并且生成一個輸出數據流。可以利用與滿足標準的數據流圖相關聯的任何復合控件來填充區域510。
[0056]在一些實現中,復合控件可以綁定至使得復合控件與子圖相關聯的圖參數。
[0057]在一些實現中,復合控件可以與多個數據流圖相關聯。例如,復合控件可以包括使得商業用戶能夠選擇哪個數據流圖應通過圖接口組件512來執行的選擇欄(例如,列表框、下拉列表框等)。在商業用戶從選擇欄中選擇數據流圖的情況下,復合控件可以呈現適用于配置所選擇的數據流圖的欄的集合。
[0058]圖6是用于使用復合顯示元素來配置應用程序的示例處理的流程圖。例如,可以通過諸如計算機系統等的數據處理設備來進行該處理。為了簡化,將針對進行該處理的系統來說明該處理。
[0059]可以接收用于配置應用程序的用戶界面(602)。可以使用構建器界面來創建用戶界面。構建器界面可以包括用于呈現可以添加至用戶界面的控件和顯示元素的面板等。
[0060]可以顯示與第二應用程序相關聯的復合顯示元素(604)。復合顯示元素可以在面板中呈現給用戶。復合顯示元素可以包括能夠用于配置第二應用程序的一個或多個顯示元素。
[0061]可以接收復合顯示元素和用戶界面之間的關聯(606)。該關聯可以由于用戶的動作而發生。例如,用戶可以從面板中選擇表示復合控件的圖標并且將該復合控件拖放到用戶界面上。
[0062]第二應用程序可以與應用程序相關聯(608)。響應于接收到復合控件與用戶界面的關聯,系統可以使第二應用程序與應用程序相關聯。
[0063]上述的使用復合控件方法的圖形用戶接口可以使用執行適當軟件的計算系統來實現。例如,該軟件可以包括在一個或多個編程或可編程計算系統(可以具有諸如分布式、客戶端/服務器或網格式等的各種架構)上執行的一個或多個計算機程序中的過程,其中該一個或多個編程或可編程計算系統各自包括至少一個處理器、至少一個數據存儲系統(包括易失性和/或非易失性存儲器和/或存儲元件)、至少一個用戶接口(用于使用至少一個輸入裝置或端口來接收輸入、并且用于使用至少一個輸出裝置或端口來提供輸出)。該軟件可以包括例如提供與數據流圖的設計、配置和執行有關的服務的較大程序的一個或多個模塊。可以將該程序的模塊(例如,數據流圖的元素)實現為數據結構或符合數據儲存庫中所存儲的數據模型的其它有組織數據。
[0064]可以將軟件設置在諸如CD-ROM或(例如,利用通用或專用計算系統或裝置可讀取的)其它計算機可讀介質等的有形非瞬態介質上、或者經由網絡的通信介質(例如,以編碼在傳播信號中的形式)傳遞至執行該軟件的計算系統的有形非瞬態介質。可以在專用計算機上、或者使用諸如協處理器或現場可編程門陣列(FPGA)或專用型專用集成電路(ASIC)等的專用硬件來進行該處理的一部分或全部。可以以利用不同的計算元件來進行軟件所指定的計算的不同部分的分布式方式來實現該處理。優選將各這種計算機程序存儲在通用或專用可編程計算機可訪問的存儲裝置的計算機可讀存儲介質(例如,固態存儲器或介質、或者磁性或光學介質)上或者下載至該計算機可讀存儲介質,以在利用計算機讀取存儲裝置介質以進行這里所述的處理的情況下配置計算機并使該計算機進行工作。本發明的系統還可被視為作為配置有計算機程序的有形非瞬態介質來實現,其中如此配置成的介質使計算機以特定的預定義方式進行工作,以進行這里所述的處理步驟中的一個或多個。
[0065]已經說明了本發明的多個實施例。然而,應當理解,上述說明意圖例示而并非限制由所附權利要求書的范圍所定義的本發明的范圍。因此,其它實施例也在所附權利要求書的范圍內。例如,可以在沒有背離本發明的范圍的情況下進行各種修改。另外,上述步驟中的一部分可以是順序獨立的,因而可以以與所述順序不同的順序來進行。
【主權項】
1.一種計算機實現的方法,包括以下步驟: 識別第一應用程序,所述第一應用程序是計算機可執行程序; 在用戶界面中顯示用于顯示一個或多個顯示對象的畫布; 在所述畫布中顯示與所述第一應用程序相關聯的第一顯示對象,其中,所述第一顯示對象包括第一選擇器對象集合并且包括所述第一選擇器對象集合與所述第一應用程序的一個或多個參數之間的映射; 識別第二應用程序,所述第二應用程序是計算機可執行程序; 在所述用戶界面中顯示與第二應用程序相關聯的第二顯示對象,其中,所述第二顯示對象包括第二選擇器對象集合并且包括所述第二選擇器對象集合與所述第二應用程序的一個或多個參數之間的映射; 響應于接收到使所述第二顯示對象與所述第一顯示對象相關聯的用戶動作的指示,配置所述第一應用程序以調用所述第二應用程序;以及 創建第三顯示對象,所述第三顯示對象包括所述第一選擇器對象集合和所述第二選擇器對象集合。2.根據權利要求1所述的方法,其中,還包括以下步驟:從文件讀取所述第二顯示對象。3.根據權利要求1所述的方法,其中,還包括以下步驟:生成用于使用所述用戶界面來配置所述第一應用程序和所述第二應用程序的第三應用程序。4.根據權利要求3所述的方法,其中,所述第三應用程序包括第一顯示對象和第二顯示對象,以及 改變與所述第一顯示對象相關聯的值將改變與所述第二顯示對象相關聯的值。5.根據權利要求1所述的方法,其中,所述第一應用程序是第一數據流圖并且能夠配置的所述第二應用程序是第二數據流圖。6.根據權利要求6所述的方法,其中,使所述第二應用程序與所述第一應用程序相關聯包括配置所述第一數據流圖以執行所述第二數據流圖。7.—種利用計算機程序指令編碼的非瞬態計算機存儲介質,所述計算機程序指令在由一個或多個計算機執行的情況下使得所述一個或多個計算機進行包括以下步驟的操作: 識別第一應用程序,所述第一應用程序是計算機可執行程序; 在用戶界面中顯示用于顯示一個或多個顯示對象的畫布; 在所述畫布中顯示與所述第一應用程序相關聯的第一顯示對象,其中,所述第一顯示對象包括第一選擇器對象集合并且包括所述第一選擇器對象集合與所述第一應用程序的一個或多個參數之間的映射; 識別第二應用程序,所述第二應用程序是計算機可執行程序; 在所述用戶界面中顯示與第二應用程序相關聯的第二顯示對象,其中,所述第二顯示對象包括第二選擇器對象集合并且包括所述第二選擇器對象集合與所述第二應用程序的一個或多個參數之間的映射; 響應于接收到使所述第二顯示對象與所述第一顯示對象相關聯的用戶動作的指示,配置所述第一應用程序以調用所述第二應用程序;以及 創建第三顯示對象,所述第三顯示對象包括所述第一選擇器對象集合和所述第二選擇器對象集合。8.根據權利要求7所述的非瞬態計算機存儲介質,其中,所述操作還包括以下步驟:從文件讀取所述第二顯示對象。9.根據權利要求7所述的非瞬態計算機存儲介質,其中,所述操作還包括以下步驟:生成用于使用所述用戶界面來配置所述第一應用程序和所述第二應用程序的第三應用程序。10.根據權利要求9所述的非瞬態計算機存儲介質,其中,所述第三應用程序包括第一顯示對象和第二顯示對象,以及 改變與所述第一顯示對象相關聯的值將改變與所述第二顯示對象相關聯的值。11.根據權利要求7所述的非瞬態計算機存儲介質,其中,所述第一應用程序是第一數據流圖并且能夠配置的所述第二應用程序是第二數據流圖。12.根據權利要求11所述的非瞬態計算機存儲介質,其中,使所述第二應用程序與所述第一應用程序相關聯包括配置所述第一數據流圖以執行所述第二數據流圖。13.—種系統,包括: 一個或多個計算機和一個或多個存儲裝置,所述一個或多個存儲裝置存儲可操作的指令,所述可操作的指令在由所述一個或多個計算機執行的情況下使得所述一個或多個計算機執行包括以下步驟的操作: 識別第一應用程序,所述第一應用程序是計算機可執行程序; 在用戶界面中顯示用于顯示一個或多個顯示對象的畫布; 在所述畫布中顯示與所述第一應用程序相關聯的第一顯示對象,其中,所述第一顯示對象包括第一選擇器對象集合并且包括所述第一選擇器對象集合與所述第一應用程序的一個或多個參數之間的映射; 識別第二應用程序,所述第二應用程序是計算機可執行程序; 在所述用戶界面中顯示與第二應用程序相關聯的第二顯示對象,其中,所述第二顯示對象包括第二選擇器對象集合并且包括所述第二選擇器對象集合與所述第二應用程序的一個或多個參數之間的映射; 響應于接收到使所述第二顯示對象與所述第一顯示對象相關聯的用戶動作的指示,配置所述第一應用程序以調用所述第二應用程序;以及 創建第三顯示對象,所述第三顯示對象包括所述第一選擇器對象集合和所述第二選擇器對象集合。14.根據權利要求13所述的系統,其中,所述操作還包括以下步驟:從文件讀取所述第二顯示對象。15.根據權利要求13所述的系統,其中,所述操作還包括以下步驟:生成用于使用所述用戶界面來配置所述第一應用程序和所述第二應用程序的第三應用程序。16.根據權利要求15所述的系統,其中,所述第三應用程序包括第一顯示對象和第二顯示對象,以及 改變與所述第一顯示對象相關聯的值將改變與所述第二顯示對象相關聯的值。17.根據權利要求13所述的系統,其中,所述第一應用程序是第一數據流圖并且能夠配置的所述第二應用程序是第二數據流圖。18.根據權利要求17所述的系統,其中,使所述第二應用程序與所述第一應用程序相關聯包括配置所述第一數據流圖以執行所述第二數據流圖。19.一種系統,包括: 用于識別第一應用程序的部件,所述第一應用程序是計算機可執行程序; 用于顯示畫布的部件,所述畫布用于顯示一個或多個顯示對象; 用于在所述畫布中顯示與所述第一應用程序相關聯的第一顯示對象的部件,其中,所述第一顯示對象包括第一選擇器對象集合并且包括所述第一選擇器對象集合與所述第一應用程序的一個或多個參數之間的映射; 用于識別第二應用程序的部件,所述第二應用程序是計算機可執行程序; 用于顯示與第二應用程序相關聯的第二顯示對象的部件,其中,所述第二顯示對象包括第二選擇器對象集合并且包括所述第二選擇器對象集合與所述第二應用程序的一個或多個參數之間的映射; 用于響應于使所述第二顯示對象與所述第一顯示對象相關聯的用戶動作來配置所述第一應用程序以調用所述第二應用程序的部件;以及 用于創建第三顯示對象的部件,所述第三顯示對象包括所述第一選擇器對象集合和所述第二選擇器對象集合。
【文檔編號】G06F9/44GK106062711SQ201580011226
【公開日】2016年10月26日
【申請日】2015年2月24日 公開號201580011226.4, CN 106062711 A, CN 106062711A, CN 201580011226, CN-A-106062711, CN106062711 A, CN106062711A, CN201580011226, CN201580011226.4, PCT/2015/17222, PCT/US/15/017222, PCT/US/15/17222, PCT/US/2015/017222, PCT/US/2015/17222, PCT/US15/017222, PCT/US15/17222, PCT/US15017222, PCT/US1517222, PCT/US2015/017222, PCT/US2015/17222, PCT/US2015017222, PCT/US201517222
【發明人】格雷格·約斯特, J·戈爾德施拉格
【申請人】起元技術有限責任公司