IP Library Granted Patent US 7,844,911
Granted Patent B2
US 7,844,911 · App. 10/979,003 · Granted Nov 30, 2010

Configuring a GUI element to publish and/or subscribe to data

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,844,911
App. No.
10/979,003
Granted
Nov 30, 2010
Kind
B2
Abstract

A system and method for configuring a graphical user interface (GUI) element to publish data to a data target and/or subscribe to data from a data source. The developer specifies a data source or target The program is executed. If the GUI element is configured to subscribe to data from a data source, then the program receives data from the data source. This data is then be provided to the GUI element, which displays the data to the user. If the GUI element is configured to publish data to a data target, then the program sends or writes data associated with the GUI element to the data target.

Claims (76)

1. A method for configuring a graphical program, the method comprising:

receiving user input prior to execution of the graphical program specifying a remote data source external to the graphical program, wherein the graphical program comprises a block diagram, wherein the block diagram comprises a plurality of interconnected nodes that visually represents functionality of the graphical program, and wherein the block diagram is created in an application development environment program;

in response to the user input specifying the remote data source, the application development environment program performing:

automatically connecting to the remote data source and receiving data from the remote data source;

examining the data received from the remote data source in order to determine a type of the data;

automatically determining a particular type of GUI element from the application development environment program that is able to display the type of data received from the remote data source;

automatically including a GUI element of the particular type from the application development environment program in the graphical program; and

automatically configuring the GUI element to connect to the remote data source, and to receive and display data from the remote data source, wherein the GUI element is automatically configured without user programming;

wherein the method further comprises executing the graphical program after automatically configuring the GUI element, wherein said executing comprises:

displaying the GUI element on a display; and

the GUI element connecting to the remote data source, and receiving and displaying data from the remote data source.

2. The method of claim 1 , wherein the user input specifying the data source comprises a universal resource locator (URL).

3. The method of claim 1 , wherein receiving the user input specifying the data source comprises:

receiving user input dragging and dropping an icon representing a URL into the graphical program, wherein the URL references the data source.

4. The method of claim 1 , wherein said automatically configuring the GUI element to receive and display data from the remote data source comprises:

automatically determining an appropriate protocol for interfacing with the remote data source.

5. The method of claim 1 , wherein said executing the graphical program comprises:

automatically determining an appropriate protocol for interfacing with the remote data source.

6. The method of claim 1 , wherein the block diagram is a data flow diagram.

7. The method of claim 1 , wherein the graphical program comprises a GUI panel, wherein including the GUI element in the graphical program comprises including the GUI element in the GUI panel.

8. The method of claim 1 ,

wherein said executing the graphical program further comprises:

the block diagram generating output data in response to said executing; and

displaying the output data in a second GUI element.

9. The method of claim 1 , wherein the GUI element is automatically configured without user input specifying source code for the configuring.

10. The method of claim 1 ,

wherein said receiving user input specifying the data source comprises receiving user input via a user interface dialog box.

11. The method of claim 1 ,

wherein the graphical program executes on a first computer;

wherein the remote data source is comprised in a second computer remotely located from the first computer, wherein the first computer is configured to connect to the second computer over a network; and

wherein said automatically configuring the GUI element comprises automatically configuring the GUI element to connect to the second computer and receive and display data from the remote data source.

12. The method of claim 1 , wherein the remote data source comprises one or more of:

an HTTP server;

an FTP server;

an OPC server;

an SNMP server; or

a DataSocket server.

13. The method of claim 1 ,

wherein the remote data source is associated with a remote computer; and

wherein said automatically configuring the GUI element comprises automatically configuring the GUI element to connect to the remote data source on the remote computer, and receive and display data from the remote data source during program execution.

14. The method of claim 1 , wherein the graphical program is a first computer program, wherein the method further comprises:

executing a second computer program to publish live data to the remote data source; and

wherein the GUI element receives and displays the live data published by the second computer program.

15. The method of claim 1 ,

wherein said user input specifies both the remote data source and a remote data target with which to associate the GUI element;

wherein said automatically configuring comprises automatically configuring the GUI element to: 1) receive and display data from the remote data source; and 2) publish data associated with the GUI element to the remote data target.

16. The method of claim 15 , wherein the remote data source is the same as the remote data target.

17. The method of claim 1 , wherein the data comprises one or more of:

live data; or

measurement data.

18. A memory medium that stores program instructions for configuring a graphical program, wherein the program instructions implement an application development environment, and wherein the program instructions are executable to perform:

receiving user input prior to execution of the graphical program specifying a remote data source external to the graphical program, wherein the graphical program comprises a block diagram, wherein the block diagram comprises a plurality of interconnected nodes that visually represents functionality of the graphical program, and wherein the block diagram is created in the application development environment program;

in response to the user input specifying the remote data source, the application development environment program performing:

automatically connecting to the remote data source and receiving data from the remote data source;

examining the data received from the remote data source in order to determine a type of the data;

automatically determining a particular type of GUI element from the application development environment program that is able to display the type of data received from the remote data source;

automatically including a GUI element of the particular type in the graphical program; and

automatically configuring the GUI element to connect to the remote data source, and to receive and display data from the remote data source, wherein the GUI element is automatically configured without user programming;

wherein the program instructions are further executable to execute the graphical program after automatically configuring the GUI element, wherein said executing comprises:

displaying the GUI element on a display; and

the GUI element automatically connecting to the remote data source, and receiving and displaying data from the remote data source.

19. A system for configuring a graphical program, the system comprising:

one or more processors;

memory coupled to the one or more processors; and

a display;

wherein the memory stores program instructions that implement an application development environment, and wherein the program instructions are executable by the one or more processors to:

receive user input prior to execution of the graphical program specifying a remote data source external to the graphical program, wherein the graphical program comprises a block diagram, and wherein the block diagram comprises a plurality of interconnected nodes that visually represents functionality of the graphical program, and wherein the block diagram is created in the application development environment program, wherein the application development environment program is configured to:

in response to the user input specifying the remote data source:

automatically connect to the remote data source and receive data from the remote data source;

examine the data received from the remote data source in order to determine a type of the data;

automatically determine a particular type of GUI element able to display the type of data received from the remote data source;

automatically include a GUI element of the particular type in the graphical program; and

automatically configure the GUI element to connect to the remote data source, and to receive and display data from the remote data source, wherein the GUI element is automatically configured without user programming;

wherein the program instructions are further executable by the one or more processors to execute the graphical program after automatically configuring the GUI element, wherein said executing comprises:

displaying the GUI element on the display; and

the GUI element automatically connecting to the remote data source, and receiving and displaying data from the remote data source.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →