Patent US5760788A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5760788A Expired / Lapsed US ⏱️ 0.0 years remaining

Graphical programming system and method for enabling a person to learn text-based programming

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1995-07-28
•
Granted: 1998-06-02
•
Expires: 2015-07-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A graphical programming application is provided that is intended to be run under a graphic user interface operating system. When running the graphical programming software application, a user can select a graphic object and an associated event, and define actions that occur when the event happens, to develop or modify the graphical program as desired. In addition to a graphic editor view mode, the user may optionally view a plain text listing corresponding to the graphic program, or use a Visual Basic for Applications (VBA) code editor in which statements corresponding to the graphic program are displayed, or activate a mode in which both code editors are visible at one time on the screen, so that changes made to the VBA statements are immediately reflected in the graphical program and vice versa. Since the user is able to view the VBA code that corresponds to the graphical program steps, proficiency in programming with VBA text-based code is more rapidly developed.

Inventors

  • 👤 Devindra S. Chainini
  • 👤 Eric M. Yamada

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 07:49
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/30; G06F8/34; G09; G09B; G09B19/00; G09B19/0053; A; A63; A63F; A63F2300/00; A63F2300/60; A63F2300/6009; A63F2300/6018

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 320 words
A graphical programming system adapted to execute under a graphic user interface, said graphical programming system being adapted to enable a user to design and modify a graphical program, and to assist the user in learning computer programming with a text-based programming language, comprising: (a) a computer on which the graphical programming system executes under the graphic user interface, said computer including a user input device for making selections and entering instructions that control the graphical programming system, and a display screen on which are displayed components of the graphical programming system; (b) object means for presenting a plurality of graphic objects on the display screen of the computer and for enabling the user to select a specific graphic object from among said plurality of graphic objects, for inclusion in the graphical program; (c) action means for displaying a plurality of actions to the user on the display screen, at least one of said plurality of actions being represented by a graphic icon, and for enabling the user to select a specific action for execution by a user selected graphic object, thereby creating and displaying a user defined sequence of graphic program steps that include text and graphic objects, said user defined sequence of graphic program steps comprising the graphical program; and (d) mode selection means for enabling the user to select a mode from among a plurality of different modes, one of said plurality of different modes displaying at least a portion of a textual computer program listing corresponding to a portion of the graphical program, a plain text mode enabling the user to enter text that is translated to program commands in the textual computer program listing for modifying the graphical program, said textual computer program listing assisting the user to learn computer programming by exposing the user to the program commands of the text-based programming language that correspond to the graphic program steps of the graphical program.
Claim 2
Dependent Claim 320 words
A graphical programming system adapted to execute under a graphic user interface, said graphical programming system being adapted to enable a user to design and modify a graphical program, and to assist the user in learning computer programming with a text-based programming language, comprising: (a) a computer on which the graphical programming system executes under the graphic user interface, said computer including a user input device for making selections and entering instructions that control the graphical programming system, and a display screen on which are displayed components of the graphical programming system; (b) object means for presenting a plurality of graphic objects on the display screen of the computer and for enabling the user to select a specific graphic object from among said plurality of graphic objects, for inclusion in the graphical program; (c) action means for displaying a plurality of actions to the user on the display screen, at least one of said plurality of actions being represented by a graphic icon, and for enabling the user to select a specific action for execution by a user selected graphic object, thereby creating and displaying a user defined sequence of graphic program steps that include text and graphic objects, said user defined sequence of graphic program steps comprising the graphical program; and (d) mode selection means for enabling the user to select a mode from among a plurality of different modes, one of said plurality of different modes displaying at least a portion of a textual computer program listing corresponding to a portion of the graphical program, a plain text mode enabling the user to enter text that is translated to program commands in the textual computer program listing for modifying the graphical program, said textual computer program listing assisting the user to learn computer programming by exposing the user to the program commands of the text-based programming language that correspond to the graphic program steps of the graphical program.
Claim 3
Dependent Claim 28 words
The system of claim 1, wherein the plain text entered by the user is constrained to text that correctly translates to the commands in the text-based programming language.
Claim 4
Dependent Claim 52 words
The system of claim 2, wherein the plain text that can be entered by the user is limited to a predefined set of programming language constructs that are presented to the user in a graphical keyboard displayed on the display screen, for selection and use in designing and modifying the graphical program.
Claim 5
Dependent Claim 34 words
The system of claim 1, wherein another mode of the plurality of modes enables the user to freely enter and modify commands of the text-based programming language to design and modify the graphical program.
Claim 6
Dependent Claim 73 words
The system of claim 1, wherein another mode of the plurality of modes enables the user to simultaneously view both an editor for the graphical program and an editor for the text-based programming language so that changes in the graphical program are immediately reflected in the corresponding commands of the text-based programming language and so that changes in the commands of the text-based programming language are immediately reflected in the corresponding graphical program.
Claim 7
Dependent Claim 20 words
The system of claim 1, wherein the graphical programming system includes a basic graphical program for the user to modify.
Claim 8
Dependent Claim 26 words
The system of claim 1, further comprising means for mapping between graphical steps of the graphical program and the corresponding commands of the text-based programming language.
Claim 9
Dependent Claim 24 words
The system of claim 8, wherein the graphical program is executed by the computer based upon underlying corresponding commands of the text-based programming language.
Claim 10
Dependent Claim 26 words
The system of claim 1, further comprising animated help means that prompt the user to carry out steps required in designing and modifying the graphical program.
Claim 11
Dependent Claim 19 words
The system of claim 9, wherein the help means provide help to the user in debugging the graphical program.
Claim 12
Dependent Claim 43 words
The system of claim 1, further comprising event means enabling the user to select an event from among a plurality of events graphically presented to the user on the display screen, for association with one of the graphic objects selected by the user.
Claim 13
Dependent Claim 36 words
The system of claim 11, wherein the action means enable the user to specify the action associated with one of the graphic objects selected by the user that will be implemented when the event selected occurs.
Claim 14
Independent Claim 217 words
A method for creating a graphical program for use on a computer under a graphic user interface operating system, to enable a user to graphically design and modify the graphical program, and by doing so, to better understand a text-based programming language, said method comprising the steps of: (a) presenting a plurality of graphic objects on a display screen of the computer and enabling the user to select specific graphic objects from among those presented for inclusion in the graphical program; (b) displaying a plurality of actions for the graphic objects, at least one of said plurality of actions being represented by a graphic icon, and enabling the user to select a specific action to apply to any of the graphic objects that were selected to create a user defined sequence of graphic program steps comprising the graphical program; (c) enabling the user to selectively display a plain text listing corresponding to at least a portion of the graphical program, said plain text listing enabling the user to better understand the text-based programming language by comparison of commands of the text-based programming language, which are included within the plain text listing, to the corresponding portion of the graphical program; and (d) enabling the user to modify the plain text listing, causing corresponding changes to the graphical program.
Claim 15
Independent Claim 217 words
A method for creating a graphical program for use on a computer under a graphic user interface operating system, to enable a user to graphically design and modify the graphical program, and by doing so, to better understand a text-based programming language, said method comprising the steps of: (a) presenting a plurality of graphic objects on a display screen of the computer and enabling the user to select specific graphic objects from among those presented for inclusion in the graphical program; (b) displaying a plurality of actions for the graphic objects, at least one of said plurality of actions being represented by a graphic icon, and enabling the user to select a specific action to apply to any of the graphic objects that were selected to create a user defined sequence of graphic program steps comprising the graphical program; (c) enabling the user to selectively display a plain text listing corresponding to at least a portion of the graphical program, said plain text listing enabling the user to better understand the text-based programming language by comparison of commands of the text-based programming language, which are included within the plain text listing, to the corresponding portion of the graphical program; and (d) enabling the user to modify the plain text listing, causing corresponding changes to the graphical program.
Claim 16
Dependent Claim 42 words
The method of claim 13, wherein the step of enabling the user to selectively display further comprises the step of enabling the user to select one of a plurality of modes for displaying and modifying program commands that affect the graphical program.
Claim 17
Dependent Claim 32 words
The method of claim 13, further comprising the step of enabling the user to graphically select an event for association with one of the graphical objects from among a plurality of events.
Claim 18
Dependent Claim 55 words
The method of claim 13, further comprising the step of enabling the user to associate an action implemented by one of the selected graphical objects with an event associated with said one of the selected graphical objects so that the action is carried out when the event happens to said one of the graphical objects.
Claim 19
Dependent Claim 39 words
The method of claim 13, wherein the step of selectively displaying further comprises the step of enabling the user to select a mode for designing and modifying the graphical program by making changes to an underlying text-based programming language.
Claim 20
Dependent Claim 31 words
The method of claim 17, wherein the changes that the user is enabled to make to the underlying text-based programming language are constrained to a predefined set of programming language constructs.
Claim 21
Dependent Claim 81 words
The method of claim 17, wherein an editor for the graphical program and an editor for the underlying text-based programming language are both displayed, so that changes made in the underlying text-based programming language are reflected in the editor for the graphical program, and so that changes made in the graphical program are reflected in the editor for the underlying text-based program language, thereby enabling the user to observe a relationship between the graphical program and the underlying text-based programming language.
Claim 22
Dependent Claim 21 words
The method of claim 17, further comprising the step of translating between the graphical program and the underlying text-based programming language.
Claim 23
Dependent Claim 29 words
The method of claim 13, further comprising the step of providing an animation for prompting the user to carry out steps required to design and modify the graphical program.
Claim 24
Dependent Claim 18 words
The method of claim 21, wherein the animation provides help to the user in debugging the graphical program.
Claim 25
Dependent Claim 22 words
The method of claim 13, further comprising the step of enabling the user to modify a graphical program supplied to the user.
Claim 26
Dependent Claim 23 words
The method of claim 13, further comprising the step of providing a set of graphical tools for designing and modifying the graphical program.
Claim 27
Dependent Claim 24 words
The method of claim 13, wherein one line of the graphical program may correspond to a plurality of lines of the plain text listing.
Claim 28
Dependent Claim 28 words
The method of claim 13, wherein a modification to the graphical program made during an interruption of its execution is implemented when the graphical programmed is again resumed.
Claim 29
Dependent Claim 28 words
The method of claim 13, further comprising the step of enabling the user to set properties for at least some of the graphical objects selected by the user.

References Cited (Backward Citations)

US5566294A Cited
US5551041A Cited
US5375125A Cited
US5377319A Cited
US5485615A Cited
US5517663A Cited
US5566295A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-01 2001-12-01 2002-06-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-01 2005-12-01 2006-06-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-01 2009-12-01 2010-06-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag