CN101861566A - 用于生成应用片段的系统和方法 - Google Patents

用于生成应用片段的系统和方法 Download PDF

Info

Publication number
CN101861566A
CN101861566A CN200880116203A CN200880116203A CN101861566A CN 101861566 A CN101861566 A CN 101861566A CN 200880116203 A CN200880116203 A CN 200880116203A CN 200880116203 A CN200880116203 A CN 200880116203A CN 101861566 A CN101861566 A CN 101861566A
Authority
CN
China
Prior art keywords
application
fragment
application fragment
reciever
file system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200880116203A
Other languages
English (en)
Other versions
CN101861566B (zh
Inventor
D·特里斯特拉姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of CN101861566A publication Critical patent/CN101861566A/zh
Application granted granted Critical
Publication of CN101861566B publication Critical patent/CN101861566B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

用于存储应用片段的方法、系统和装置,包括计算机程序产品。在一个方面,一种方法包括:在与给予方应用相对应的给予方应用窗口中呈现组件,其中给予方应用正在计算系统中执行;接收在给予方应用窗口中选择组件以向与计算系统相关联的文件系统插入的输入;生成与组件相对应的应用片段;以及在文件系统中存储所述应用片段。进一步,该方法可以包括将应用片段向与接受方应用相关联的接受方应用窗口插入;以及基于应用片段激活接受方应用的功能。此外,应用片段可以在文件系统中被激活,并且响应于该激活,可以基于应用片段生成包括至少一个组件的应用。

Description

用于生成应用片段的系统和方法
技术领域
本发明涉及标识现有应用中的可复用组件,并且涉及用于从可复用组件生成应用片段(fragment)(例如通过将该应用片段捕获为文件系统中的项目)的系统和方法。
背景技术
从计算的早期开始,软件应用的开发已经有了很大的进步。例如,低级语言使用与执行程序的计算系统的硬件密切相关的结构。高级编程语言的创建提供了比相应的低级编程语言更加抽象的工具,并且实现了跨越不同平台的更大可移植性。高级编程语言还允许程序员按照变量、数学公式和布尔表达式而不是存储器地址和寄存器来表达操作。
面向对象编程的概念和面向对象的语言(诸如C++)的发展进一步允许程序员将软件应用模块化。面向对象编程强调包括封装、继承和模块化的概念。可以使用面向对象技术来创建专用模块,使得模块接收来自一个或多个其他模块的输入和/或向一个或多个其他模块提供输出。另外,程序中的独立模块可以配置为通过传递按照诸如类、子类和对象等结构组织的数据来进行通信。一旦创建,可以通过复制源代码和相关联的定义而在其他程序中复用这种专用模块。
Java通过引入虚拟机的概念而进一步扩展了面向对象编程的原理,虚拟机使得可以在平台无关的环境中执行应用。一旦进行了配置,虚拟机便作为执行应用的操作系统和计算平台之上的环境而存在。因为虚拟机可以在多种计算平台上操作,所以应用可以在任何支持平台上的虚拟机中执行,而不需要定制。由此,可以生成与虚拟机结合使用的应用,使得应用跨多种独立的计算平台是可复用的。
编程工具,或称集成开发环境(IDE),进一步增强了程序员高效开发软件应用的能力。编程工具可以用于建立原型、编码、调试和维护一个或多个软件应用。另外,IDE通常包括图形化编程环境,其中特征可以至少部分通过图形化工具的使用来进行配置。IDE还可以包括诸如控件和显示等标准组件的工具板,这些标准组件可以在无需独立开发的情况下向应用插入。另外,IDE提供分析和修改源代码可获得的现有应用的能力。
发明内容
本说明书描述了涉及将包括在现有应用中的一个或多个组件捕获为不同的文件系统对象的技术。现有应用(诸如在应用环境的上下文内执行的应用)可以配置用于标识包括在应用中的一个或多个可复用组件。例如,可以显示可复用组件,以使得其与应用的非可复用组件在视觉上可区分,包括通过高亮、低亮、加框、加阴影或任何其他此类可视指示。另外,可复用组件可以从显示其的现有应用进行复制,诸如通过复制或拖拽操作。可以配置应用环境,使得从作为给予方(donor)的现有应用复制的可复用组件可以通过诸如粘贴或拖拽的操作而向文件系统的任何视图中转移,例如桌面或文件夹。另外,响应于向文件系统转移,可复用组件可以被自动地捕获为持久应用片段。
本发明人认识到,需要允许将图标与文件系统视图中的应用片段相关联。另外,本发明人认识到,需要允许使用代表应用片段的图标,诸如用户界面表示或类描述符。为了促进一个或多个应用片段的可移植性,本发明人认识到,有益的是允许应用片段在计算设备之间传送,诸如通过文件传送操作或者作为电子消息的一部分。
本发明人还认识到,需要允许从给予方应用复制出多个可复用组件并将其向文件系统表示插入。另外,本发明人认识到,需要允许将驻留在文件系统中的应用片段向接受方应用插入。因此,此处描述的系统和装置可以实现用于从可复用组件生成应用片段的方法以及用于基于应用片段将可复用组件向应用插入的方法。
总体上,在一个方面,主题可以实现为包括:在与给予方应用相对应的给予方应用窗口中呈现组件,其中给予方应用正在计算系统中执行;接收在给予方应用窗口中选择组件以向与计算系统相关联的文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。
主题还可以实现为使得组件包括可复用组件,并且该可复用组件在视觉上可区别于给予方应用窗口中显示的一个或多个非可复用组件。此外,主题可以实现为包括:将应用片段向与接受方应用相关联的接受方应用窗口插入,以及在接受方应用中基于应用片段生成组件。而且,主题可以实现为包括:激活文件系统中的应用片段,以及响应于所述激活,基于应用片段生成包括至少一个组件的应用。另外,主题还可以实现为包括:将应用片段向与接受方应用相关联的接受方应用窗口插入,以及基于应用片段来激活接受方应用的功能。
总体上,在另一方面,该技术可以实现为一种编码在计算机可读介质上的计算机程序产品,其可操作以使得数据处理装置执行包括以下的操作:在与给予方应用相对应的给予方应用窗口中呈现组件,其中给予方应用正在计算系统中执行;接收在给予方应用窗口中选择组件以向与计算系统相关联的文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。
主题还可以实现为进一步可操作以使得数据处理装置执行包括以下的操作:接收将应用片段向与接受方应用相关联的接受方应用窗口插入的输入,以及在接受方应用中基于应用片段生成组件。而且,主题可以实现为使得组件包括可复用组件,并且该可复用组件在视觉上可区别于给予方应用窗口中显示的一个或多个非可复用组件。另外,主题还可以实现为进一步可操作以使得数据处理装置执行包括以下的操作:接收激活文件系统中的应用片段的输入,以及响应于所述激活,基于应用片段生成包括至少一个组件的应用。此外,主题还可以实现为进一步可操作以使得数据处理装置执行包括以下的操作:接收将应用片段向与接受方应用相关联的接受方应用窗口插入的输入,以及基于应用片段来激活接受方应用的功能。
总体上,在另一方面,主题可以实现为一种系统,包括存储给予方应用的计算机可读介质,以及包括处理器电子设备的计算系统,该处理器电子设备配置用于执行包括以下的操作:在与给予方应用相对应的给予方应用窗口中呈现组件,其中给予方应用正在计算系统中执行;接收在给予方应用窗口中选择组件以向与计算系统相关联的文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。
主题还可以实现为使得处理器电子设备进一步配置用于执行包括以下的操作:接收将应用片段向与接受方应用相关联的接受方应用窗口插入的输入,以及在接受方应用中基于应用片段生成组件。此外,主题可以实现为使得组件包括可复用组件,并且该可复用组件在视觉上可区别于给予方应用窗口中显示的一个或多个非可复用组件。另外,主题还可以实现为使得处理器电子设备进一步配置用于执行包括以下的操作:接收激活文件系统中的应用片段的输入,以及响应于所述激活,基于应用片段生成包括至少一个组件的应用。此外,主题可以实现为使得处理器电子设备进一步配置用于执行包括以下的操作:接收将应用片段向与接受方应用相关联的接受方应用窗口插入的输入,以及基于应用片段来激活接受方应用的功能。
总体上,在另一方面,主题可以实现为包括:呈现与给予方应用相关联的组件;接收选择组件以向文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。总体上,在另一方面,该技术可以实现为一种编码在计算机可读介质上的计算机程序产品,其可操作以使得数据处理装置执行包括以下的操作:呈现与给予方应用相关联的组件;接收选择组件以向文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。总体上,在另一方面,主题可以实现为一种系统,包括存储给予方应用的计算机可读介质,以及包括处理器电子设备的计算系统,该处理器电子设备配置用于执行包括以下的操作:呈现与给予方应用相关联的组件;接收选择组件以向文件系统插入的输入;生成与所述组件相对应的应用片段;以及在文件系统中存储所述应用片段。
本说明书中描述的主题的特定实施方式可以实现为获得一个或多个以下优势。例如,主题可以实现用以在文件系统表示中捕获对应于与应用相关联的可复用组件的应用片段。另外,主题可以实现为使得多个应用片段可以在文件系统对象(诸如文件夹)中进行存储和组织。主题还可以实现为允许从应用片段来生成应用。另外,主题可以实现用以通过将应用片段向应用插入,从而允许向应用添加可复用组件。
主题可以使用装置、方法、系统、计算机程序产品或装置、方法、系统和计算机程序产品的任何组合来实现。在以下的附图和描述中给出本发明的一个或多个实施方式的细节。根据说明书、附图和权利要求,本发明的其他特征、方面和优势将变得易见。
附图说明
图1A-图1D示出了可以用于基于一个或多个可复用组件来生成应用片段的示例性界面;
图2示出了呈现在桌面上的允许在文件系统表示中创建应用片段的示例性界面;
图3示出了呈现在桌面上的允许在分层文件系统表示中创建应用片段的示例性界面;
图4示出了描述用于使用应用片段以将组件向应用插入的示例性过程的流程图;
图5示出了描述用于激活应用中的功能的示例性过程的流程图;
图6示出了描述用于存储应用片段的示例性过程的流程图。
在各附图中,相似的参考数字和名称指示相同的元件。
具体实施方式
图1A示出了可以用于执行包括一个或多个可复用组件的应用的示例性界面。可复用组件是计算机程序的元素,其包括可操作以实现一个或多个功能的一个或多个指令,其中计算机程序元素可以从应用程序中提取,其在应用程序中表现和存储为独立的表示,诸如应用片段。应用片段是持久文件系统对象(或称“对象”),其包括与至少一个组件(诸如,与给予方应用相关联的可复用组件)相对应的一个或多个信息项。例如,应用片段可以包括描述组件的信息,诸如组件所关联的应用名称、组件的类、去往代表组件的定义的文件的路径、组件的一个或多个特性、与组件相关联的一个或多个样式以及可以获得对应于组件的源代码的地址。
从其共享可复用组件的应用称为给予方应用。进一步地,直接或通过使用应用片段向其插入可复用组件的应用称为接受方应用。另外,一个或多个给予方应用和一个或多个接受方应用与共同的应用环境相关联。在有些实现中,应用环境可以是跨操作系统运行时,如加加利福尼亚州圣荷塞的Adobe Systems Incorporated提供的Adobe
Figure GPA00001138201200061
Integrated Runtime。
可以在图形用户界面(“GUI”)环境,例如由操作系统或应用环境呈现的桌面100,中呈现界面。桌面100可以配置用于允许启动一个或多个应用(或“计算机程序”)。另外,桌面100可以允许用户通过一个或多个输入和控件(包括图形控件)来与应用进行交互。例如,用户可以通过诸如鼠标或轨迹球等物理输入设备来控制桌面100中显示的光标102,并输入命令以执行一个或多个操作。此外,桌面100可以包括菜单栏104,其可以包括一个或多个命令按钮(诸如开始按钮106)以及与正在执行的应用相关联的一个或多个图标(诸如应用图标108)。
在应用环境中执行的给予方应用在桌面100中可由给予方应用窗口105来代表。给予方应用窗口105可以包括命令菜单110,其列出与给予方应用可执行的功能相关联的多个命令。例如,命令菜单110可以包括多个菜单标题,其中每个标题与一个或多个选项和子菜单的列表相对应。命令菜单110还可以包括与特定功能相关联的一个或多个命令按钮,如最小化或关闭给予方应用窗口105。在有些实现中,包含一个或多个可选择工具项的工具盘可以包括在给予方应用窗口105中,以替代命令菜单110或之结合。此外,一个或多个可选择工具项可以对应于否则会包括在命令菜单110中的一个或多个选项和菜单项。
在有些实现中,给予方应用窗口105可以对应于远程服务器上主控的应用或服务。给予方应用窗口105可以呈现对应于所寄宿的应用或服务的本地界面,同时与该应用或服务相关联的至少一些操作的执行可以在远程服务器处执行。例如,给予方应用窗口105可以与web浏览器应用相关联地呈现。而且,基于实现一个或多个安全控制(诸如认证、验证和许可)的安全上下文可以对与给予方应用窗口105相关联的功能进行约束。因此,可以控制给予方应用窗口105或其中包含的组件可以与应用环境对接的程度。
给予方应用还可以包括滚动条115,其允许对给予方应用窗口105的选择性显示。滚动条115也可以实现为可复用组件。另外,可以在给予方应用窗口105中显示与给予方应用相关联的一个或多个其他组件。例如,天气监视器120可以配置为显示地球的特定区域的当前天气状况。天气监视器120还可以配置为呈现其他信息,如时间、温度和预测数据。由天气监视器120呈现的信息可以从包括远程数据源的一个或多个数据源收集。另外,股票报价机125可以配置为呈现一个或多个证券或指数的报价。与天气监视器120相似,股票报价机125也可以配置为从包括远程数据源的一个或多个数据源获取报价数据。另外,可以在给予方应用窗口105中显示监视器130。监视器130可以提供与数据源相关联的值的图形化表示。例如,监视器130可以提供通过与其上容纳有给予方应用或者声音数据存储在电子文件中的计算平台相连接的话筒接收到的声音的视觉表示。
图1B示出了在给予方应用窗口105的命令菜单110中选择复用菜单145的示例。可以这样来选择复用菜单145:将光标102定位在复用菜单145附近,以及通过物理控制设备(诸如鼠标的按键)来输入命令。备选地,可以通过预定命令(诸如键盘上的功能键或组合键)的输入,或者工具板中工具图标的激活来选择复用菜单145。复用菜单145配置为允许用户打开或者关闭应用的复用功能。另外,复用菜单145呈现可视指示符来标识当前选择的菜单选项,诸如在选择的选项邻近显示的标记,或通过用于表示选择的选项的、视觉上有区分的文字。备选地,复用菜单可以呈现为使得仅显示当前选项,并且选择当前选项将导致其切换(例如,从“关”到“开”)。
当复用功能被关闭时,给予方应用执行例行操作,诸如执行与给予方应用中所包括的一个或多个组件相关联的功能。当复用功能被打开时,给予方应用标识可用于复用的组件。给予方应用中包括的可复用组件可以通过多种提示来标识,包括通过界面提供的视觉和/或声音提示。在有些实现中,打开复用功能还将启用拖放功能,其可以用来从给予方应用复制或拖拽可复用组件。另外,打开复用功能还支持将可复用组件作为应用片段向文件系统视图插入或者直接向接受方应用插入。
另外,可以如下这样配置给予方应用,使得打开复用功能将禁止针对除以下之外的功能而与可复用组件交互,即,在给予方应用内安排、重定位和调整尺寸以及向给予方应用之外的实体复制和插入。例如,当在给予方应用中打开复用功能时,可以禁用与可复用组件相关联的命令界面。由此,选择可复用组件中包括的按钮将不会产生按钮“点击”事件或是启动在复用功能被关闭时将会得到的相应功能。另外,当复用功能打开时,也可以禁止与给予方应用中所包括的非可复用组件进行交互。例如,影片播放器可以配置为继续播放,但是可以禁用诸如暂停和倒回等关联控件,从而使影片播放器在功能上变得迟钝(inert)。
图1C示出了当复用功能打开时桌面100中呈现的示例性界面。可视指示符可以与一个或多个可复用组件相关联,以将它们与给予方应用的其他部分(包括不是可复用的组件)区分开。例如,可视边框可以在可复用组件周围显示,诸如在天气监视器120周围显示的边框150,或在监视器130周围显示的边框155。可以显示可视边框以便在可复用组件周围创建定义的边框,其包括与相同窗口中包括的非可复用组件的表示不同的颜色或文字。备选地,可视边框可以呈现为环绕可复用组件的“发光”、“光环”或“阴影”效果。在有些实现中,可复用组件也可以相对于用户界面呈现为凸起或三维。
另外,可视边框可以持续显示,或者可以响应于界面事件而断续显示,例如响应于光标进入可复用组件的预定范围内。在有些实现中,非可复用组件可以通过在应用窗口中减弱其可视呈现而与可复用组件在视觉上区分开,例如通过使非可复用组件淡出或灰化。减弱非可复用组件的可视表示可以与增强可复用组件的可视表示(诸如通过使用可视边框)相结合地或者作为替代来执行。如果界面组件和控件是可复用的,则其也可以包括可视边框。例如,滚动条115可以包括可视边框160,以指示其是可复用组件。备选地,可以将界面组件高亮或阴影化以指示其是可复用的。
另外,当复用功能被打开时,可以通过图标来表示通常没有关联可视呈现的可复用组件。例如,当通过给予方应用的复用菜单145打开复用时,可以在给予方应用窗口105中呈现数据库图标165。数据库图标165可以用于表示给予方应用可访问的数据源(或针对这种数据源的界面),其在复用功能关闭时没有可视表示。另外,可以利用可视边框来呈现数据库图标165,这指示其是可复用的。备选地,可以在当复用功能被打开时显示的工具盘或工具箱中表示通常没有关联可视呈现的一个或多个可复用组件。工具盘或工具箱可以是给予方应用窗口105界面的一部分或与之分离。在有些实现中,可复用组件可以通过听觉指示符结合视觉指示符来标识。例如,响应于例如光标进入可复用组件的预定范围等界面事件,可以呈现不同的声音来标识可复用组件。
可以在界面中“抓取”可复用组件,例如通过使用鼠标控制的光标。一旦被抓取,可复用组件就可以从给予方应用被拖拽。例如,可以在给予方应用窗口105中抓取天气监视器120,并跨界面将其向桌面100上的开放空间拖拽170。通过在桌面100上施放天气监视器120,在呈现桌面100的计算设备的文件系统中创建应用片段。应用片段继而保持为拖拽自给予方应用窗口105的可复用组件的持久的磁盘上表示。
在有些实现中,选择的组件可以包括在由计算设备的操作系统维持的剪贴板中。当启动拖拽时,可以生成包括剪贴板内容的序列化表示的临时文件。临时文件的位置进一步可以作为数据源而被添加到剪贴板。将选择的组件向文件系统视图中的位置拖拽可以导致临时文件向该位置移动。
应用片段可以表示可复用组件在从给予方应用窗口105被拖拽时的状态、可复用组件的默认状态或其任何组合。此外,新创建的应用片段可以由文件图标175来表示,其可以显示在施放天气监视器120的桌面100上的位置中。在有些实现中,可复用组件可以剪切或复制自给予方应用窗口105,诸如通过菜单选择或基于按键的命令,包括“CTRL-C”或“CTRL-X”命令。
应用片段,诸如由文件图标175表示的应用片段,是与复制自给予方应用的可复用组件相对应的文件系统对象。因此,应用片段可以包括一个或多个用户界面组件和对应的元素。应用片段还可以包括在复用功能被关闭时在用户界面中不存在的一个或多个组件和/或元素,诸如数据源。数据源可以连接到可以用于呈现该数据源提供的数据的可视化表示的其他组件。数据源与呈现可视化表示的组件之间的连接可以诸如通过临近性或顺序性而自动地形成,或者基于用户输入形成。例如,数据库图标165表示的数据库是可以连接到包括用户界面表示(诸如可视化输出)的组件的数据源。应用片段还可以标识两个或更多组件之间的关联,诸如组件之间的数据流连接或者组件之间的相对位置。
此外,当可复用组件向文件系统的任何视图(诸如桌面、文件目录或文件夹)插入时,可以生成与可复用组件相对应的应用片段。可复用组件可以通过任何预先确定的插入命令而向文件系统插入,其中插入命令包括施放命令、菜单选择或基于按键的命令,诸如“CTRL-V”粘贴命令。
另外,文件系统中的视图也可以包括与文件系统相关联的开放文件,诸如文本文档或图像文件。例如,将可复用组件向文本文档插入可以导致与可复用组件相对应的一个或多个文本数据项被记录在该文本文档中,诸如特性列表和/或源代码。进一步地,将可复用组件向图像文件插入可以导致与可复用组件相对应的图像被记录在该图像文件中,诸如该组件的用户界面表示。在有些实现中,文件系统的视图还可以涵盖与远程计算设备相对应的文件系统。例如,可复用组件可以被施放或者以其他方式向与远程计算设备相关联的文件视图、文件传送窗口或浏览器窗口插入。
应用片段还可以用于生成正在执行的应用中的组件。例如,通过将与应用片段相关联的文件图标从文件系统表示拖拽到或以其他方式向接受方应用复制,可以将应用片段向接受方应用插入。此外,接受方应用可以配置用以响应于检测到已经插入应用片段而生成与应用片段相对应的组件。
另外,存储在文件系统中的应用片段可以用于生成新的应用。例如,应用片段可以通过用户选择与应用片段相关联的文件图标来激活,诸如通过双击操作。备选地,应用片段可以通过选择与应用片段相关联的菜单选项来激活。例如,用户可以右击与应用片段相关联的文件图标并从菜单中选择新应用选项。在有些实现中,新应用选项可以对应于包括在应用环境中的应用模板。在激活应用片段之后,可以在应用环境中创建包含对应于应用片段的组件的新应用。还可以向新应用添加一个或多个附加组件,诸如通过插入一个或多个附加应用片段或者通过直接从给予方应用拖放组件。
图1D示出了桌面100中呈现的示例性界面,其中可以在单个动作中施放多个可复用组件。多个可复用组件,诸如监视器130、数据库图标165和天气监视器120可以在给予方应用窗口105中同时被选择。例如,可以使用ctrl-点击或shift-点击操作来选择多个可复用组件,使得多个可复用组件同时处于被选择或激活状态。此外,多个可复用组件可以通过诸如拖放操作180而从给予方应用窗口105向桌面100上的区域转移。
一旦在桌面100上,多个可复用组件可被施放到桌面100的区域上。响应于此施放,可以在呈现桌面100的计算设备的文件系统中创建与该多个可复用组件中的每一个相对应的应用片段。此外,可以在桌面100上显示与每个应用片段相对应的文件图标。例如,响应于拖放操作180,可以创建与监视器130相对应的监视器文件图标185、与数据库图标165相对应的数据库文件图标190以及与天气监视器120相对应的天气监视器文件图标195。所创建的文件图标可以保留在施放时存在于可复用组件与桌面之间的相对间隔和位置,或者可以按照任何其他方式进行排序,诸如基于应用或桌面设置。
此外,所创建的文件图标可以代表与之相关联的应用片段的一个方面。例如,为具有用户界面表示的可复用组件创建的文件图标可以包括与该用户界面表示相对应的图像,诸如缩略图或其他分辨率降低的图绘。因此,天气监视器文件图标195可以包括天气监视器120的缩略图表示。文件图标还可以被选择以代表应用所对应的可复用组件的类型,诸如可复用组件的类或超类。例如,数据库文件图标190可以包括与数据类别相关联的可视化标识符。此外,文件图标可以指示应用片段代表多个组件。例如,文件图标可以呈现多个项目的外观,诸如叠置的页面或界面。与应用分段相关联的文件图标还可以由用户进行编辑,以操纵或定制文件图标的外观。由此,应用分段可以基于它们关联的文件图标而在视觉上可区分。
在有些实现中,从给予方应用窗口被拖拽并被施放到桌面上的多个可复用组件可以在文件系统中捕获为单个应用片段,并且可以由单个文件图标来表示。例如,监视器130、数据库图标165和天气监视器120可以在给予方应用窗口105中同时被选择并施放到桌面100上。响应于此施放,与监视器130、数据库图标165和天气监视器120有关的信息可以合并成存储在文件系统中的单个应用片段。此外,单个应用片段可以由单个文件图标来表示。确定创建与多个组件相对应的单个应用片段可以基于给予方应用中的设置、文件系统中的设置或在选择或施放多个组件时输入的命令。
图2示出了呈现在桌面100上允许在文件系统表示中创建应用片段的示例性界面。文件系统查看器窗口200可以显示在桌面100上。文件系统查看器窗口200可以呈现与文件系统的一个或多个部分相关联的信息,诸如对应于存储设备的卷的目录。例如,文件系统查看器窗口200可以包括多个文件夹,诸如文件夹205和210,每个文件夹可以包含附加的文件夹和/或文件。另外,桌面100的菜单栏104可以包括与文件系统查看器窗口200相关联的文件系统视图图标202。
可以在给予方应用窗口105中选择可复用组件并将其向文件系统查看器窗口200复制。例如,可以在给予方应用窗口105中选择监视器130,并通过拖放操作215将其向文件系统查看器窗口200复制。此外,监视器130可以施放到文件系统查看器窗口200的任何部分中。例如,监视器130可以被施放到文件系统查看器窗口200所呈现的文件夹205上。作为将监视器130施放到文件夹205上的结果,在该文件系统中创建与给予方应用窗口105的监视器组件相对应的应用片段。
与监视器组件相对应的应用片段可以存储在与文件夹205相关联的文件系统的逻辑部分中。监视器文件图标220也可以在文件夹205中创建以代表该应用片段。备选地,监视器130可以被施放到文件系统查看器窗口200的开放空间中。结果,应用片段和关联的监视器文件图标220可以表示为与文件夹205和210位于相同的文件系统层级的文件。另外,一旦已经在文件系统中创建了应用片段和关联的监视器文件图标220,它们就可以在文件系统内按照与任何其他文件系统对象相同的方式来进行移动、复制或删除。
此外,可以在文件系统中对一个或多个应用片段和关联的文件图标进行组织。对应于相同类型、功能、类别或其它此类标准的应用片段可以归组在公共目录或文件夹中。例如,代表诸如按钮的界面项的一个或多个应用片段可以归组在第一文件夹中,而代表数据源的一个或多个应用片段可以单独存储在第二文件夹中。可以使用任意数目的文件系统结构来对应用片段进行组织。此外,应用片段可以基于一个或多个文件系统视图中的属性进行分类。例如,在文件系统组件的详细视图中呈现的应用片段(诸如文件夹)可以基于应用片段所暴露的一个或多个属性进行分类,这些属性包括应用片段所属的超类、应用片段中包含的组件数目、应用片段的类型以及与应用片段所表示的组件相关联的输入和/或输出的数目。
可以创建多个文件夹和/或目录并填入应用片段以形成组件库。组件库可以用于生成新的和现有应用中的组件。另外,组件库可以是共享的,诸如通过将一个或多个应用片段向寄宿在其他计算设备上的文件系统转移。
此外,存储在文件系统中的应用片段可以是休眠的。休眠应用片段不能被执行,除非通过向现有接受方应用插入或者通过选择选项以基于该应用片段来创建新应用。因此,与不兼容组件相对应的应用片段可以存储在相同的文件夹或目录中,因为休眠应用片段不会相互交互以导致冲突。
图3示出了呈现在桌面100上允许在分层文件系统表示中创建应用片段的示例性界面。分层文件系统窗口300可以显示在桌面100上。此外,桌面100的菜单栏104可以包括与分层文件系统窗口300相关联的文件系统图标302。分层文件系统窗口300可以呈现与文件系统的一个或多个部分相关联的信息,诸如包括一个或多个文件夹或卷的目录结构。分层文件系统窗口300可以包括目录树窗格305,其可以显示多个文件夹和卷(包括文件夹310)之间的关系。分层文件系统窗口300还可以包括内容窗格315,其可以显示当前选择的文件夹(诸如文件夹310)的内容。
可以在给予方应用窗口105中选择可复用组件并将其向分层文件系统窗口300复制。例如,可以在给予方应用窗口105中选择天气监视器120,并通过拖放操作325将其向分层系统文件窗口300复制。此外,天气监视器120可以施放到分层文件系统查看器窗口300的任何部分中。例如,天气监视器120可以被施放到目录树窗格305所呈现的文件夹310上。作为将天气监视器120施放到文件夹310上的结果,在该文件系统中创建与给予方应用窗口105的天气监视器组件相对应的应用片段。另外,可以在对应于文件夹310的内容窗格315中创建天气监视器文件图标320。备选地,天气监视器120可以直接施放到内容窗格315中。
图4示出了描述用于使用应用片段以将组件向应用插入的示例性过程的流程图。可以在与计算设备相关联的文件系统中生成应用片段(405)。可以通过将可复用组件从给予方应用向文件系统的任何视图中转移来生成应用片段。例如,可以通过拖放操作或复制粘贴操作将可复用组件从给予方应用向文件系统转移。一旦在文件系统中被捕获,应用片段就可以存储为文件,并且由关联的应用片段图标进行标识。在有些实现中,应用片段也可以通过文件传送在计算设备之间转移,包括通过附加于电子消息、通过网络的文件传送或者在便携式存储介质上的人工传送。
此外,可以在文件系统中选择与可复用组件相对应的应用片段并将其向接受方应用插入(410)。例如,可以从文件系统的图形化表示中拖拽与应用片段相关联的图标,并将其施放到与接受方应用相关联的用户界面中。在有些实现中,接受方应用可以对应于远程服务器上主控的应用或服务。与接受方应用相关联的用户界面可以是对应于被主控应用或服务的本地界面,而与该应用或服务相关联的至少一些操作的执行可以在远程服务器处执行。例如,与接受方应用相关联的用户界面可以与web浏览器应用相关联地呈现。此外,接受方应用接受应用片段的能力可以基于实现一个或多个安全控制(诸如认证、验证和许可)的安全上下文进行约束。
在有些实现中,可以施放应用片段的一个或多个区域可以在接受方应用的用户界面中进行标识。另外,接受方应用中的一个或多个组件可以基于施放应用片段图标所处的区域来调整尺寸和/或重新定位。应用片段还可以通过诸如剪切粘贴或复制粘贴操作等命令操作而向接受方应用插入。接受方应用可以是可被修改的任何现有应用或者是任何新应用。
应用片段可以包括描述可复用组件的一个或多个数据项,诸如特性。例如,应用片段可以被配置作为组件可以如何在接受方应用中实例化的说明。应用片段还可以包括描述可以找到组件的实现的位置的信息,诸如去往对应于该组件的源代码的链接。另外,包括在应用片段中的信息可以以任何格式来表示,包括二进制数据、文本或标记语言,诸如可扩展标记语言(XML)。
在有些实现中,应用片段可以配置为多个对象的序列化,诸如由加利福尼亚州圣荷塞的Adobe Systems Incorporated提供的Adobe FlexActionScript Objects。应用片段中的对象可以描述一个或多个组件,其可以与本地计算设备或远程计算设备相关联。进一步地,对象可以公开组件与之相关联的一个或多个应用名称、组件的类、去往代表组件的定义的文件的路径、组件的一个或多个特性、与组件相关联的一个或多个样式以及可以获取对应于组件的源代码的地址。
应用片段中的一个或多个数据项可以被接受方应用读取并用于访问对应于所标识的可复用组件的信息(415)。如果对应于可复用组件的信息位于远程计算设备上,则可以通过诸如局域网或因特网的网络来取回该信息。进一步地,对应于可复用组件的信息可以用于在接受方应用中生成可复用组件的有效副本(420)。在有些实现中,应用片段可以包括在接受方应用中生成可复用组件的有效副本所需的所有信息。在这种实现中,可以省略取回附加信息。
图5示出了描述用于激活应用中的功能的示例性过程的流程图。接受方应用可以在计算系统中执行(505)。接受方应用可以是不包括或不支持特定功能的现有应用。例如,现有应用的一个或多个功能(诸如,可选特征)在购买升级之前可以被禁用。测试版应用的功能在购买许可之前也可以进行约束。类似地,一个或多个附加特征诸如可以通过第三方单独地可用于应用。接受方应用也可以是尚不支持部分或全部功能的新应用。在有些实现中,对现有应用的一个或多个升级也可以作为诸如安全补丁和缺陷修复之类的附加功能来提供。
接受方应用可以在执行期间检测应用片段的插入(510)。例如,接受方应用可以确定应用片段已经被施放到与接受方应用相关联的用户界面上。接受方应用还可以检测粘贴或其它此类插入操作。此外,接受方应用可以访问应用片段以确定其内容(515)。应用片段可以包括标识其所代表的功能或组件的一个或多个特性和值。接受方应用还可以基于该一个或多个特性来确定应用片段是否应当被进一步处理。例如,如果接受方应用确定之前已经安装或激活了与应用片段相关联的功能,则接受方应用可以忽略该应用片段。备选地,如果接受方应用确定尚不支持与应用片段相关联的功能,诸如如果关联的功能没有激活或者如果应用片段涉及使用该应用的许可,则接受方应用可以使用该应用片段。
此外,接受方应用可以确定是否需要一个或多个附加数据项来实现与该应用片段相关联的功能(520)。例如,应用片段可以仅包括描述功能以及标识可以从其取回用于实现该功能的附加数据的位置的有限量数据。备选地,应用片段可以包括实现该功能所需的所有数据。应用片段也可以代表可以用于激活已经存在于该接受方应用中的功能的密钥或许可。如果需要附加数据,则可以从应用片段所指示的位置处取回该数据(525)。一旦取回了数据,或者如果不需要附加数据,则接受方应用可以激活对应的功能(530)。例如,接受方应用可以启动一个或多个功能或者安装与该应用片段相关联的源代码。在有些实现中,接受方应用可以与应用环境交互以基于应用片段激活功能。
图6示出了描述用于存储应用片段的示例性过程的流程图。最初,组件呈现在对应于给予方应用的给予方应用窗口中,其中给予方应用正在计算系统中执行(605)。可以接收用于在给予方应用窗口中选择组件以将其向与计算系统相关联的文件系统插入的输入(610)。可以生成与组件相对应的应用片段(615)。一旦生成了应用片段,可以在文件系统中存储应用片段(620)。
本说明书中描述的主题和功能性操作的实施方式可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,该计算机软件、固件或硬件包括本说明书中公开的结构及其等同结构、或是它们的一个或多个的组合。本说明书中描述的主题的实施方式可以实现为一个或多个计算机程序产品,也即,在计算机可读介质上编码的、以便由数据处理装置执行或控制数据处理装置操作的一个或多个计算机程序指令模块。计算机可读介质可以是机器可读的存储设备、机器可读的存储衬底、存储设备、实现计算机可读的传播信号的组合、或者它们中的一个或多个的结合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机,或者多个处理器或计算机。除了硬件之外,该装置可以包括为考虑中的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境,或者它们中一个或多个的结合的代码。传播信号是人工产生的信号,例如,机器产生的电信号、光信号或者电磁信号,生成该信号以对信息进行编码,以便传输到适当的接收器装置。
计算机程序(也公知为程序、软件、软件应用、脚本或代码)可以由任意形式的编程语言编写,包括编译语言或解释语言,并且该计算机程序可以任意形式部署,包括部署为单独的程序或模块、组件、子例程,或者适于在计算环境中使用的其他单元。计算机程序无需对应于文件系统中的文件。程序可以存储在保存其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、可以存储在专门用于考虑中的程序的单个文件中,或者存储在多个协同文件中(例如,存储一个或多个模块、子程序,或代码部分的文件)。可以将计算机程序部署为在一个计算机上执行,或者将其部署为在位于一个地点的多个计算机上执行或跨过多个地点分布且通过通信网络互连的多个计算机上执行。
本说明书中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,用于通过对输入数据进行操作以及产生输出来执行功能。该处理和逻辑流程还可以由例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路执行,并且也可以将装置实现为所述专用逻辑电路。
适于计算机程序执行的处理器例如包括通用和专用处理器两者、以及任意类型的数字计算机的任意一个或多个处理器。通常,处理器将从只读存储器或随机访问存储器或两者处接收指令和数据。计算机的基本元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个海量存储设备,或被操作性地耦合为从所述用于存储数据的一个或多个海量存储设备接收数据、向其传送数据、或者进行两者,该海量存储设备例如磁盘、磁光盘、或光盘。然而,计算机不必一定具有这样的设备。而且,计算机可以嵌入在其他设备中,例如移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器,这仅是几例。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,例如包括:半导体存储设备,如EPROM、EEPROM和闪存设备;磁盘,如内部硬盘或可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或是包括在专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施方式可以在具有用于向用户显示信息的显示设备以及用户可以通过其向计算机提供输入的键盘和指点设备的计算机上实现,其中显示设备例如CRT(阴极射线管)或者LCD(液晶显示器)监视器,指点设备例如鼠标或者轨迹球。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感观反馈,例如视觉反馈、声觉反馈、或者触觉反馈;并且可以接收来自用户的任意形式的输入,包括声音、语音或触觉输入。
本说明书中描述的主题的实施方式可以实现在包括后端组件的计算系统中,例如数据服务器;或实现在包括中间件组件的计算系统中,例如应用服务器;或实现在包括前端组件的计算系统中,例如具有图形用户界面或者Web浏览器的客户端计算机,用户通过该图形用户界面或Web浏览器可以与本说明书中描述的主题的实现进行交互;或实现在一个或多个这样的后端、中间件、或前端组件的任意结合中。系统组件可以与任意形式或介质的数字数据通信例如通信网络互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器一般相互远离,并且通常通过通信网络进行交互。客户端和服务器的关系是借助于在各自计算机上运行的、彼此具有客户端-服务器关系的计算机程序得到的。
尽管本说明书包含多种特定细节,但是不应将其理解为是对本发明的范围或者所要求保护内容的限制,而应当理解为是本发明具体实施方式的特定特征的描述。本说明书中描述的在各个实施方式的上下文中的某些特征也可以在单个实施方式中结合实现。相反,在单个实施方式上下文中描述的各种特征也可以分别实现在多个实施方式中或者任意适当的子组合中。而且,尽管上文可能将特征描述为在特定的组合中操作,甚至初始也是这样要求保护的,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以针对子组合或组合的变形。
类似地,尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。而且,在上述实施方式中多个系统组件的分离不应被理解为在所有实施方式中需要这些操作,应当将其理解为所描述的程序组件和系统通常可以在单个软件产品中集成在一起,或是被打包到多个软件产品中。
由此,描述了本发明的特定实施方式。其他实施方式包括在所附权利要求的范围中。例如,权利要求中列举的动作可以按不同的顺序执行,并仍然得到期望的结果。

Claims (25)

1.一种存储应用片段的计算机实现的方法,所述方法包括:
在与给予方应用相对应的给予方应用窗口中呈现组件,其中所述给予方应用正在计算系统中执行;
接收在所述给予方应用窗口中选择组件以向与所述计算系统相关联的文件系统插入的输入;
生成与所述组件相对应的应用片段;以及
在所述文件系统中存储所述应用片段。
2.如权利要求1的计算机实现的方法,其中:
所述组件包括可复用组件;以及
所述可复用组件在视觉上可区别于在所述给予方应用窗口中显示的一个或多个非可复用组件。
3.如权利要求1的计算机实现的方法,进一步包括:
将所述应用片段向与接受方应用相关联的接受方应用窗口插入;以及
在所述接受方应用中基于所述应用片段生成组件。
4.如权利要求1的计算机实现的方法,进一步包括:
激活所述文件系统中的所述应用片段;以及
响应于所述激活,基于所述应用片段生成包括至少一个组件的应用。
5.如权利要求4的计算机实现的方法,其中激活所述应用片段包括双击所述应用片段的文件系统表示。
6.如权利要求1的计算机实现的方法,进一步包括:
在所述文件系统中生成代表所述应用片段的图标。
7.如权利要求1的计算机实现的方法,其中所述给予方应用与包括跨操作系统运行时的应用环境相关联。
8.如权利要求1的计算机实现的方法,进一步包括:
将所述应用片段向与接受方应用相关联的接受方应用窗口插入;以及
基于所述应用片段来激活所述接受方应用的功能。
9.一种编码在计算机可读介质上的计算机程序产品,其可操作以使得数据处理装置执行操作,包括:
在与给予方应用相对应的给予方应用窗口中呈现组件,其中所述给予方应用正在计算系统中执行;
接收在所述给予方应用窗口中选择组件以向与所述计算系统相关联的文件系统插入的输入;
生成与所述组件相对应的应用片段;以及
在所述文件系统中存储所述应用片段。
10.如权利要求9的计算机程序产品,其中:
所述组件包括可复用组件;以及
所述可复用组件在视觉上可区别于在所述给予方应用窗口中显示的一个或多个非可复用组件。
11.如权利要求9的计算机程序产品,进一步可操作以使得数据处理装置执行操作,包括:
接收将所述应用片段向与接受方应用相关联的接受方应用窗口插入的输入;以及
在所述接受方应用中基于所述应用片段生成组件。
12.如权利要求9的计算机程序产品,进一步可操作以使得数据处理装置执行操作,包括:
接收激活所述文件系统中的所述应用片段的输入;以及
响应于所述激活,基于所述应用片段生成包括至少一个组件的应用。
13.如权利要求12的计算机程序产品,其中接收激活所述应用片段的输入包括接收与所述应用片段的文件系统表示相关联的双击。
14.如权利要求9的计算机程序产品,进一步可操作以使得数据处理装置执行操作,包括:
在所述文件系统中生成代表所述应用片段的图标。
15.如权利要求9的计算机程序产品,其中所述给予方应用与包括跨操作系统运行时的应用环境相关联。
16.如权利要求9的计算机程序产品,进一步可操作以使得数据处理装置执行操作,包括:
接收将所述应用片段向与接受方应用相关联的接受方应用窗口插入的输入;以及
基于所述应用片段来激活所述接受方应用的功能。
17.一种系统,包括:
存储在计算机可读介质上的给予方应用;以及
包括处理器电子设备的计算系统,该处理器电子设备配置用于执行操作,包括:
在与所述给予方应用相对应的给予方应用窗口中呈现组件,
其中所述给予方应用正在计算系统中执行;
接收在所述给予方应用窗口中选择组件以向与所述计算系统相关联的文件系统插入的输入;
生成与所述组件相对应的应用片段;以及
在所述文件系统中存储所述应用片段。
18.如权利要求17的系统,其中:
所述组件包括可复用组件;以及
所述可复用组件在视觉上可区别于在所述给予方应用窗口中显示的一个或多个非可复用组件。
19.如权利要求17的系统,其中所述处理器电子设备进一步配置用于执行操作,包括:
接收将所述应用片段向与接受方应用相关联的接受方应用窗口插入的输入;以及
在所述接受方应用中基于所述应用片段生成组件。
20.如权利要求17的系统,其中所述处理器电子设备进一步配置用于执行操作,包括:
接收激活所述文件系统中的所述应用片段的输入;以及
响应于所述激活,基于所述应用片段生成包括至少一个组件的应用。
21.如权利要求20的系统,其中接收激活所述应用片段的输入包括接收与所述应用片段的文件系统表示相关联的双击。
22.如权利要求17的系统,其中所述处理器电子设备进一步配置用于执行操作,包括:
在所述文件系统中生成代表所述应用片段的图标。
23.如权利要求17的系统,其中所述给予方应用与包括跨操作系统运行时的应用环境相关联。
24.如权利要求17的系统,其中所述处理器电子设备进一步配置用于执行操作,包括:
接收将所述应用片段向与接受方应用相关联的接受方应用窗口插入的输入;以及
基于所述应用片段来激活所述接受方应用的功能。
25.一种存储应用片段的计算机实现的方法,所述方法包括:
呈现与给予方应用相关联的组件;
接收选择所述组件以向文件系统插入的输入;
生成与所述组件相对应的应用片段;以及
在所述文件系统中存储所述应用片段。
CN200880116203.XA 2007-10-01 2008-10-01 用于生成应用片段的系统和方法 Expired - Fee Related CN101861566B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US97675907P 2007-10-01 2007-10-01
US60/976,759 2007-10-01
US11/951,951 US8176466B2 (en) 2007-10-01 2007-12-06 System and method for generating an application fragment
US11/951,951 2007-12-06
PCT/US2008/078496 WO2009046140A2 (en) 2007-10-01 2008-10-01 System and method for generating an application fragment

Publications (2)

Publication Number Publication Date
CN101861566A true CN101861566A (zh) 2010-10-13
CN101861566B CN101861566B (zh) 2015-11-25

Family

ID=40509867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880116203.XA Expired - Fee Related CN101861566B (zh) 2007-10-01 2008-10-01 用于生成应用片段的系统和方法

Country Status (3)

Country Link
US (1) US8176466B2 (zh)
CN (1) CN101861566B (zh)
WO (1) WO2009046140A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108235758A (zh) * 2017-01-22 2018-06-29 华为技术有限公司 一种管理应用片段的方法和终端设备
WO2018133228A1 (zh) * 2017-01-22 2018-07-26 华为技术有限公司 一种管理应用片段的方法和终端设备
CN111142735A (zh) * 2019-12-10 2020-05-12 深圳市优必选科技股份有限公司 一种软件页面的创建方法、装置、终端设备和存储介质
CN111726373A (zh) * 2019-03-18 2020-09-29 阿里巴巴集团控股有限公司 通信链路构建方法、装置和设备

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7493592B2 (en) 2003-10-24 2009-02-17 Microsoft Corporation Programming interface for a computer platform
US8171482B1 (en) * 2006-05-09 2012-05-01 Vmware, Inc. Application environment specifications for provisioning application specific runtime environments using subsets of resources required for execution
US11262996B2 (en) 2007-05-09 2022-03-01 Vmware, Inc. Repository including exclusion list
US8347263B1 (en) 2007-05-09 2013-01-01 Vmware, Inc. Repository including installation metadata for executable applications
US8577937B1 (en) 2007-05-09 2013-11-05 Vmware, Inc. Repository including exclusion list
US8191036B2 (en) * 2008-05-19 2012-05-29 Apple Inc. Mechanism to support orphaned and partially configured objects
US8875098B2 (en) * 2008-11-18 2014-10-28 Microsoft Corporation Workflow engine for execution of web mashups
JP5419486B2 (ja) * 2009-02-10 2014-02-19 キヤノン株式会社 データ処理装置、データ処理方法、およびプログラム
US8239781B2 (en) * 2009-06-30 2012-08-07 Sap Ag Drag and drop of an application component to desktop
CN101957750A (zh) * 2009-07-20 2011-01-26 鸿富锦精密工业(深圳)有限公司 电子装置及在电子装置上实现用户界面的方法
US20110119609A1 (en) * 2009-11-16 2011-05-19 Apple Inc. Docking User Interface Elements
US8577904B2 (en) * 2009-12-07 2013-11-05 International Business Machines Corporation Composite copy and paste for composite user interfaces
KR101783961B1 (ko) * 2010-11-17 2017-10-10 삼성전자주식회사 직관적인 폴더 편집 및 열람을 위한 사용자 인터페이스 표시 방법 및 장치
WO2012100303A1 (en) 2011-01-27 2012-08-02 Amplifier Marketing Pty Limited Method and system for providing content
US9262042B2 (en) * 2011-07-25 2016-02-16 Lenovo (Singapore) Pte. Ltd. File transfer applications
AU2012355474B2 (en) * 2011-12-23 2018-01-04 Airstrip Ip Holdings, Llc Systems and methods for developing multi-platform applications for computing devices
KR101921276B1 (ko) 2012-02-03 2018-11-22 삼성전자주식회사 휴대단말기의 멀티태스킹 수행 장치 및 방법
US9055069B2 (en) * 2012-03-19 2015-06-09 Xcelemor, Inc. Hardware computing system with software mediation and method of operation thereof
US9928086B2 (en) * 2013-03-14 2018-03-27 Corel Corporation System and method for software feature management
US9836730B1 (en) 2013-03-14 2017-12-05 Corel Corporation Software product piracy monetization process
KR102199786B1 (ko) * 2013-08-27 2021-01-07 삼성전자주식회사 콘텐트를 기반으로 하는 정보 제공 방법 및 장치
US20150113451A1 (en) * 2013-10-23 2015-04-23 Steve Kopp Creation of widgets based on a current data context
US10339183B2 (en) 2015-06-22 2019-07-02 Microsoft Technology Licensing, Llc Document storage for reuse of content within documents
US10740349B2 (en) 2015-06-22 2020-08-11 Microsoft Technology Licensing, Llc Document storage for reuse of content within documents
US10394949B2 (en) * 2015-06-22 2019-08-27 Microsoft Technology Licensing, Llc Deconstructing documents into component blocks for reuse in productivity applications
US10095489B1 (en) * 2016-12-22 2018-10-09 EMC IP Holding Company LLC GUI-based application template for containerized application software development
US10466981B1 (en) * 2017-06-06 2019-11-05 Prattle Analytics, LLC System and method for generative programming in an integrated development environment (IDE)
EP3726373B1 (en) * 2019-04-15 2024-03-06 Mendix Technology B.V. Creating an app method and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005412A1 (en) * 2001-04-06 2003-01-02 Eanes James Thomas System for ontology-based creation of software agents from reusable components

Family Cites Families (184)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4752893A (en) 1985-11-06 1988-06-21 Texas Instruments Incorporated Graphics data processing apparatus having image operations with transparent color having a selectable number of bits
FR2647239B1 (fr) 1989-05-22 1991-07-05 Bull Sa Procede de generation d'interfaces pour applications-utilisateurs visualisables sur l'ecran d'un systeme informatique et dispositif pour mettre en oeuvre ledit procede
US5168441A (en) 1990-05-30 1992-12-01 Allen-Bradley Company, Inc. Methods for set up and programming of machine and process controllers
US5388201A (en) 1990-09-14 1995-02-07 Hourvitz; Leonard Method and apparatus for providing multiple bit depth windows
US5289574A (en) 1990-09-17 1994-02-22 Hewlett-Packard Company Multiple virtual screens on an "X windows" terminal
JPH0520044A (ja) 1991-07-15 1993-01-29 Personal Joho Kankyo Kyokai ユーザインタフエース装置
EP0528631B1 (en) 1991-08-13 1998-05-20 Xerox Corporation Electronic image generation
CA2077173C (en) 1991-11-22 2003-04-22 Michael Chen Method and apparatus for direct manipulation of 3-d objects on computer displays
JPH0644339A (ja) 1992-03-06 1994-02-18 Hewlett Packard Co <Hp> 図形オブジェクト操作システム及び方法
US5357603A (en) 1992-06-15 1994-10-18 Microsoft Corporation Method and system for changing a shape type while maintaining existing graphic characteristics
CA2101864A1 (en) 1992-08-27 1994-02-28 Claudia Carpenter Customizable program control interface for a computer system
DE69315969T2 (de) 1992-12-15 1998-07-30 Sun Microsystems Inc Darstellung von Informationen in einem Anzeigesystem mit transparenten Fenstern
US5588107A (en) 1993-03-22 1996-12-24 Island Graphics Corporation Method and apparatus for selectably expandable menus
US5638501A (en) 1993-05-10 1997-06-10 Apple Computer, Inc. Method and apparatus for displaying an overlay image
US5764238A (en) 1993-09-10 1998-06-09 Ati Technologies Inc. Method and apparatus for scaling and blending an image to be displayed
US6983051B1 (en) 1993-11-18 2006-01-03 Digimarc Corporation Methods for audio watermarking and decoding
US5522022A (en) 1993-11-24 1996-05-28 Xerox Corporation Analyzing an image showing a node-link structure
US5796402A (en) 1993-12-03 1998-08-18 Microsoft Corporation Method and system for aligning windows on a computer screen
US6757438B2 (en) 2000-02-28 2004-06-29 Next Software, Inc. Method and apparatus for video compression using microwavelets
US6031937A (en) 1994-05-19 2000-02-29 Next Software, Inc. Method and apparatus for video compression using block and wavelet techniques
US5835693A (en) 1994-07-22 1998-11-10 Lynch; James D. Interactive system for simulation and display of multi-body systems in three dimensions
AUPM704194A0 (en) 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the evaluation of a graphical programming language
US5564002A (en) 1994-08-01 1996-10-08 International Business Machines Corporation Method and apparatus for implementing a virtual desktop through window positioning
US5835692A (en) 1994-11-21 1998-11-10 International Business Machines Corporation System and method for providing mapping notation in interactive video displays
JP3647487B2 (ja) 1994-12-02 2005-05-11 株式会社ソニー・コンピュータエンタテインメント テクスチャマッピング装置
JP3578498B2 (ja) 1994-12-02 2004-10-20 株式会社ソニー・コンピュータエンタテインメント 画像情報処理装置
US5949409A (en) 1994-12-02 1999-09-07 Sony Corporation Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
US5537630A (en) 1994-12-05 1996-07-16 International Business Machines Corporation Method and system for specifying method parameters in a visual programming system
US5877762A (en) 1995-02-27 1999-03-02 Apple Computer, Inc. System and method for capturing images of screens which display multiple windows
JP3517301B2 (ja) 1995-03-28 2004-04-12 富士通株式会社 仮想画面表示処理システム
US6307574B1 (en) 1995-05-08 2001-10-23 Apple Computer, Inc. Graphical user interface with hierarchical structure for customizable menus and control objects
US5877741A (en) 1995-06-07 1999-03-02 Seiko Epson Corporation System and method for implementing an overlay pathway
US5731819A (en) 1995-07-18 1998-03-24 Softimage Deformation of a graphic object to emphasize effects of motion
US6331856B1 (en) 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
US5809230A (en) 1996-01-16 1998-09-15 Mclellan Software International, Llc System and method for controlling access to personal computer system resources
US5838316A (en) 1996-01-26 1998-11-17 International Business Machines Corporation Method and system for presenting a plurality of animated display objects to a user for selection on a graphical user interface in a data processing system
EP1387287B1 (en) 1996-02-29 2008-08-13 Sony Computer Entertainment Inc. Picture processing apparatus and picture processing method
US6154601A (en) 1996-04-12 2000-11-28 Hitachi Denshi Kabushiki Kaisha Method for editing image information with aid of computer and editing system
US6542166B1 (en) 1996-05-09 2003-04-01 National Instruments Corporation System and method for editing a control
US5764229A (en) 1996-05-09 1998-06-09 International Business Machines Corporation Method of and system for updating dynamic translucent windows with buffers
JP3537259B2 (ja) 1996-05-10 2004-06-14 株式会社ソニー・コンピュータエンタテインメント データ処理装置およびデータ処理方法
US5947819A (en) 1996-05-22 1999-09-07 Konami Co., Ltd. Object-throwing video game system
AUPO002196A0 (en) 1996-05-22 1996-06-13 Canon Information Systems Research Australia Pty Ltd A method of optimising an expression tree for the production of images
US5920659A (en) 1996-06-24 1999-07-06 Intel Corporation Method and apparatus for scaling image data having associated transparency data
US6006231A (en) 1996-09-10 1999-12-21 Warp 10 Technologies Inc. File format for an image including multiple versions of an image, and related system and method
US5933155A (en) 1996-11-06 1999-08-03 Silicon Graphics, Inc. System and method for buffering multiple frames while controlling latency
US6195664B1 (en) 1997-02-21 2001-02-27 Micrografx, Inc. Method and system for controlling the conversion of a file from an input format to an output format
US5913063A (en) 1997-02-26 1999-06-15 Oracle Corporation Drag and drop object subclassing
US6204851B1 (en) 1997-04-04 2001-03-20 Intergraph Corporation Apparatus and method for applying effects to graphical images
US6144381A (en) 1997-05-14 2000-11-07 International Business Machines Corporation Systems, methods and computer program products for compass navigation of avatars in three dimensional worlds
IL120867A0 (en) 1997-05-20 1997-09-30 Cadent Ltd Computer user interface for orthodontic use
US6011562A (en) 1997-08-01 2000-01-04 Avid Technology Inc. Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data
US6128010A (en) 1997-08-05 2000-10-03 Assistive Technology, Inc. Action bins for computer user interface
US5978579A (en) 1997-08-12 1999-11-02 International Business Machines Corporation Architecture for customizable component system
US6005568A (en) 1997-09-30 1999-12-21 The United States Of America As Represented By The Secretary Of The Navy Computer system providing platform independent universal client device
US6272558B1 (en) 1997-10-06 2001-08-07 Canon Kabushiki Kaisha Application programming interface for manipulating flashpix files
US6469714B2 (en) 1998-01-26 2002-10-22 International Business Machines Corporation Infocenter user interface for applets and components
US6278448B1 (en) 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6412021B1 (en) 1998-02-26 2002-06-25 Sun Microsystems, Inc. Method and apparatus for performing user notification
US6266053B1 (en) 1998-04-03 2001-07-24 Synapix, Inc. Time inheritance scene graph for representation of media content
US6310621B1 (en) 1998-04-03 2001-10-30 Avid Technology, Inc. Extended support for numerical controls
US6272484B1 (en) 1998-05-27 2001-08-07 Scansoft, Inc. Electronic document manager
US6353437B1 (en) 1998-05-29 2002-03-05 Avid Technology, Inc. Animation system and method for defining and using rule-based groups of objects
US6577317B1 (en) 1998-08-20 2003-06-10 Apple Computer, Inc. Apparatus and method for geometry operations in a 3D-graphics pipeline
US6771264B1 (en) 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
JP3566889B2 (ja) 1998-10-08 2004-09-15 株式会社ソニー・コンピュータエンタテインメント 情報追加方法、ビデオゲーム機及び記録媒体
US6427230B1 (en) 1998-11-09 2002-07-30 Unisys Corporation System and method for defining and managing reusable groups software constructs within an object management system
US6993721B2 (en) 1998-11-30 2006-01-31 Sony Corporation Web channel guide graphical interface system and method
US6356903B1 (en) 1998-12-30 2002-03-12 American Management Systems, Inc. Content management system
US6753878B1 (en) 1999-03-08 2004-06-22 Hewlett-Packard Development Company, L.P. Parallel pipelined merge engines
US6714201B1 (en) 1999-04-14 2004-03-30 3D Open Motion, Llc Apparatuses, methods, computer programming, and propagated signals for modeling motion in computer applications
US6512522B1 (en) 1999-04-15 2003-01-28 Avid Technology, Inc. Animation of three-dimensional characters along a path for motion video sequences
US6590592B1 (en) 1999-04-23 2003-07-08 Xsides Corporation Parallel interface
US6765592B1 (en) 1999-04-30 2004-07-20 Microsoft Corporation Undockable sub-windows
US6369830B1 (en) 1999-05-10 2002-04-09 Apple Computer, Inc. Rendering translucent layers in a display system
US6321314B1 (en) 1999-06-09 2001-11-20 Ati International S.R.L. Method and apparatus for restricting memory access
US6542160B1 (en) 1999-06-18 2003-04-01 Phoenix Technologies Ltd. Re-generating a displayed image
US6573896B1 (en) 1999-07-08 2003-06-03 Dassault Systemes Three-dimensional arrow
JP3163496B2 (ja) 1999-08-20 2001-05-08 株式会社光栄 集団キャラクタ移動方法、記録媒体及びゲーム装置
US6687745B1 (en) 1999-09-14 2004-02-03 Droplet, Inc System and method for delivering a graphical user interface of remote applications over a thin bandwidth connection
US7061486B2 (en) 1999-09-24 2006-06-13 Sun Microsystems, Inc. Using messaging to manage scene-based rendering
US7050955B1 (en) 1999-10-01 2006-05-23 Immersion Corporation System, method and data structure for simulated interaction with graphical objects
US6483524B1 (en) 1999-10-01 2002-11-19 Global Graphics Software Limited Prepress workflow method using raster image processor
US6452600B1 (en) 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6411301B1 (en) 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US7028264B2 (en) 1999-10-29 2006-04-11 Surfcast, Inc. System and method for simultaneous display of multiple information sources
US6457034B1 (en) 1999-11-02 2002-09-24 Ati International Srl Method and apparatus for accumulation buffering in the video graphics system
US6806892B1 (en) 1999-12-20 2004-10-19 International Business Machines Corporation Layer viewport for enhanced viewing in layered drawings
US20030174154A1 (en) 2000-04-04 2003-09-18 Satoru Yukie User interface for interfacing with plural real-time data sources
US6304684B1 (en) 2000-02-15 2001-10-16 Cyberecord, Inc. Information processing system and method of using same
US20010035885A1 (en) 2000-03-20 2001-11-01 Michael Iron Method of graphically presenting network information
US6857061B1 (en) 2000-04-07 2005-02-15 Nintendo Co., Ltd. Method and apparatus for obtaining a scalar value directly from a vector register
US20060123356A1 (en) 2000-05-05 2006-06-08 Microsoft Corporation Dynamic and updateable computing application panes
US20020040314A1 (en) 2000-05-08 2002-04-04 Michael Tolson Method and system for business application of a portable information agent
US6707462B1 (en) 2000-05-12 2004-03-16 Microsoft Corporation Method and system for implementing graphics control constructs
US6910000B1 (en) 2000-06-02 2005-06-21 Mitsubishi Electric Research Labs, Inc. Generalized belief propagation for probabilistic systems
US6717599B1 (en) 2000-06-29 2004-04-06 Microsoft Corporation Method, system, and computer program product for implementing derivative operators with graphics hardware
US6931633B1 (en) 2000-08-01 2005-08-16 National Instruments Corporation System and method of evaluating the performance of an image processing algorithm
AU2001288235A1 (en) 2000-08-07 2002-02-18 Active Data Exchange, Inc. Syndication methodology to dynamically place digital assets on non-related web sites
US6639595B1 (en) 2000-08-23 2003-10-28 Nintendo Co., Ltd. Achromatic lighting in a graphics system and method
US6664958B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Z-texturing
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6664962B1 (en) 2000-08-23 2003-12-16 Nintendo Co., Ltd. Shadow mapping in a low cost graphics system
US6580430B1 (en) 2000-08-23 2003-06-17 Nintendo Co., Ltd. Method and apparatus for providing improved fog effects in a graphics system
US6609977B1 (en) 2000-08-23 2003-08-26 Nintendo Co., Ltd. External interfaces for a 3D graphics system
US20020065946A1 (en) 2000-10-17 2002-05-30 Shankar Narayan Synchronized computing with internet widgets
US6715053B1 (en) 2000-10-30 2004-03-30 Ati International Srl Method and apparatus for controlling memory client access to address ranges in a memory pool
US6697074B2 (en) 2000-11-28 2004-02-24 Nintendo Co., Ltd. Graphics system interface
JP3548521B2 (ja) 2000-12-05 2004-07-28 Necマイクロシステム株式会社 半透明画像処理装置及び方法
US20020078453A1 (en) 2000-12-15 2002-06-20 Hanchang Kuo Hub pages for set top box startup screen
US20040039934A1 (en) 2000-12-19 2004-02-26 Land Michael Z. System and method for multimedia authoring and playback
AU2002231289A1 (en) 2000-12-19 2002-07-01 Coolernet, Inc. System and method for multimedia authoring and playback
JP3450833B2 (ja) 2001-02-23 2003-09-29 キヤノン株式会社 画像処理装置及びその方法並びにプログラムコード、記憶媒体
US6760047B2 (en) 2001-02-26 2004-07-06 Microsoft Corporation Method for flagging and relating information in a computer system
TWI243320B (en) 2001-03-28 2005-11-11 Ulead Systems Inc Method for manipulating multiple multimedia objects
TW502180B (en) 2001-03-30 2002-09-11 Ulead Systems Inc Previewing method of editing multimedia effect
US20020174181A1 (en) 2001-04-13 2002-11-21 Songxiang Wei Sharing OpenGL applications using application based screen sampling
US20030046316A1 (en) 2001-04-18 2003-03-06 Jaroslav Gergic Systems and methods for providing conversational computing via javaserver pages and javabeans
AUPR464601A0 (en) 2001-04-30 2001-05-24 Commonwealth Of Australia, The Shapes vector
US7185290B2 (en) 2001-06-08 2007-02-27 Microsoft Corporation User interface for a system and process for providing dynamic communication access and information awareness in an interactive peripheral display
US20020186257A1 (en) 2001-06-08 2002-12-12 Cadiz Jonathan J. System and process for providing dynamic communication access and information awareness in an interactive peripheral display
US7699701B2 (en) 2001-07-05 2010-04-20 Dbs Limited Partnership Method and system for providing real time sports betting information
US7564460B2 (en) 2001-07-16 2009-07-21 Microsoft Corporation Systems and methods for providing intermediate targets in a graphics system
US6985939B2 (en) 2001-09-19 2006-01-10 International Business Machines Corporation Building distributed software services as aggregations of other services
US6944829B2 (en) 2001-09-25 2005-09-13 Wind River Systems, Inc. Configurable user-interface component management system
US7895522B2 (en) 2001-09-28 2011-02-22 Ntt Docomo, Inc. Layout of platform specific graphical user interface widgets migrated between heterogeneous device platforms
US20030080995A1 (en) 2001-10-12 2003-05-01 United Virtualities, Inc. Contextually adaptive web browser
US7257776B2 (en) 2002-02-05 2007-08-14 Microsoft Corporation Systems and methods for scaling a graphical user interface according to display dimensions and using a tiered sizing schema to define display objects
WO2003071442A1 (en) 2002-02-15 2003-08-28 Tridium, Inc. Real-time data interface and method for browsers and the like
US20030169306A1 (en) 2002-03-07 2003-09-11 Nokia Corporation Creating a screen saver from downloadable applications on mobile devices
US6906720B2 (en) 2002-03-12 2005-06-14 Sun Microsystems, Inc. Multipurpose memory system for use in a graphics system
US7010755B2 (en) 2002-04-05 2006-03-07 Microsoft Corporation Virtual desktop manager
US20040012626A1 (en) 2002-07-22 2004-01-22 Brookins Timothy J. Method for creating configurable and customizable web user interfaces
GB2392072B (en) 2002-08-14 2005-10-19 Autodesk Canada Inc Generating Image Data
US20050282612A1 (en) 2002-08-16 2005-12-22 Marc Mathews Sports theme gaming apparatus and method for playing the same
US20040036711A1 (en) 2002-08-23 2004-02-26 Anderson Thomas G. Force frames in animation
US7610352B2 (en) 2002-09-09 2009-10-27 Meca Communications, Inc. Sharing skins
US7337409B2 (en) 2002-09-25 2008-02-26 Siemens Aktiengesellschaft Customizable drag and drop for industrial software applications
GB0226292D0 (en) 2002-11-12 2002-12-18 Autodesk Canada Inc Generating image data
WO2004051395A2 (en) 2002-12-03 2004-06-17 David Boxenhorn Networked computing using objects by permitting interactivity between at least two objects over a network
US6911984B2 (en) 2003-03-12 2005-06-28 Nvidia Corporation Desktop compositor using copy-on-write semantics
US6911983B2 (en) 2003-03-12 2005-06-28 Nvidia Corporation Double-buffering of pixel data using copy-on-write semantics
US7343567B2 (en) 2003-04-25 2008-03-11 Microsoft Corporation System and method for providing dynamic user information in an interactive display
US7051282B2 (en) 2003-06-13 2006-05-23 Microsoft Corporation Multi-layer graphical user interface
US7287241B2 (en) 2003-06-17 2007-10-23 Microsoft Corporation Snaplines for control object positioning
US20050021935A1 (en) 2003-06-18 2005-01-27 Openwave Systems Inc. Method and system for downloading configurable user interface elements over a data network
US20050010634A1 (en) 2003-06-19 2005-01-13 Henderson Roderick C. Methods, systems, and computer program products for portlet aggregation by client applications on a client side of client/server environment
US8127248B2 (en) 2003-06-20 2012-02-28 Apple Inc. Computer interface having a virtual single-layer mode for viewing overlapping objects
GB2404546B (en) 2003-07-25 2005-12-14 Purple Interactive Ltd A method of organising and displaying material content on a display to a viewer
US7793227B2 (en) 2003-08-12 2010-09-07 Yahoo! Inc. Method and system of providing customizable buttons
US20050060655A1 (en) 2003-09-12 2005-03-17 Useractive Distance-learning system with dynamically constructed menu that includes embedded applications
US7480873B2 (en) 2003-09-15 2009-01-20 Sun Microsystems, Inc. Method and apparatus for manipulating two-dimensional windows within a three-dimensional display model
US7839419B2 (en) 2003-10-23 2010-11-23 Microsoft Corporation Compositing desktop window manager
US7817163B2 (en) 2003-10-23 2010-10-19 Microsoft Corporation Dynamic window anatomy
US7382378B2 (en) 2003-10-30 2008-06-03 Sensable Technologies, Inc. Apparatus and methods for stenciling an image
US7274370B2 (en) 2003-12-18 2007-09-25 Apple Inc. Composite graphics rendered using multiple frame buffers
US7434153B2 (en) 2004-01-21 2008-10-07 Fuji Xerox Co., Ltd. Systems and methods for authoring a media presentation
US7694271B2 (en) 2004-02-26 2010-04-06 International Business Machines Corporation Rendering GUI widgets with generic look and feel
US7744468B2 (en) 2004-03-15 2010-06-29 Igt Event calendar at electronic gaming device
US20050240857A1 (en) 2004-04-02 2005-10-27 Jason Benedict Methods and systems of information portal construction
US7624160B2 (en) 2004-05-04 2009-11-24 International Business Machines Corporation Methods, systems, and computer program products for client side prefetching and caching of portlets
EP1603035A3 (en) 2004-06-03 2008-03-05 MDL Information Systems, Inc. Methods and apparatus for visual application design
US7546543B2 (en) * 2004-06-25 2009-06-09 Apple Inc. Widget authoring and editing environment
US8762540B2 (en) 2004-09-01 2014-06-24 Hewlett-Packard Development Company, L.P. Managing multiple remote computing sessions displayed on a client device
US20060089840A1 (en) 2004-10-21 2006-04-27 Margaret May Health tracking method and apparatus
US7657842B2 (en) * 2004-11-12 2010-02-02 Microsoft Corporation Sidebar tile free-arrangement
US7543244B2 (en) 2005-03-22 2009-06-02 Microsoft Corporation Determining and displaying a list of most commonly used items
US7496888B2 (en) 2005-04-07 2009-02-24 International Business Machines Corporation Solution builder wizard
US7853934B2 (en) 2005-06-23 2010-12-14 Hewlett-Packard Development Company, L.P. Hot-swapping a dynamic code generator
US8924869B2 (en) 2005-08-12 2014-12-30 Barry Fellman Service for generation of customizable display widgets
US7644391B2 (en) 2005-08-18 2010-01-05 Microsoft Corporation Sidebar engine, object model and schema
US7665032B2 (en) * 2005-08-18 2010-02-16 Microsoft Corporation Sidebar engine, object model and schema
US7568165B2 (en) 2005-08-18 2009-07-28 Microsoft Corporation Sidebar engine, object model and schema
AU2006292506B2 (en) 2005-09-15 2010-04-22 Fourthwall Media, Inc Self-contained mini-applications system and method for digital television
US20070074157A1 (en) 2005-09-23 2007-03-29 Wdn Holdings, Llc Method and system for runtime graphical assembly of running applications
US9104294B2 (en) 2005-10-27 2015-08-11 Apple Inc. Linked widgets
US7783985B2 (en) 2006-01-04 2010-08-24 Citrix Systems, Inc. Systems and methods for transferring data between computing devices
US7996783B2 (en) 2006-03-02 2011-08-09 Microsoft Corporation Widget searching utilizing task framework
US8095911B2 (en) * 2006-03-31 2012-01-10 Sap Ag Method and system for utilizing development components
US20070234195A1 (en) 2006-04-03 2007-10-04 National Instruments Corporation Simultaneous update of a plurality of user interface elements displayed in a web browser
WO2008067309A2 (en) 2006-11-27 2008-06-05 Sourcecode Technology Holding, Inc. Methods and apparatus for tokenizing workflow process objects
US20080248834A1 (en) 2007-04-03 2008-10-09 Palm, Inc. System and methods for providing access to a desktop and applications of a mobile device
US8060855B2 (en) * 2007-10-09 2011-11-15 Microsoft Corporation Artifact sharing from a development environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005412A1 (en) * 2001-04-06 2003-01-02 Eanes James Thomas System for ontology-based creation of software agents from reusable components

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DONATIEN GROLAUX ET AL: "Attach me,Detach me,Assemble Me like You Work", 《HUMAN-COMPUTER INTERACTION-INTERACT 2005 LECTURE NOTES IN COMPUTER SCIENCE 》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108235758A (zh) * 2017-01-22 2018-06-29 华为技术有限公司 一种管理应用片段的方法和终端设备
WO2018133228A1 (zh) * 2017-01-22 2018-07-26 华为技术有限公司 一种管理应用片段的方法和终端设备
US11609955B2 (en) 2017-01-22 2023-03-21 Huawei Technologies Co., Ltd. Method and terminal device for managing application snippet
CN111726373A (zh) * 2019-03-18 2020-09-29 阿里巴巴集团控股有限公司 通信链路构建方法、装置和设备
CN111726373B (zh) * 2019-03-18 2022-06-03 阿里巴巴集团控股有限公司 通信链路构建方法、装置和设备
CN111142735A (zh) * 2019-12-10 2020-05-12 深圳市优必选科技股份有限公司 一种软件页面的创建方法、装置、终端设备和存储介质
CN111142735B (zh) * 2019-12-10 2021-06-29 深圳市优必选科技股份有限公司 一种软件页面的创建方法、装置、终端设备和存储介质

Also Published As

Publication number Publication date
CN101861566B (zh) 2015-11-25
WO2009046140A3 (en) 2009-05-22
US20090089752A1 (en) 2009-04-02
US8176466B2 (en) 2012-05-08
WO2009046140A2 (en) 2009-04-09

Similar Documents

Publication Publication Date Title
CN101861566B (zh) 用于生成应用片段的系统和方法
CN101821714B (zh) 复用运行应用中的组件
US10853481B1 (en) Runtime management of application components
US8566732B2 (en) Synchronization of widgets and dashboards
CN108292231B (zh) 从数据生成应用的方法和系统
CN101384983B (zh) 文本框编号和链接视觉帮助
US5625823A (en) Method and apparatus for controlling connected computers without programming
US6144984A (en) Method and apparatus for controlling connected computers without programming
KR102164418B1 (ko) 머신 비전 시스템들을 위한 비주얼 프로그램을 제공하기 위한 장치들, 시스템들 및 방법들
CN102982083B (zh) 跨分层级别的规则继承
TWI413933B (zh) 圖形使用者介面之應用程式介面
CN104823158B (zh) 用于简化的知识工程的方法与系统
US20090089739A1 (en) Intelligent editing of relational models
CN107273400A (zh) 内容管理
US20130152038A1 (en) Project management workflows
US20080015911A1 (en) Methods and apparatuses for developing business solutions
CN108027721A (zh) 用于使用控件来配置通用程序的技术
CN109074372B (zh) 使用拖放来应用元数据
US20170300305A1 (en) Executable guidance experiences based on implicitly generated guidance models
US7698636B2 (en) System and method for in-context editing of components
CN107408242A (zh) 提供对通信内的内容的交互式预览
Jackson Learn Android App Development
CN106030572B (zh) 与外部内容项的经编码的关联
US8776015B1 (en) Pattern modeling methods and systems
Ali Advanced IOS 4 Programming: Developing Mobile Applications for Apple IPhone, IPad, and IPod Touch

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151125

Termination date: 20161001