CN105659221B - 具有用于连接组件的增强工具的图形用户界面 - Google Patents

具有用于连接组件的增强工具的图形用户界面 Download PDF

Info

Publication number
CN105659221B
CN105659221B CN201480058020.2A CN201480058020A CN105659221B CN 105659221 B CN105659221 B CN 105659221B CN 201480058020 A CN201480058020 A CN 201480058020A CN 105659221 B CN105659221 B CN 105659221B
Authority
CN
China
Prior art keywords
component
port
connection
displaying
symbol
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.)
Active
Application number
CN201480058020.2A
Other languages
English (en)
Other versions
CN105659221A (zh
Inventor
埃里克·巴托
I·罗森伯格
D·史蒂文斯
D·泰温
F·M·怀特
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.)
Ab Initio Technology LLC
Original Assignee
Ab Initio Technology LLC
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 Ab Initio Technology LLC filed Critical Ab Initio Technology LLC
Publication of CN105659221A publication Critical patent/CN105659221A/zh
Application granted granted Critical
Publication of CN105659221B publication Critical patent/CN105659221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)
  • Human Computer Interaction (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

在一般方面,一种方法,包括:在用户界面上显示图的第一组件,该显示包括显示第一组件的至少一个端口;响应于与所显示的第一组件的用户交互,显示与第一组件的显示有所区别的第一组件的一个或多个端口的表示;以及使得用户能够生成第一组件的端口中的特定端口的表示与图的第二组件的端口之间的连接。

Description

具有用于连接组件的增强工具的图形用户界面
优先权要求
本申请要求2013年8月23日提交的美国专利号13/974,537的优先权,其全部内容通过引用包含于此。
背景技术
本说明涉及生成图形用户界面中的组件之间的连接。
可以使用图形用户界面来创建或操作数据流图(dataflow graph)的组件。例如,可以相对于图添加或移除组件,并且可以在组件之间生成表示组件之间的数据流的连接。
发明内容
在一般方面,一种方法,包括在用户界面上显示图的第一组件,该显示包括显示所述第一组件的至少一个端口。所述方法包括响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示。所述方法包括使得用户能够生成所述第一组件的端口中的特定端口的表示与所述图的第二组件的端口之间的连接。
在一般方面,一种存储在计算机可读介质上的软件,所述软件包括用于使计算机系统进行以下处理的指令:在用户界面上显示图的第一组件,该显示包括显示所述第一组件的至少一个端口。所述软件包括用于使计算机系统进行以下处理的指令:响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示。所述软件包括用于使计算机系统进行以下处理的指令:使得用户能够生成所述第一组件的端口中的特定端口的表示与所述图的第二组件的端口之间的连接。
在一般方面,一种计算系统,包括:至少一个处理器,用于:在用户界面上显示图的第一组件,该显示包括显示所述第一组件的至少一个端口。所述处理器被配置为响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示。所述处理器被配置为使得用户能够生成所述第一组件的端口中的特定端口的表示与所述图的第二组件的端口之间的连接。
在一般方面,一种计算系统,包括:用于在用户界面上显示图的第一组件的部件,其中在用户界面上显示图的第一组件包括显示所述第一组件的至少一个端口;用于响应于与所显示的第一组件的用户交互、显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示的部件;以及用于使得用户能够生成所述第一组件的端口中的特定端口的表示与所述图的第二组件的端口之间的连接的部件。
实施例可以包括以下特征中的一个或多个。
显示端口的表示包括显示端口的列表。
所述用户交互包括将指针悬停于所述第一组件。
显示所述第一组件包括显示数量少于所述第一组件的所有端口的数量的端口。
显示端口的表示包括显示所述第一组件的显示中没有包括的端口的表示。
显示所述第一组件包括在与所述第一组件的所述用户交互之前不显示所述第一组件的可选端口。
显示所述第一组件包括仅显示与连接相关联的所述第一组件的端口。
显示端口的表示不改变所述第一组件的显示大小。
端口的表示包括各端口的状态的指示。
特定端口的表示响应于与所述特定端口的表示的用户交互而发生改变以指示所述特定端口的状态。在一些情况下,端口的状态指示该端口是否能够进行连接。
使得用户能够生成连接包括使得用户能够从端口的表示中选择端口中的特定端口。
使得用户能够生成连接包括使得用户能够将指针从所述第一组件的端口中的特定端口拖拽至所述第二组件。在一些情况下,使得用户能够拖拽所述指针包括使得用户能够将所述指针从所述第一组件的端口中的特定端口拖拽至所述第二组件的端口。在一些情况下,所述第二组件的端口中的一个或多个端口的表示是响应于用户将所述指针拖拽至所述第二组件而显示的。在一些情况下,在所述第二组件的端口的表示中仅包括所述第二组件的能够进行连接的端口。
在一般方面,一种用于在图中连接组件的方法,所述方法包括:在用户界面中显示具有第一组件和第二组件的图,其中所述第一组件具有端口。所述方法包括显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别。所述方法包括使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接。
在一般方面,一种存储在计算机可读介质上的软件,其用于在图中连接组件,所述软件包括用于使计算机系统进行以下处理的指令:在用户界面中显示具有第一组件和第二组件的图,其中所述第一组件具有端口。所述软件包括用于使计算机系统进行以下处理的指令:显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别。所述软件包括用于使计算机系统进行以下处理的指令:使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接。
在一般方面,一种计算系统,其用于在图中连接组件,所述计算系统包括:至少一个处理器,用于:在用户界面中显示具有第一组件和第二组件的图,其中所述第一组件具有端口。所述处理器被配置为显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别。所述处理器被配置为使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接。
在一般方面,一种计算系统,用于在图中连接组件,所述计算系统包括:用于在用户界面中显示具有第一组件和第二组件的图的部件,其中所述第一组件具有端口;用于显示用于表示所述第一组件的端口的符号的部件,其中所述符号与所述第一组件有所区别;以及用于使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接的部件。
实施例可以包括以下特征中的一个或多个。
将所述符号连接至所述第二组件的用户输入包括从所述符号到所述第二组件的拖拽动作。在一些情况下,所述拖拽动作开始于用于表示所述第一组件的端口的所述符号并且结束于所述第二组件的端口。在一些情况下,所述拖拽动作开始于用于表示所述第一组件的端口的所述符号并且结束于用于表示所述第二组件的端口的第二符号,其中所述第二符号与所述第二组件有所区别。
显示用于表示所述第一组件的端口的符号包括显示包括所述符号的窗口。
使得能够建立所述第一组件的端口与第二组件之间的连接包括使得能够在不改变所述第一组件的显示大小的情况下建立所述第一组件的端口与第二组件之间的连接。
在一般方面,一种用于在图中连接组件的方法,所述方法包括:与图的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别。所述方法包括通过选择所述第一符号并且应用从所述第一符号至所述图的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口。
在一般方面,一种存储在计算机可读介质上的软件,其用于在图中连接组件,所述软件包括用于使计算机系统进行以下处理的指令:与图的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别。所述软件包括通过选择所述第一符号并且应用从所述第一符号至所述图的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口。
在一般方面,一种计算系统,其用于在图中连接组件,所述计算系统包括:至少一个处理器,用于:与图的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别。所述处理器被配置为通过选择所述第一符号并且应用从所述第一符号至所述图的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口。
在一般方面,一种计算系统,用于在图中连接组件,所述计算系统包括:用于与图的具有起初从视图中隐藏的第一端口的第一组件进行交互、并且使得显示用于表示所述第一端口的第一符号的部件,其中所述第一符号与所述第一组件有所区别;以及用于通过选择所述第一符号并且应用从所述第一符号至所述图的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作、来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口的部件。
实施例可以包括以下特征的一个或多个。
使得显示用于表示所述第一端口的第一符号包括使得显示包括所述第一符号的窗口。
所述拖拽动作使得流被拖拽至所述第二端口或用于表示所述第二端口的所述第二符号。
方面可以包括以下优点的一个或多个。
这里所述的用于生成连接的方法使得用户能够在不干涉用户界面上所显示的组件的配置的情况下容易地建立所显示的组件之间的连接。另外,用于生成连接的该方法使得用户能够操作并连接个别连接端口可能为隐藏或者大小较小的组件。
根据以下说明、以及根据权利要求书,本发明的其它特征和优点将变得明显。
附图说明
图1是数据处理系统的框图。
图2是组件的示例。
图3A~3F是用于生成连接的处理的示例。
图4是流程图。
图5A和5B是用于生成连接的处理的示例。
图6是流程图。
具体实施方式
在此说明用于生成图形开发环境中所显示的组件之间的连接的方法。例如,可以在图形用户界面中示出组件,并且即使在组件的相关连接端口的一个或多个没有显示在组件本身上的情况下也可以生成组件之间的连接。在一些示例中,即使在第一组件中的连接端口本身起初在视图中为隐藏的情况下,也可以通过使用从该连接端口的表示到第二组件的简单且直观的拖放动作来生成连接。
图1示出包括数据源102和执行环境104的示例性数据处理系统100。数据源102可以包括诸如存储装置或指向线上数据流的连接等的一个或多个数据的源,其中该一个或多个数据的源各自可以以各种格式(例如,数据库表、电子表格文件、非结构文本(flat text)文件或大型机所使用的原本格式)中的任何格式来存储或提供数据。执行环境104包括预处理模块106和执行模块112。执行环境104例如可以在诸如某个版本的UNIX操作系统等的适当的操作系统的控制下安装在一个或多个通用计算机上。例如,执行环境104可以包括包含使用多个中央处理单元(CPU)或多个处理器内核的计算机系统的结构的多节点并行计算环境,可以是本地的(例如,诸如对称多处理(SMP)计算机等的多处理器系统)或本地分布式的(例如,作为集群所连接的多个处理器或大规模并行处理(MPP)系统)、或者远程或远程分布式的(例如,经由局域网(LAN)和/或广域网(WAN)连接的多个处理器)、或者它们的任何组合。
预处理模块106从数据源102读取数据,对数据进行任何适当的处理,并且存储处理后的数据。提供数据源102的存储装置相对于执行环境104可以是本地的,例如,数据可以存储在连接至安装有执行环境104的计算机的存储介质(例如,硬盘驱动器108)上。这些存储装置相对于执行环境104还可以是远程的,例如,安装在经由(例如,云计算基础设施所提供的)远程连接与安装有执行环境104的计算机进行通信的远程系统(例如,大型机110)上。
执行模块112使用预处理模块106所生成的处理后的数据来执行指定的处理。处理模块106可以输出可能被使用的或者被存储回数据源102或执行环境104可访问的数据存储系统116的数据。开发者120能够开发数据处理应用程序的开发环境118也可以访问数据存储系统116。在一些实现中,开发环境118是用于开发作为计算图或数据流图的应用程序的系统,其中该计算图或数据流图包括顶点(表示数据处理组件或数据集),并且这些顶点通过顶点之间的有向链接(directed link)(表示工作元素(即,数据)的流)相连接。例如,在通过引用包含于此的标题为“Managing Parameters for Graph-Based Applications”的美国公开号2007/0011668中更详细地说明了这种环境。在标题为“EXECUTINGCOMPUTATIONS EXPRESSED AS GRAPHS”的美国专利5,966,072中说明了用于执行这种基于图的计算的系统。根据该系统所制作的数据流图提供用于将信息输入至图组件所表示的个别处理或从图组件所表示的个别处理获得信息的方法、用于在处理之间移动信息的方法以及用于定义处理的运行顺序的方法。该系统包括用于从任何可用方法中选取处理间通信方法的算法(例如,与图的链接相对应的通信路径可以使用TCP/IP或UNIX域套接字或者使用共享存储器在处理之间传递数据)。
使用开发环境118所开发的数据流图可以存储在例如数据存储器116中并且可以通过执行环境104进行访问。执行环境104可以执行数据流图以实施与数据流图的组件相关联的用于处理从数据源102接收到的数据的处理。
参考图2,开发环境118可以提供示出具有组件(例如,200、206、208)的数据流图210的图形用户界面。一部分组件可以表示相应的处理。例如,重新格式化(reformat)组件200表示重新格式化处理,使得在执行模块112执行数据流图210的情况下执行重新格式化组件200所表示的重新格式化处理。
数据流图210的各组件包括一个或多个连接端口,其中数据流连接(又称为“连接”)可以经由该一个或多个连接端口将组件连接至数据流图的一个或多个其它组件。连接端口可以是用于将数据接收到组件中的输入(in)端口或者从组件输出数据所经由的输出(out)端口。在一些示例中,用于描绘连接端口的符号可以表示连接端口是输入端口还是输出端口。例如,在图2的示例中,重新格式化组件200具有由输入端口符号所表示的输入端口202以及由输出端口符号所表示的输出端口204。
组件可以包括一个或多个必选连接端口,在这种情况下,如果不存在至该组件的各必选端口的连接则该组件将不执行。例如,在图2的示例中,重新格式化组件200的输入端口202和输出端口204是必选端口。在该示例中,输入端口202连接至输入文件206并且输出端口204连接至输出文件208。在这两个必选连接存在的情况下,可以执行重新格式化组件200。在本说明中,对于表示处理的组件,执行组件意味着执行该组件所表示的处理。
组件可以具有一个或多个可选的连接端口,这表示即使不存在至该组件的一个或多个可选端口的连接也可以执行该组件。例如,在图2的示例中,重新格式化组件200包括三个可选输出端口:拒绝(reject)端口210、错误(error)端口212和日志(log)端口214。尽管重新格式化组件200的可选端口210、212和214均不具有连接,但仍可以执行重新格式化组件200。
在一些示例中,可以显示组件的所有端口(例如,如重新格式化组件200的情况)。在一些示例中,可以仅显示具有连接的端口。在一些示例中,可以仅显示必选端口。在一些示例中,必选端口可以显示为默认端口,并且用户(诸如在开发环境118中开发数据流图的开发者)可以配置图形用户界面以显示特定端口(例如,所有端口、所有可选端口、所有未连接端口等),例如,以生成到可选端口或从可选端口起的连接。例如,除非组件的各可选端口具有连接,否则该可选端口可以是隐藏的。通过仅显示具有连接的可选端口,数据流图可以看起来不那么杂乱并且可以大致维持数据流图的组件的大小和对齐。
以下说明如何建立从一个组件的一个或多个隐藏可选端口连接到其它组件的端口的连接的技术。图3A~3F示出生成从重新格式化组件的隐藏可选端口到错误数据库的端口的连接的示例。在该示例中,使用诸如具有选择按钮的鼠标等的指向装置(pointingdevice)。还可以使用其它选择装置(例如,触摸屏上的触控笔(stylus))和选择命令输入(例如,触摸或动作输入)。
参考图3A,在一些示例中,重新格式化组件300被配置为显示其必选端口(输入端口302和输出端口304)和具有连接的任何可选端口。因而,在所示的示例中,输入端口302连接至输入文件306的读取(read)端口并且输出端口304连接至输出文件308的写入(write)端口。重新格式化组件还具有三个可选端口:拒绝端口、错误端口和日志端口。在图3A的示例中,这些可选端口均不具有连接,因而这些可选端口没有显示在重新格式化组件300上。在图3A的示例中,图形用户界面还示出错误数据库324。
参考图3B,在一些实现中,生成重新格式化组件300的隐藏连接端口(例如,未显示的可选端口)与诸如错误数据库324等的其它组件之间的连接可以通过使用重新格式化组件300的连接端口的一部分或全部的如下表示来实现,其中该表示是在用户例如通过将指针(诸如鼠标指针等)悬停于重新格式化组件300来与重新格式化组件300进行交互的情况下出现的。例如,表示可以是诸如包括重新格式化组件300的连接端口的一部分或全部的列表的弹出窗口或菜单320等的、与第一组件本身有所区别的表示。例如,弹出菜单320可以包括两个必选端口(输入端口302和输出端口304)以及三个可选端口(拒绝端口、错误端口和日志端口)。在一些示例中,连接端口的区别表示可以与所显示的组件重叠。
弹出菜单320起初不显示在图形用户显示上,并且在用户与重新格式化组件300进行交互之后出现。在一些示例中,为了使得菜单320示出,用户可以将指针悬停于重新格式化组件300的任何位置并持续预定量的时间(例如,0.5秒、1秒或2秒)。在一些示例中,用户可以仅将指针悬停于诸如重新格式化组件300的角落或中心等的重新格式化组件300上的某些“热点(hot spot)”。
在图3B和3D所示的示例中,连接端口的一部分或全部的表示是菜单,但该表示还可以具有其它格式。在一些示例中,表示可以包括诸如仅隐藏端口或者仅可以进行连接的那些连接端口等的、数量少于重新格式化组件300的全部连接端口的数量的连接端口。在一些示例中,表示可以是例如示出重新格式化组件300的连接端口的一部分或全部的更大版本的重新格式化组件300。
在一些示例中,菜单320可以示出诸如连接端口各自的名称、与各连接端口相关联的路径、连接端口或组件所连接至的其它连接端口或组件的名称或其它详情等的、与菜单320所列出的各连接端口有关的详情。在一些示例中,可以针对各连接端口显示诸如组件上所显示的用以指示连接端口的相同符号等的符号。例如,在图3B的示例中,利用输入端口符号来表示输入端口302,并且利用输出端口符号来表示输出端口304和三个可选端口(拒绝端口、错误端口、日志端口)中的各端口。
在一些示例中,菜单320可以指示诸如各连接端口是否连接至其它组件或者各连接端口是否可以进行连接等的、菜单中所列出的连接端口各自的状态。例如,可以使用连接端口的名称的颜色、大小或字体或者连接端口所用的符号的颜色或大小来指示连接端口的状态。
在一些示例中,可以在菜单320中显示诸如组件的名称、与组件相关联的参数或组件的处理状态等的与组件有关的其它信息。在一些示例中,可以通过选择组件(例如,通过双击或右击组件)来访问与组件有关的其它信息。
菜单中的连接端口的名称或连接端口所用的符号可以是响应用户交互的活动链接(live link)。例如,用户可以例如通过将指针(例如,鼠标指针)悬停于连接端口的名称或连接端口所用的符号来从菜单320中选择特定连接端口。如果所选择的连接端口可以进行连接,则该连接端口在菜单320中的表示可以发生改变。在一些示例中,连接端口所用的符号可以改变大小或颜色、闪光(flash)或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的名称可以改变大小、字体、颜色或者突出显示;闪光;或发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口所用的符号或连接端口的名称的变化可以是与用户悬停于组件的连接端口的情况下所发生的变化相同的变化。在一些示例中,连接端口的表示可以在该连接端口可以进行连接的情况下以一种方式发生改变并且在该连接端口无法进行连接的情况下以另一方式发生改变。在一些示例中,指针(例如,鼠标指针)在悬停于可以进行连接的连接端口的情况下可以发生改变。例如,鼠标指针可以改变形状、闪烁(blink)或发生其它改变。
例如,参考图3C,在用户将鼠标指针悬停于菜单320中的错误端口所用的符号312的情况下,对错误端口所用的符号312进行填充以指示该错误端口可以进行连接。
为了从菜单320中的特定连接端口发起连接,用户可以例如通过点击并拖拽鼠标或者通过在屏幕上轻触并拖拽来选择并拖拽菜单320中的特定连接端口所用的符号或特定连接端口的名称。在菜单320中,连接端口所用的符号、连接端口的名称或者这两者可以是以与组件上所包括的连接端口响应选择和拖放动作的方式相同的方式来响应这些动作的活动链接。在一些示例中,可以以诸如通过双击或两次轻触期望的连接端口或者通过右击期望的连接端口等的其它方式来发起连接。
一旦用户选择了特定连接端口并从该特定连接端口进行了拖拽,则菜单320消失并且该特定连接端口在数据流图330中的重新格式化组件300上显示为可见连接端口。流被显示为连接至该特定连接端口。
例如,参考图3D,用户可以通过点击并拖拽错误端口所用的符号312从(图3C所示的)菜单320中的错误端口发起连接。该动作使菜单320消失。然后,错误端口313在重新格式化组件300上显示为可见连接端口,并且流318被显示为连接至错误端口313。在该示例中,在用户从菜单320拖拽符号312的情况下,向图形用户界面指示用户试图从符号312所表示的错误端口313建立连接。在菜单320消失的情况下,错误端口313显示在重新格式化组件300上,并且指针自动移动至流318的端部,这使得用户能够将流318的端部拖拽至其它组件。
在一些示例中,用户可以将流拖拽至第二组件的目标连接端口以生成重新格式化组件300与第二组件之间的连接。在一些示例中,如果目标连接端口可以进行连接,则在将流拖拽到目标连接端口上的情况下目标连接端口所用的符号或目标连接端口的名称可以发生改变。在一些示例中,连接端口所用的符号可以改变大小或颜色、闪光或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的名称可以改变大小、字体、颜色或者突出显示;闪光;或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的表示可以在该连接端口可以进行连接的情况下以一种方式发生改变并且在该连接端口无法进行连接的情况下以另一方式发生改变。
为了完成从错误端口313到第二组件的连接,用户可以将流放在第二组件的目标连接端口上。该动作使得生成重新格式化组件300的错误端口313与第二组件的目标连接端口之间的连接。
例如,参考图3E,用户可以将流318拖拽至错误数据库324的写入端口322。在该示例中,对写入端口322所用的符号进行填充并且突出显示写入端口322的名称以指示写入端口322可以进行连接。
参考图3F,为了完成至错误数据库324的连接,用户可以例如通过松开鼠标点击来放开流318。流318因而成为重新格式化组件300的错误端口312与错误数据库324的写入端口322之间的连接。
在图3A~3F的示例中,数据流图330包括四个组件。该数据流图还可以更复杂并且包括更多组件,其中所显示的各组件在显示画面上大小相对小。组件上的连接端口可能过小,使得难以使用鼠标指针来选择特定的连接端口。使用上述的技术,用户不需要改变显示的缩放比例来放大组件以更容易地选择连接端口。在用户改变缩放比例的情况下,尽管可以使组件变得更大并且更容易选择连接端口,但显示画面上可能会显示更少的组件,并且用户试图连接至的第二组件可能无法显示在画面上。在选择了第一组件上的连接端口之后,用户可能需要减小缩放比例,找出第二组件,增加缩放比例以放大第二组件,并且选择第二组件上的连接端口。用户还可能平移窗口以找出第二组件。需要多次改变缩放比例或平移窗口以应对复杂的数据流图,这是繁琐的。使用弹出窗口或菜单320使得用户能够便利地建立组件之间的连接,由此减少改变缩放比例或平移窗口的需要。弹出窗口或菜单在用户需要选择连接端口的情况下出现,并且在选择了连接端口的情况下自动消失。这样,用户可以在建立数据流图的组件之间的连接的情况下针对复杂的数据流图具有更好的整体视野。
上述的技术还使得用户能够便利地连接隐藏连接端口。在一些先前的图形用户界面中,用户可能需要发起切换(例如,通过从下拉菜单中选择选项)以使得隐藏的可选连接端口出现在画面上并且变得可选择。在用户建立了连接之后,用户可能需要再次发起切换以隐藏不具有连接的其它可选连接端口。通过在指针悬停于组件并持续预定量的时间之后自动示出弹出窗口或菜单,并且在选择了连接端口之后自动移除弹出窗口或菜单,用户则不需要为了使隐藏端口出现或者从画面中消失而发起切换。
弹出窗口或菜单320的特征在于用户可以直接从弹出窗口或菜单中所示出的连接端口建立连接。弹出窗口或菜单中的连接端口所用的符号为“活动”的意义在于应用于弹出窗口或菜单中的符号的动作具有如对组件上的相应连接端口应用这些动作那样的相同效果。在计算机鼠标是选择装置的示例中,用户可以移动指针至弹出窗口或菜单中的符号,按下鼠标的选择按钮以选择符号,并且在不松开该按钮的情况下将指针拖拽离开该符号以使得出现流(例如,图3D的318),将流的端部移动至第二组件的连接端口,并且松开选择按钮,由此完成两个组件的连接。
在第二组件的连接端口是隐藏端口的情况下,用户可以将流的端部移动至第二组件,悬停于第二组件并持续预定量的时间,直到示出用于表示第二组件的连接端口的符号的弹出窗口或菜单出现为止,将流的端部移动至弹出窗口或菜单中的期望符号,并且松开选择按钮,由此完成至第二组件的所选择的连接端口的连接。在一些实现中,在弹出窗口或菜单上仅示出可以连接至第一组件的第二组件的连接端口。在该示例中,松开选择按钮使得与第二组件相关联的弹出窗口或菜单消失,并且所选择的符号所表示的连接端口出现在第二组件上,其中该连接端口通过流连接至第一组件的连接端口。
在以上示例中,第一组件的(可见或隐藏)连接端口连接至第二组件的(可见或隐藏)连接端口,这可以通过使用计算机鼠标的选择按钮的一按一松来实现。与不使用弹出窗口或菜单的先前方法相比,这使得用户能够更便利且有效地编辑数据流图。
使用示出用于表示连接端口的活动符号的弹出窗口,这有助于用户在具有相对小的显示屏幕的膝上型或平板计算机、或者移动电话上修改数据流图。
图4是用于生成第一组件的隐藏连接端口与第二组件的连接端口之间的连接的示例性处理430的流程图。例如,处理430可以通过图1的开发环境118来实现。
在处理430中,用户例如通过将指针(诸如鼠标指针等)悬停于第一组件来与第一组件进行交互(412)。在一些示例中,用户可以将指针悬停于第一组件的任何位置。在一些示例中,用户可以仅将指针悬停于诸如第一组件的角落或中心等的第一组件上的某些“热点”。第一组件的示例是图3A~3F的重新格式化组件300。
在用户将指针悬停于第一组件并持续了预定量的时间(例如,1~2秒)之后,显示第一组件的连接端口的一部分或全部的表示(400)。例如,表示可以是诸如包括第一组件的连接端口的一部分或全部的列表的弹出菜单等的、与第一组件本身有所区别的表示。在一些示例中,表示可以包括诸如仅隐藏端口或者仅可以进行连接的那些连接端口等的、数量少于第一组件的全部连接端口的数量的连接端口。在一些示例中,表示可以是例如示出第一组件的连接端口的一部分或全部的更大版本的第一组件。表示的示例是图3B和3C所示的菜单320。在以下针对处理320的说明中,第一组件的连接端口的一部分或全部的菜单将用作第一组件的连接端口的一部分或全部的表示的示例。
在一些示例中,菜单可以示出诸如各连接端口的名称、与各连接端口相关联的路径、连接端口或第一组件所连接至的其它连接端口或组件的名称或其它详情等的、与菜单中所列出的各连接端口有关的详情。在一些示例中,可以针对各连接端口显示诸如组件上所显示的用以指示连接端口的相同符号等的符号。在图3B中示出这种符号的示例,诸如表示输入端口302的输入端口符号以及表示输出端口304和三个可选端口310、312、314的输出端口符号等。
在一些示例中,菜单可以指示诸如各连接端口是否连接至其它组件或者各连接端口是否可以进行连接等的、菜单中所列出的连接端口各自的状态。例如,可以使用连接端口的名称的颜色、大小或字体或者连接端口所用的符号的颜色或大小来指示连接端口的状态。在一些示例中,可以在菜单中显示诸如组件的名称、与组件相关联的参数或组件的处理状态等的与组件有关的其它信息。
菜单中的连接端口的名称或连接端口所用的符号可以是响应用户交互的活动链接。例如,用户可以例如通过将指针(例如,鼠标指针)悬停于连接端口的名称或连接端口所用的符号来从菜单中选择特定连接端口(402)。如果所选择的连接端口可以进行连接,则该连接端口在菜单中的表示可以发生改变。在一些示例中,连接端口所用的符号可以改变大小或颜色、闪光或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的名称可以改变大小、字体、颜色或者突出显示;闪光;或发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口所用的符号或连接端口的名称的变化可以是与用户悬停于组件的连接端口的情况下所发生的变化相同的变化。在一些示例中,连接端口的表示可以在该连接端口可以进行连接的情况下以一种方式发生改变并且在该连接端口无法进行连接的情况下以另一方式发生改变。在一些示例中,指针(例如,鼠标指针)在悬停于可以进行连接的连接端口的情况下可以发生改变。例如,鼠标指针可以改变形状、闪烁或发生其它改变。在图3C中示出响应于用户交互的连接端口变化的示例,其中在该示例中,在用户将鼠标指针悬停于菜单320中的错误端口所用的符号312的情况下,对该错误端口所用的符号312进行填充以指示该错误端口可以进行连接。
为了从菜单中的特定连接端口发起连接,用户可以例如通过点击并拖拽鼠标或者通过在屏幕上轻触并拖拽来选择并拖拽菜单中的特定连接端口所用的符号或特定连接端口的名称(404)。在菜单中,连接端口所用的符号、连接端口的名称或者这两者可以是以与组件上所包括的连接端口响应选择和拖放动作的方式相同的方式响应这些动作的活动链接。在一些示例中,可以以诸如通过双击或两次轻触期望的连接端口或者通过右击期望的连接端口等的其它方式来发起连接。例如,如图3C所示,用户可以通过点击并拖拽菜单320中的错误端口所用的符号312从该错误端口发起连接。
一旦用户选择了特定连接端口并从该特定连接端口进行了拖拽,则菜单消失并且该特定连接端口在数据流图中的第一组件上显示为可见连接端口(406)。显示连接至该特定连接端口的流。例如,如图3D所示,在用户点击并拖拽了错误端口所用的符号312之后,菜单320消失,并且错误端口313在重新格式化组件300上显示为可见连接端口,并且流318被显示为连接至错误端口313。
在一些示例中,用户可以将流拖拽至第二组件的目标连接端口(408)以生成第一组件与第二组件之间的连接。在一些示例中,如果目标连接端口可以进行连接,则在将流拖拽到目标连接端口上的情况下目标连接端口所用的符号或目标连接端口的名称可以发生改变。在一些示例中,连接端口所用的符号可以改变大小或颜色、闪光或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的名称可以改变大小、字体、颜色或者突出显示;闪光;或者发生其它改变以指示该连接端口可以进行连接。在一些示例中,连接端口的表示可以在该连接端口可以进行连接的情况下以一种方式发生改变并且在该连接端口无法进行连接的情况下以另一方式发生改变。
为了完成至第二组件的连接,用户可以将流放在第二组件的目标连接端口上(410)。例如,如图3E所示,用户可以将流318拖拽至错误数据库324的写入端口322。在该示例中,对写入端口322所用的符号进行填充并且突出显示写入端口322的名称以指示写入端口322可以进行连接。
在用户将流放在第二组件的目标连接端口上之后,生成第一组件的特定连接端口与第二组件的目标连接端口之间的连接(420)。例如,如图3F所示,在用户例如通过松开鼠标点击放开流318之后,生成重新格式化组件300的错误端口312与错误数据库324的写入端口322之间的连接。
在一些示例中,为了完成至第二组件的连接,用户可以将流悬停于第二组件(例如,组件中的任何位置或者诸如组件的角落或中心等的组件上的某些“热点”)(414)。在一些示例中,用户可以将流放在第二组件上。在流悬停了预定量的时间(例如,1~2秒)之后,或者将流放在第二组件上之后,显示列出第二组件的连接端口的一部分或全部的菜单(416)。例如,该菜单可以列出所有连接端口、可以接收流的所有端口或者所有可选端口。例如,在目标连接端口是隐藏端口或者在组件过小而无法分辨个别端口的情况下,该方法可以是有用的。
在一些示例中,菜单可以示出诸如各连接端口的名称、与各连接端口相关联的路径、连接端口或组件所连接至的其它连接端口或组件的名称或其它详情等的、与各连接端口有关的详情。在一些示例中,可以针对各连接端口显示诸如组件上所显示的用以指示连接端口的相同符号等的符号。在一些示例中,菜单可以在表示中指示诸如各连接端口是否连接至其它组件或者各连接端口是否可以进行连接等的连接端口各自的状态。例如,可以使用连接端口的名称的颜色、大小或字体或者连接端口所用的符号的颜色或大小来指示连接端口的状态。在一些示例中,指针(例如,鼠标指针)在流悬停于可以进行连接的连接端口的情况下可以发生改变。例如,鼠标指针可以改变形状、闪烁或者发生其它改变。
用户可以将所拖拽的流放在目标连接端口所用的符号或目标连接端口的名称上(418),由此使得生成第一组件的特定连接端口与第二组件的目标连接端口之间的连接(420)。在一些示例中,如果用户已经放开了所拖拽的流,则用户可以例如通过点击或轻触目标连接端口所用的符号或目标连接端口的名称来选择目标连接端口。
参考图5A,在一些示例中,用户可以将流500从输出文件504的写入端口502拖拽至重新格式化组件508的日志端口。日志端口506是隐藏端口,因而用户无法简单地将流500拖拽至日志端口506。作为代替,用户可以将流拖拽至重新格式化组件508并且悬停于重新格式化组件508。在经过预定量的时间之后,显示菜单510,其中菜单510示出可以接收流500的重新格式化组件508的连接端口。用户可以将流500放在日志端口506的名称上。
参考图5B,在流500被放到菜单510上的日志端口506的名称上的情况下,菜单510消失并且日志端口512显示为重新格式化组件508的一部分,其中连接514连接日志端口512与写入端口502。
参考图6,提供用于生成第一组件和第二组件之间的连接的一般处理610。例如,处理610可以通过图1的开发环境118来实现。在处理610中,用户例如通过悬停于第一组件与第一组件进行交互(600)。响应于与第一组件的用户交互,显示第一组件的一个或多个连接端口的表示(602)。表示与第一组件的显示有所区别,例如,表示可以是菜单。例如,通过点击表示并且从该表示到第二组件(诸如到第二组件的连接端口等)进行拖拽,使得用户能够生成第一组件的连接端口其中之一的表示与第二组件的连接端口之间的连接(604)。
上述的用于生成连接的方法可以通过使用执行适当软件的计算系统来实现。例如,数据处理系统100可以通过使用具有执行指令的一个或多个数据处理器的计算系统来实现。例如,该软件可以包括在一个或多个编程或可编程计算系统(可以具有诸如分布式、客户端/服务器或网格等的各种架构)上执行的一个或多个计算机程序中的进程,其中该一个或多个编程或可编程计算系统各自包括至少一个处理器、至少一个数据存储系统(包括易失性和/或非易失性存储器和/或存储元件)、(用于使用至少一个输入装置或端口接收输入、并且用于使用至少一个输出装置或端口提供输出的)至少一个用户界面。该软件可以包括例如提供与数据流图的设计、结构和执行相关的服务的更大程序的一个或多个模块。该程序的模块(例如,数据流图的元素)可以实现为数据结构或符合数据仓库中所存储的数据模型的其它有组织的数据。
可以将软件设置在诸如CD-ROM或(例如,利用通用或专用计算系统或装置可读取的)其它计算机可读介质等的有形非瞬态介质上、或者经由网络的通信介质(例如,以编码在传送信号中的形式)传递至执行该软件的计算系统的有形非瞬态介质。可以在专用计算机上、或者使用诸如协处理器或现场可编程门阵列(FPGA)或专用型专用集成电路(ASIC)等的专用硬件来进行该处理的一部分或全部。可以以利用不同的计算元件来进行软件所指定的计算的不同部分的分布式方式来实现该处理。优选将这种计算机程序各自存储在通用或专用可编程计算机可访问的存储装置的计算机可读存储介质(例如,固态存储器或介质、或者磁性或光学介质)上或者下载至该计算机可读存储介质,以在利用计算机读取存储装置介质以进行这里所述的处理的情况下配置计算机并使该计算机进行工作。本发明的系统还可被视为作为配置有计算机程序的有形非瞬态介质来实现,其中如此配置成的介质使计算机以特定的预定义方式进行工作,以进行这里所述的处理步骤中的一个或多个。
说明了本发明的多个实施例。然而,应当理解,上述说明意图例示而并非限制由所附权利要求书的范围所定义的本发明的范围。因此,其它实施例也在所附权利要求书的范围内。例如,可以在没有背离本发明的范围的情况下进行各种变形。另外,上述步骤中的一部分可以是顺序独立的,因而可以以与所述顺序不同的顺序来进行。弹出窗口或菜单320也可以称为信息气泡。弹出窗口是可以调整大小的并且可以被配置为示出与连接端口有关的各种信息。例如,用户可以将弹出窗口配置为仅示出连接端口的符号和名称,或者附加地示出诸如组件已经连接至端口等的与端口相关联的信息或指向与端口有关的附加信息的链接。弹出窗口可以包括具有用于辅助组件的连接的可选择项目的多个菜单。例如,可以存在供选取的多种连接。
开发环境118可以包括使得用户能够使用触摸或动作输入来操作数据流图的触摸屏。例如,用户可以使用(诸如使用手指或触控笔轻触或两次轻触组件等的)触摸输入来选择用于使与组件相关联的弹出窗口或菜单出现的组件。弹出窗口可以示出用于表示组件的连接端口的符号。用户可以使用触摸输入来选择弹出窗口或菜单中的符号,由此使得弹出窗口或菜单消失,并且使用滑动动作输入(诸如在屏幕上将手指或触控笔滑动离开符号)来生成流。滑动动作输入可以在第二组件的连接端口处结束,并且用户可以使用触摸输入来选择第二组件的连接端口,由此使得流连接第一组件和第二组件。如果第二组件具有隐藏端口,则用户可以使用触摸输入来选择第二组件并且使弹出窗口或菜单出现,由此示出用于表示第二组件的连接端口的符号。用户可以使用触摸输入来选择符号,由此使得流连接至该符号所表示的连接端口。
可以与弹出窗口或菜单相结合地使用各种动作输入。例如,涉及对组件的一个手指轻触的触摸输入可以使仅示出隐藏连接端口的较小的弹出窗口出现。涉及对组件的两个手指轻触的触摸输入可以使示出组件的所有连接端口的较大的弹出窗口出现。涉及对组件的三个手指轻触的触摸输入可以使示出组件的所有连接端口以及与连接端口相关联的附加信息的更大的弹出窗口出现。
系统可以具有包括工作站(例如,台式或膝上型计算机)的主显示画面和平板计算机的次显示画面的多个显示画面。假定在主显示画面上示出数据流图,并且计算机鼠标在应对主显示画面的情况下用作指向装置。在指针悬停于组件的情况下,可以在主画面或次显示画面上示出弹出窗口。在具有连接端口的图标和名称的弹出窗口示出在平板计算机的次显示画面上的情况下,用户可以使用触摸输入来选择其中一个连接端口。在用户在次显示画面上选择了连接端口之后,所选择的端口出现在主显示画面的组件上,并且用户可以建立从所选择的端口到其它组件的其它端口的连接。次显示画面上的窗口可以在建立了连接之后自动消失,或者在用户想要从弹出窗口所示出的其它端口建立连接的情况下保留在显示画面上。
次显示画面可以是诸如眼镜上的显示画面等的可穿戴装置的显示画面。用户可以使用与眼镜相关联的命令(例如,语音或头部动作命令)在眼镜的显示画面上选择符号。
可以使用各种命令来选择组件、连接端口或用于表示连接端口的符号。例如,可以使用语音或动作命令。在图3B的示例中,用户可以说出语音命令“示出重新格式化组件的连接端口”以使弹出窗口或菜单320出现。用户可以说出语音命令“选择错误端口”来选择错误端口。用户可以说出语音命令“连接至错误数据库的写入端口”以将格式化组件的错误端口连接至错误数据库的写入端口。可以使用指向装置命令、触摸输入命令、动作输入命令和语音命令中的两个以上的组合来修改数据流图。
使用弹出窗口以显示隐藏连接端口的技术可以适用于诸如电路图等的各种图。电路图可以包括例如用于表示具有若干连接引脚的集成电路的组件。一部分连接引脚在视图中可以是隐藏的。用户可以将指针悬停于组件以使弹出窗口出现,由此示出用于表示集成电路的连接引脚的符号。用户可以选择符号并且应用从所选择的符号到电路图中的其它组件的连接端口的拖拽动作。这使得用户能够在减少调整图的大小或发起切换以打开或关闭隐藏连接端口的显示的需要的情况下容易地生成复杂电路图中的组件之间的连接。

Claims (42)

1.一种用于在数据处理应用的图形表示中连接组件的方法,包括:
在用户界面上显示所述数据处理应用的图形表示的第一组件,该显示包括显示所述第一组件的第一端口;
响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示,其中,显示一个或多个端口的表示包括显示所述第一组件的显示中没有包括的所述第一组件的第二端口的表示;以及
使得用户能够生成所述第一组件的所述第二端口的表示与所述数据处理应用的图形表示的第二组件的端口之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
2.根据权利要求1所述的方法,其中,显示一个或多个端口的表示包括显示一个或多个端口的列表。
3.根据权利要求1所述的方法,其中,所述用户交互包括将指针悬停于所述第一组件。
4.根据权利要求1所述的方法,其中,显示所述第一组件包括显示数量少于所述第一组件的所有端口的数量的端口。
5.根据权利要求1所述的方法,其中,显示所述第一组件包括:在与所述第一组件的所述用户交互之前不显示所述第一组件的可选端口。
6.根据权利要求1所述的方法,其中,显示所述第一组件包括仅显示所述第一组件的与连接相关联的端口。
7.根据权利要求1所述的方法,其中,显示一个或多个端口的表示不改变所述第一组件的显示大小。
8.根据权利要求1所述的方法,其中,一个或多个端口的表示包括各端口的状态的指示。
9.根据权利要求1所述的方法,其中,所述第二端口的表示响应于与所述第二端口的表示的用户交互而发生改变以指示所述第二端口的状态。
10.根据权利要求9所述的方法,其中,端口的状态指示该端口是否能够进行连接。
11.根据权利要求1所述的方法,其中,使得用户能够生成连接包括使得用户能够从一个或多个端口的表示中选择所述第二端口。
12.根据权利要求1所述的方法,其中,使得用户能够生成连接包括使得用户能够将指针从所述第一组件的所述第二端口拖拽至所述第二组件。
13.根据权利要求12所述的方法,其中,使得用户能够拖拽所述指针包括使得用户能够将所述指针从所述第一组件的所述第二端口拖拽至所述第二组件的端口。
14.根据权利要求12所述的方法,其中,所述第二组件的端口中的一个或多个端口的表示是响应于用户将所述指针拖拽至所述第二组件而显示的。
15.根据权利要求14所述的方法,其中,在所述第二组件的端口的表示中仅包括所述第二组件的能够进行连接的端口。
16.一种用于在数据处理应用的图形表示中连接组件的方法,所述方法包括:
在用户界面中显示具有第一组件和第二组件的所述数据处理应用的图形表示,其中所述第一组件具有起初从视图中隐藏的端口;
响应于与所述第一组件的用户交互,显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别;以及
使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
17.根据权利要求16所述的方法,其中,将所述符号连接至所述第二组件的用户输入包括从所述符号到所述第二组件的拖拽动作。
18.根据权利要求17所述的方法,其中,所述拖拽动作开始于用于表示所述第一组件的端口的所述符号并且结束于所述第二组件的端口。
19.根据权利要求17所述的方法,其中,所述拖拽动作开始于用于表示所述第一组件的端口的所述符号并且结束于用于表示所述第二组件的端口的第二符号,其中所述第二符号与所述第二组件有所区别。
20.根据权利要求16所述的方法,其中,显示用于表示所述第一组件的端口的符号包括:显示包括所述符号的窗口。
21.根据权利要求16所述的方法,其中,使得能够建立所述第一组件的端口与第二组件之间的连接包括使得能够在不改变所述第一组件的显示大小的情况下建立所述第一组件的端口与第二组件之间的连接。
22.一种用于在数据处理应用的图形表示中连接组件的方法,所述方法包括:
与所述数据处理应用的图形表示的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别;以及
通过选择所述第一符号并且应用从所述第一符号至所述数据处理应用的图形表示的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
23.根据权利要求22所述的方法,其中,使得显示用于表示所述第一端口的第一符号包括使得显示包括所述第一符号的窗口。
24.根据权利要求22所述的方法,其中,所述拖拽动作使得流被拖拽至所述第二端口或用于表示所述第二端口的所述第二符号。
25.一种存储有软件的计算机可读介质,所述软件包括用于使计算机系统进行以下处理的指令:
在用户界面上显示数据处理应用的图形表示的第一组件,该显示包括显示所述第一组件的第一端口;
响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示,其中,显示一个或多个端口的表示包括显示所述第一组件的显示中没有包括的所述第一组件的第二端口的表示;以及
使得用户能够生成所述第一组件的所述第二端口的表示与所述数据处理应用的图形表示的第二组件的端口之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
26.一种计算系统,包括:
至少一个处理器,用于:
在用户界面上显示数据处理应用的图形表示的第一组件,该显示包括显示所述第一组件的第一端口;
响应于与所显示的第一组件的用户交互,显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示,其中,显示一个或多个端口的表示包括显示所述第一组件的显示中没有包括的所述第一组件的第二端口的表示;以及
使得用户能够生成所述第一组件的所述第二端口表示与所述数据处理应用的图形表示的第二组件的端口之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
27.根据权利要求26所述的计算系统,其中,所述用户交互包括将指针悬停于所述第一组件。
28.根据权利要求26所述的计算系统,其中,显示所述第一组件包括显示数量少于所述第一组件的所有端口的数量的端口。
29.根据权利要求26所述的计算系统,其中,显示一个或多个端口的表示不改变所述第一组件的显示大小。
30.根据权利要求26所述的计算系统,其中,所述第二端口的表示响应于与所述第二端口的表示的用户交互而发生改变,以指示所述第二端口的状态。
31.根据权利要求26所述的计算系统,其中,使得用户能够生成连接包括使得用户能够从一个或多个端口的表示中选择所述第二端口。
32.根据权利要求26所述的计算系统,其中,所述至少一个处理器用于响应于用户将指针从所述第一组件的所述第二端口拖拽至所述第二组件而显示所述第二组件的端口中的一个或多个端口的表示。
33.根据权利要求26所述的计算系统,其中,所述第一组件的所述第二端口的表示与所述第二组件的端口之间的连接指示在数据处理应用程序执行期间一个或多个第一处理与一个或多个第二处理之间的数据流。
34.根据权利要求26所述的计算系统,其中,所述至少一个处理器用于更新实现数据处理应用程序的一个或多个数据结构,以使得在所述数据处理应用程序执行期间,数据根据所生成的连接而在一个或多个第一处理和一个或多个第二处理之间流动。
35.一种计算系统,包括:
用于在用户界面上显示数据处理应用的图形表示的第一组件的部件,其中在用户界面上显示数据处理应用的图形表示的第一组件包括显示所述第一组件的第一端口;
用于响应于与所显示的第一组件的用户交互、显示与所述第一组件的显示有所区别的所述第一组件的一个或多个端口的表示的部件,其中,显示一个或多个端口的表示包括显示所述第一组件的显示中没有包括的所述第一组件的第二端口的表示;以及
用于使得用户能够生成所述第一组件的所述第二端口的表示与所述数据处理应用的图形表示的第二组件的端口之间的连接的部件,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
36.一种存储有软件的计算机可读介质,所述软件用于在数据处理应用的图形表示中连接组件并且包括用于使计算机系统进行以下处理的指令:
在用户界面中显示具有第一组件和第二组件的所述数据处理应用的图形表示,其中所述第一组件具有起初从视图中隐藏的端口;
响应于与所述第一组件的用户交互,显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别;以及
使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
37.一种计算系统,其用于在数据处理应用的图形表示中连接组件,所述计算系统包括:
至少一个处理器,用于:
在用户界面中显示具有第一组件和第二组件的所述数据处理应用的图形表示,其中所述第一组件具有起初从视图中隐藏的端口;
响应于与所述第一组件的用户交互,显示用于表示所述第一组件的端口的符号,其中所述符号与所述第一组件有所区别;以及
使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
38.一种计算系统,用于在数据处理应用的图形表示中连接组件,所述计算系统包括:
用于在用户界面中显示具有第一组件和第二组件的所述数据处理应用的图形表示的部件,其中所述第一组件具有起初从视图中隐藏的端口;
用于响应于与所述第一组件的用户交互而显示用于表示所述第一组件的端口的符号的部件,其中所述符号与所述第一组件有所区别;以及
用于使得能够响应于将所述符号连接至所述第二组件的用户输入而建立所述第一组件的端口与所述第二组件之间的连接的部件,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
39.一种存储有软件的计算机可读介质,所述软件用于在数据处理应用的图形表示中连接组件并且包括用于使计算机系统进行以下处理的指令:
与所述数据处理应用的图形表示的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别;以及
通过选择所述第一符号并且应用从所述第一符号至所述数据处理应用的图形表示的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
40.一种计算系统,其用于在数据处理应用的图形表示中连接组件,所述计算系统包括:
至少一个处理器,用于:
与所述数据处理应用的图形表示的具有起初从视图中隐藏的第一端口的第一组件进行交互,并且使得显示用于表示所述第一端口的第一符号,其中所述第一符号与所述第一组件有所区别;以及
通过选择所述第一符号并且应用从所述第一符号至所述数据处理应用的图形表示的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作,来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
41.根据权利要求40所述的计算系统,其中,所述拖拽动作使得流被拖拽至所述第二端口或用于表示所述第二端口的所述第二符号。
42.一种计算系统,用于在数据处理应用的图形表示中连接组件,所述计算系统包括:
用于与所述数据处理应用的图形表示的具有起初从视图中隐藏的第一端口的第一组件进行交互、并且使得显示用于表示所述第一端口的第一符号的部件,其中所述第一符号与所述第一组件有所区别;以及
用于通过选择所述第一符号并且应用从所述第一符号至所述数据处理应用的图形表示的第二组件的第二端口或用于表示所述第二端口的第二符号的拖拽动作、来使用点击并放开动作将所述第一组件的所述第一端口连接至所述第二组件的所述第二端口的部件,其中,所述连接指示所述数据处理应用的执行期间所述第一组件和所述第二组件之间的数据流。
CN201480058020.2A 2013-08-23 2014-08-21 具有用于连接组件的增强工具的图形用户界面 Active CN105659221B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/974,537 US9984482B2 (en) 2013-08-23 2013-08-23 Graphical user interface having enhanced tool for connecting components
US13/974,537 2013-08-23
PCT/US2014/052067 WO2015027051A2 (en) 2013-08-23 2014-08-21 Graphical user interface having enhanced tool for connecting components

Publications (2)

Publication Number Publication Date
CN105659221A CN105659221A (zh) 2016-06-08
CN105659221B true CN105659221B (zh) 2019-12-13

Family

ID=52481557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480058020.2A Active CN105659221B (zh) 2013-08-23 2014-08-21 具有用于连接组件的增强工具的图形用户界面

Country Status (10)

Country Link
US (1) US9984482B2 (zh)
EP (1) EP3036651A4 (zh)
JP (1) JP2016532968A (zh)
KR (1) KR102048313B1 (zh)
CN (1) CN105659221B (zh)
AU (1) AU2014308795B2 (zh)
CA (1) CA2922170C (zh)
HK (1) HK1220017A1 (zh)
SG (1) SG11201601340VA (zh)
WO (1) WO2015027051A2 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924335B1 (en) 2006-03-30 2014-12-30 Pegasystems Inc. Rule-based user interface conformance methods
US8843435B1 (en) 2009-03-12 2014-09-23 Pegasystems Inc. Techniques for dynamic data processing
US9195936B1 (en) 2011-12-30 2015-11-24 Pegasystems Inc. System and method for updating or modifying an application without manual coding
US10719132B2 (en) * 2014-06-19 2020-07-21 Samsung Electronics Co., Ltd. Device and method of controlling device
US10469396B2 (en) 2014-10-10 2019-11-05 Pegasystems, Inc. Event processing with enhanced throughput
US10212056B2 (en) * 2015-11-17 2019-02-19 Microsoft Technology Licensing, Llc Graph node with automatically adjusting input ports
US11244090B2 (en) 2016-06-01 2022-02-08 The Mathworks, Inc. Systems and methods for extracting adjustable attributes of model components
US10698599B2 (en) * 2016-06-03 2020-06-30 Pegasystems, Inc. Connecting graphical shapes using gestures
US10698647B2 (en) 2016-07-11 2020-06-30 Pegasystems Inc. Selective sharing for collaborative application usage
US11048488B2 (en) 2018-08-14 2021-06-29 Pegasystems, Inc. Software code optimizer and method
JP7115506B2 (ja) * 2020-04-27 2022-08-09 横河電機株式会社 ソフトウェア開発環境提供システム、ソフトウェア開発環境提供方法、及びソフトウェア開発環境提供プログラム
US11567945B1 (en) 2020-08-27 2023-01-31 Pegasystems Inc. Customized digital content generation systems and methods

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1820301A (zh) * 2003-06-11 2006-08-16 索尼电子有限公司 用于建议连通性配置的方法及系统
CN101971165A (zh) * 2008-02-26 2011-02-09 起元技术有限责任公司 数据关系的图形表示
US8205160B2 (en) * 2008-05-12 2012-06-19 Microsoft Corporation Graphical user interface for multi-frame presentation

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191840A (ja) * 1993-12-27 1995-07-28 Mitsubishi Electric Corp プログラム自動生成装置
JP3102828B2 (ja) * 1994-03-14 2000-10-23 富士電機株式会社 プログラミング装置
US5966072A (en) * 1996-07-02 1999-10-12 Ab Initio Software Corporation Executing computations expressed as graphs
JPH1139145A (ja) * 1997-07-24 1999-02-12 Casio Comput Co Ltd プログラム構築支援装置及び記憶媒体
JP4214384B2 (ja) * 2003-03-14 2009-01-28 オムロン株式会社 ファンクションブロック呼び出し命令を含むラダープログラムの表示切替方法及びプログラミング装置
DE102004061063A1 (de) * 2004-12-18 2006-06-29 Bosch Rexroth Aktiengesellschaft Verfahren zur dynamischen Konfiguration einer Bedienoberfläche eines Funktionsbausteins
US7716630B2 (en) * 2005-06-27 2010-05-11 Ab Initio Technology Llc Managing parameters for graph-based computations
US20080027782A1 (en) * 2006-04-07 2008-01-31 Juliana Freire Managing provenance of the evolutionary development of workflows
US20070240080A1 (en) 2006-04-11 2007-10-11 Invensys Systems, Inc. Strategy editor for process control supporting drag and drop connections to declarations
US20080270444A1 (en) 2007-04-24 2008-10-30 International Business Machines Corporation System, method and tool for web-based interactive graphical visualization and authoring of relationships
US8669982B2 (en) * 2008-10-01 2014-03-11 International Business Machines Corporation Method and system for generating and displaying an interactive dynamic culling graph view of multiply connected objects
US8997023B2 (en) 2009-08-18 2015-03-31 Honeywell Asca Inc. Rapid manipulation of flowsheet configurations
US8205183B1 (en) * 2009-09-18 2012-06-19 Altera Corporation Interactive configuration of connectivity in schematic diagram of integrated circuit design
US8429548B2 (en) * 2010-02-18 2013-04-23 National Instruments Corporation Automatically suggesting graphical program elements for inclusion in a graphical program
US8904302B2 (en) * 2010-09-30 2014-12-02 The Mathworks, Inc. Identification of semantically relevant concepts in a graphical model
AU2011323773B2 (en) * 2010-10-25 2015-07-23 Ab Initio Technology Llc Managing data set objects in a dataflow graph that represents a computer program
US9383889B2 (en) 2011-12-20 2016-07-05 Business Objects Software Limited Process flow designing based on connection compatibility between process components
US20140137019A1 (en) * 2012-11-14 2014-05-15 Apple Inc. Object connection
US8990777B2 (en) * 2013-05-21 2015-03-24 Concurix Corporation Interactive graph for navigating and monitoring execution of application code
US9411559B2 (en) * 2013-05-28 2016-08-09 The Mathworks, Inc. Resolution of textual code in a graphical hierarchical model of a technical computing environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1820301A (zh) * 2003-06-11 2006-08-16 索尼电子有限公司 用于建议连通性配置的方法及系统
CN101971165A (zh) * 2008-02-26 2011-02-09 起元技术有限责任公司 数据关系的图形表示
US8205160B2 (en) * 2008-05-12 2012-06-19 Microsoft Corporation Graphical user interface for multi-frame presentation

Also Published As

Publication number Publication date
US20150058772A1 (en) 2015-02-26
CA2922170A1 (en) 2015-02-26
CN105659221A (zh) 2016-06-08
EP3036651A2 (en) 2016-06-29
SG11201601340VA (en) 2016-03-30
CA2922170C (en) 2019-10-29
EP3036651A4 (en) 2017-03-15
WO2015027051A3 (en) 2015-10-29
KR102048313B1 (ko) 2019-11-25
KR20160051801A (ko) 2016-05-11
AU2014308795A1 (en) 2016-03-10
HK1220017A1 (zh) 2017-04-21
US9984482B2 (en) 2018-05-29
AU2014308795B2 (en) 2019-08-29
WO2015027051A2 (en) 2015-02-26
JP2016532968A (ja) 2016-10-20

Similar Documents

Publication Publication Date Title
CN105659221B (zh) 具有用于连接组件的增强工具的图形用户界面
JP7461941B2 (ja) 音声コマンドおよび定義されたパースペクティブを用いた仮想データビューの最適化
US9141345B2 (en) Simplified user controls for authoring workflows
US9690449B2 (en) Touch based selection of graphical elements
US8881032B1 (en) Grouped tab document interface
US10698599B2 (en) Connecting graphical shapes using gestures
WO2019064054A1 (en) INTERACTIVE USER INTERFACE FOR COMPOSING QUANTUM CIRCUITS
US20140232723A1 (en) Moving visualizations between displays and contexts
JP7241462B2 (ja) 3次元シーンにおけるオブジェクトの高速操作
US20190278591A1 (en) Representing a software application using extended reality
US20160110055A1 (en) Event-based architecture for expand-collapse operations
US20200167058A1 (en) Selection on user interface based on cursor gestures
EP4086755B1 (en) Robotic process automation (rpa) comprising automatic document scrolling
JP6401046B2 (ja) 3次元モデル化オブジェクトを設計するためのコンピュータ実装方法
US9007398B1 (en) Rotated rectangle drawing
CN104731470B (zh) 用于使用指向元件来配置工具的方法、装置和介质
Krekhov et al. MorphableUI: a hypergraph-based approach to distributed multimodal interaction for rapid prototyping and changing environments
KR102285287B1 (ko) 사용자 인터액션 방법 및 장치
US20240160418A1 (en) Low code no code ci/cd platform
US10678517B1 (en) User interface synthesis based upon extracted presentation document graphical features
JP6997096B2 (ja) サーバを使用してデータを処理するための関数を実行する方法およびシステム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant