CA1238980A - Method of editing graphic objects in an interactive draw graphic system using implicit editing actions - Google Patents
Method of editing graphic objects in an interactive draw graphic system using implicit editing actionsInfo
- Publication number
- CA1238980A CA1238980A CA000495481A CA495481A CA1238980A CA 1238980 A CA1238980 A CA 1238980A CA 000495481 A CA000495481 A CA 000495481A CA 495481 A CA495481 A CA 495481A CA 1238980 A CA1238980 A CA 1238980A
- Authority
- CA
- Canada
- Prior art keywords
- editing
- action
- operator
- cursor
- menu
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
Abstract
ABSTRACT
A method is described for editing graphic objects in an interactive draw graphic system which selectively displays a menu of available editing actions in re-sponse to operation of one mouse button by the operator and allows the operator to cursor select the specific edit action from the menu to be made active by operat-ing a second mouse key. The operator may also cursor select the object to be edited by operation of the second mouse key. Once the editing action is selected and made active, the menu is hidden (not displayed) and the editing action remains active in the system until positive steps are taken by the operator to either terminate the edit funciton or change the active edit-ing action. The operator, therefore, does not have to return to the selection process after each specific editing operation. The previous editing operation is implied for the next edit operation.
A method is described for editing graphic objects in an interactive draw graphic system which selectively displays a menu of available editing actions in re-sponse to operation of one mouse button by the operator and allows the operator to cursor select the specific edit action from the menu to be made active by operat-ing a second mouse key. The operator may also cursor select the object to be edited by operation of the second mouse key. Once the editing action is selected and made active, the menu is hidden (not displayed) and the editing action remains active in the system until positive steps are taken by the operator to either terminate the edit funciton or change the active edit-ing action. The operator, therefore, does not have to return to the selection process after each specific editing operation. The previous editing operation is implied for the next edit operation.
Description
AT9-8~-04~
METHOD OF EDITING GRAPHIC OBJECTS IN AN I~JTEP~CTIl/E
DRAW GRAPHIC SYSTE~I USING IMPLICIT EDITING ACTIO~I~
TECHNICAL FIELD:
This invention relates in general to interactive information handling systems and, in particular, to an improved method and system for assisting the oDerator of such systems to interactively edit graphic objects what are displayed by the system on the display unit.
BACKGROUND ART:
The term "interactive information handling system"
refers to an information handling system in which the 15 system is highly dependent upon interaction with the operator of the system. The nature of the interaction generally involves either the system displaying to the operator on a display device, such as a video terminal or an all-points addressable display unit, certain information, and the operator responding by entering information into the system via an input device ~e.g., keyboard, mouse, tablet, voice, etc.). The interaction may also reflect that the operator has entered informa-tion into the system and the system responds to that information by displaying some predetermined informa-tion to the operator.
The degree of interaction between the operator and the system Aries, depending upon the system configura-tion, the application being run by the particularprogram, and the task that the operator has chosen to execute.
A large number of information handling systems currently exist which perform on an interactive basis.
A very large percentage of personal computers currently are involved in processing applications that are highly interactive. Examples of such applications are the *
AT9-84-044 ~23~
various text processing programs and spreadsheet-type programs that are available to operators of various personal computers.
Another type of application for information han-dling systems that is becoming increasingly important is referred to as graphics. Some of the initial graph-ic applications were directed to what is generally referred to as business graphics, e.g., graphs or charts. In these applications the system is programmed to take a table of numeric data, for examDle, and present it as a graphic object, that is, a pie chart, a bar chart, or some similar type chart. These systems were interactive to the extent that the operator was able to select, for example, the type of chart, the size of the chart, and the placement of the chart on the screen. In some applications, the operator could even select the various shadings or colors or the components of the chart. The function of editing these business graphics charts was limited in most applica-tions to editing actions involving the entire object, such as deletion, removing, and scaling-type editing actions.
More recently, graphic applications have been developed which are truly interactive and which permit the operator Jo actually draw graphic objects on the screen. In these applications, the operator controls the position and movement of the cursor so that lines can be traced on the display screen by the system. The system is generally capable of receiving cursor move-ment data from the keyboard and/or several other opera-tor controlled devices, such as a mouse, a joystick, or a data tablet. The applications which permit the operator to actually draw objects on the screen are sometimes referred to as "interactive draw graphics" to distinguish them from the business type of graphic applications.
AT9-84-044 ~23~3~D
The commercial success of application programs are generally dependent upon how "user friendly" the pro-gram appears to the operator, rather than how fast such a program can actually run. This is especially true when the system being used is a personal computer and the operator is generally not very experienced in interfacing with computer systems. In interactive dray"
graphic applications, the ability of the operator to edit graphic objects is a necessity, and the manner in which the editing operation is implemented is one of the most important criteria in assessing the user friendliness of an interactive draw graphic program.
The editing of graphic objects is similar, in some respects, to the editing of text. Both text and graph-ic editing applications provide for the functions of inserting, deleting, moving, and copying. Graphic editing applications also include such unique func-tions, such as scaling up/scaling down, stretch/shrink, and rotate, which are not found in text editing appli-cations. Scaling up/scaling down editing differs from stretch/shrinking, in that the scale function involves the entire object, while the stretch/shrink editing action involves a change in the portion of the object in the direction of the movement of the cursor. In the former, for example, a square will always remain a square, and a circle will always remain a circle. In the shrink/stretch editing action, the square becomes a rectangle and a circle becomes an ellipse or an oval.
In both text editing and graphic editing, a cursor is generally employed to designate the "point of action." In most text processing applications, the cursor is generally the conventional blinking dash-type cursor. In some graphic applications, the conventional blinking cursor is replaced by a "pointing cursor" to designate the point of action. The other aspect of the editing unc~ion, namely the specific editing action, for example, insert, move, or rotate, is provided in various ways by prior art interactive draw graphic systems.
In some systems, the available editing actions are selectively displayed as a command bar at the bottom of the screen in response to the operator actuating a predetermined function key and a second cursor is then used to select the desired action from the command bar.
In other systems, the command bar is always dis-played at the bottom of the screen and the operator selects the editing command by positioning the cursor to the command. In these latter systems, while only one cursor is displayed, its appearance is changed from a blinking cursor to a pointing cursor during the process which is selecting the particular editing action.
It should be understood that editing functions in a graphic application are generally not motivated by the need to '7correct" an error, such as occurs general-ly in text processing applications. In graphic appli-cations, it is often more efficient to modify an object that has been drawn previously and stored in a library.
As a result, a series of sequential editing actions are generally involYed on the retrieved object to modify the original graphic object to the desired object. The interface between the operator and the system during this process should involve interactions which are straightforward, natural, easy to learn, and simple to remember.
The operator should no be required to move the point of action from the graphic object to the bottom of the screen and back to the object merely to select a different graphic editing action. The operator should also not be required to cycle through a series of editing actions in order to reach the desired action.
AT9 84-044 ~23~g~
The present invention overcomes the above problem and provides an improved method for editing graphic objects in an interactive draw graphic system.
SUMMARY OF THE INVENTION:
In accordance with the present invention, an interactive draw graphic system is provided with an interactive draw graphic arrangement which permits the operator to easily and efficiently edit a graphic object that is displayed on the display device. The arrangement, as described, employs a conventional, two button mouse device which the operator uses to control the position of the cursor on the screen in a conven-tional manner. One mouse button is referred to as theAction Select key, while the other button is referred to as the Object Select Key. The function of the Action Select Key is to cause the system to display an edit action menu which lists all available edit actions and to change the normal system cursor to a pointing cursor. The system causes these functions to occur in response to the operation of the Action Select Key.
The operator then positions the pointing cursor adja-cent the desired editing action by suitably moving of the mouse, and presses the Object Select Key. The pointing cursor is changed to a cursor symbol, depict-ing the selected editing action and the menu dis-appears.
The operator next positions the cursor adjacent the object that is to be edited and presses the Object Select Key on the mouse. If the editing action is of the type that involves movement of the object, such as move, rotate, scale, etc., the Object Select Key is 3s help depressed while the mouse is moved by the opera-tor. The object on the screen moves in accordance with the direction and the extent of movement of the cursor, as controlled by the mouse and the particular edit AT9-84-044 9~
action. When the object is suitably located, the operator releases the Object Select Key and proceeds to the next operation, which could be the same edit action on another displayed object, a different editing action on the same or another object, or another operation other than editing. If further editing is required, the operator merely has to press the Action Selection Key to have the menu re-appear and select a different action. It the same type editing action is desired on another object, the operator merely has to position the cursor adjacent the second object and press and hold the Object Select key. A very efficient operator interface is therefore provided for the edit function of an interactive draw graphic system It is therefore an object of the present invention to provide an improved method for editing graphic objects in an interactive draw graphic system.
Another object of the present invention is to provide an interactive editing method for graphic objects which permits the operator to select the graphic editing action rom a menu that is displayed selectively at the current location of the cursor in response to action by the operator.
Objects and advantages, other than those mentioned above, will become apparent in the hollowing descrip-tion when read in connection with the drawing.
DESCRIPTION OF THE DRAWING:
Figure 1 is a block diagram of an interactive information handling system in which the method of the 35 present invention is advantageously employed.
Figure 2 is a diagrammatic view of one example of a display screen containing objects that may be edited ~2~9~0 by the method of the present invention.
Figure 3 is a view of the screen shown in Figure
METHOD OF EDITING GRAPHIC OBJECTS IN AN I~JTEP~CTIl/E
DRAW GRAPHIC SYSTE~I USING IMPLICIT EDITING ACTIO~I~
TECHNICAL FIELD:
This invention relates in general to interactive information handling systems and, in particular, to an improved method and system for assisting the oDerator of such systems to interactively edit graphic objects what are displayed by the system on the display unit.
BACKGROUND ART:
The term "interactive information handling system"
refers to an information handling system in which the 15 system is highly dependent upon interaction with the operator of the system. The nature of the interaction generally involves either the system displaying to the operator on a display device, such as a video terminal or an all-points addressable display unit, certain information, and the operator responding by entering information into the system via an input device ~e.g., keyboard, mouse, tablet, voice, etc.). The interaction may also reflect that the operator has entered informa-tion into the system and the system responds to that information by displaying some predetermined informa-tion to the operator.
The degree of interaction between the operator and the system Aries, depending upon the system configura-tion, the application being run by the particularprogram, and the task that the operator has chosen to execute.
A large number of information handling systems currently exist which perform on an interactive basis.
A very large percentage of personal computers currently are involved in processing applications that are highly interactive. Examples of such applications are the *
AT9-84-044 ~23~
various text processing programs and spreadsheet-type programs that are available to operators of various personal computers.
Another type of application for information han-dling systems that is becoming increasingly important is referred to as graphics. Some of the initial graph-ic applications were directed to what is generally referred to as business graphics, e.g., graphs or charts. In these applications the system is programmed to take a table of numeric data, for examDle, and present it as a graphic object, that is, a pie chart, a bar chart, or some similar type chart. These systems were interactive to the extent that the operator was able to select, for example, the type of chart, the size of the chart, and the placement of the chart on the screen. In some applications, the operator could even select the various shadings or colors or the components of the chart. The function of editing these business graphics charts was limited in most applica-tions to editing actions involving the entire object, such as deletion, removing, and scaling-type editing actions.
More recently, graphic applications have been developed which are truly interactive and which permit the operator Jo actually draw graphic objects on the screen. In these applications, the operator controls the position and movement of the cursor so that lines can be traced on the display screen by the system. The system is generally capable of receiving cursor move-ment data from the keyboard and/or several other opera-tor controlled devices, such as a mouse, a joystick, or a data tablet. The applications which permit the operator to actually draw objects on the screen are sometimes referred to as "interactive draw graphics" to distinguish them from the business type of graphic applications.
AT9-84-044 ~23~3~D
The commercial success of application programs are generally dependent upon how "user friendly" the pro-gram appears to the operator, rather than how fast such a program can actually run. This is especially true when the system being used is a personal computer and the operator is generally not very experienced in interfacing with computer systems. In interactive dray"
graphic applications, the ability of the operator to edit graphic objects is a necessity, and the manner in which the editing operation is implemented is one of the most important criteria in assessing the user friendliness of an interactive draw graphic program.
The editing of graphic objects is similar, in some respects, to the editing of text. Both text and graph-ic editing applications provide for the functions of inserting, deleting, moving, and copying. Graphic editing applications also include such unique func-tions, such as scaling up/scaling down, stretch/shrink, and rotate, which are not found in text editing appli-cations. Scaling up/scaling down editing differs from stretch/shrinking, in that the scale function involves the entire object, while the stretch/shrink editing action involves a change in the portion of the object in the direction of the movement of the cursor. In the former, for example, a square will always remain a square, and a circle will always remain a circle. In the shrink/stretch editing action, the square becomes a rectangle and a circle becomes an ellipse or an oval.
In both text editing and graphic editing, a cursor is generally employed to designate the "point of action." In most text processing applications, the cursor is generally the conventional blinking dash-type cursor. In some graphic applications, the conventional blinking cursor is replaced by a "pointing cursor" to designate the point of action. The other aspect of the editing unc~ion, namely the specific editing action, for example, insert, move, or rotate, is provided in various ways by prior art interactive draw graphic systems.
In some systems, the available editing actions are selectively displayed as a command bar at the bottom of the screen in response to the operator actuating a predetermined function key and a second cursor is then used to select the desired action from the command bar.
In other systems, the command bar is always dis-played at the bottom of the screen and the operator selects the editing command by positioning the cursor to the command. In these latter systems, while only one cursor is displayed, its appearance is changed from a blinking cursor to a pointing cursor during the process which is selecting the particular editing action.
It should be understood that editing functions in a graphic application are generally not motivated by the need to '7correct" an error, such as occurs general-ly in text processing applications. In graphic appli-cations, it is often more efficient to modify an object that has been drawn previously and stored in a library.
As a result, a series of sequential editing actions are generally involYed on the retrieved object to modify the original graphic object to the desired object. The interface between the operator and the system during this process should involve interactions which are straightforward, natural, easy to learn, and simple to remember.
The operator should no be required to move the point of action from the graphic object to the bottom of the screen and back to the object merely to select a different graphic editing action. The operator should also not be required to cycle through a series of editing actions in order to reach the desired action.
AT9 84-044 ~23~g~
The present invention overcomes the above problem and provides an improved method for editing graphic objects in an interactive draw graphic system.
SUMMARY OF THE INVENTION:
In accordance with the present invention, an interactive draw graphic system is provided with an interactive draw graphic arrangement which permits the operator to easily and efficiently edit a graphic object that is displayed on the display device. The arrangement, as described, employs a conventional, two button mouse device which the operator uses to control the position of the cursor on the screen in a conven-tional manner. One mouse button is referred to as theAction Select key, while the other button is referred to as the Object Select Key. The function of the Action Select Key is to cause the system to display an edit action menu which lists all available edit actions and to change the normal system cursor to a pointing cursor. The system causes these functions to occur in response to the operation of the Action Select Key.
The operator then positions the pointing cursor adja-cent the desired editing action by suitably moving of the mouse, and presses the Object Select Key. The pointing cursor is changed to a cursor symbol, depict-ing the selected editing action and the menu dis-appears.
The operator next positions the cursor adjacent the object that is to be edited and presses the Object Select Key on the mouse. If the editing action is of the type that involves movement of the object, such as move, rotate, scale, etc., the Object Select Key is 3s help depressed while the mouse is moved by the opera-tor. The object on the screen moves in accordance with the direction and the extent of movement of the cursor, as controlled by the mouse and the particular edit AT9-84-044 9~
action. When the object is suitably located, the operator releases the Object Select Key and proceeds to the next operation, which could be the same edit action on another displayed object, a different editing action on the same or another object, or another operation other than editing. If further editing is required, the operator merely has to press the Action Selection Key to have the menu re-appear and select a different action. It the same type editing action is desired on another object, the operator merely has to position the cursor adjacent the second object and press and hold the Object Select key. A very efficient operator interface is therefore provided for the edit function of an interactive draw graphic system It is therefore an object of the present invention to provide an improved method for editing graphic objects in an interactive draw graphic system.
Another object of the present invention is to provide an interactive editing method for graphic objects which permits the operator to select the graphic editing action rom a menu that is displayed selectively at the current location of the cursor in response to action by the operator.
Objects and advantages, other than those mentioned above, will become apparent in the hollowing descrip-tion when read in connection with the drawing.
DESCRIPTION OF THE DRAWING:
Figure 1 is a block diagram of an interactive information handling system in which the method of the 35 present invention is advantageously employed.
Figure 2 is a diagrammatic view of one example of a display screen containing objects that may be edited ~2~9~0 by the method of the present invention.
Figure 3 is a view of the screen shown in Figure
2, illustrating the display of the pointing cursor.
Figure 4 is a view of the screen shown in Figure
Figure 4 is a view of the screen shown in Figure
3, illustrating the display of the edit action menu.
Figure 5 is a view of the screen shown in Figure
Figure 5 is a view of the screen shown in Figure
4, illustrating the selection of an object after the move edit action has been selected.
Figure 6 is a view of the screen shown in Figure 5 after the operator has moved the graphic object.
Figure 7 is a flowchart, illustrating the various interactive steps in the improved method of interac-tively editing graphic objects in an interactive draw graphic system.
DESCRIPTION OF THE PREFERRED EMBODIMENT:
Figure 1 illustrates the general arrangement of a typical information handling system. The system shown comprises a display device 10 which comprises a conven-tional video text-type terminal for displaying informa-tion to the operator, a keyboard 11 which the operator uses to enter information, including commands and data, into system, a printer 13 which functions to provide hard copy output of informatïon selected by the opera-tor, a pair of diskette drives, 14L and 14R, whichfunction to transfer information between the system and the magnetic storage diskettes that are removably associated with the diskette drives, and which store both program information, text information, and graphic information.
System components 10, 11, 13, 14L, and 14R are connected, as shol~n in Figure 1, to the microprocessor AT9-84-Od4 ~980 Block 15 which functions as the overall control for the system and interrelates the system components in a manner to perform their specific functions at the appropriate time. The system of Figure 1 also includes a modem 16 which functions to interconnect the system to other system through various communication links.
Since the system of Figure 1 is adapted to process graphic applications such as interactive draw type graphics, it should be assumed that the display device 10 is an all-points addressable type of graphic display device, in which each individual picture element OPEL) may be addressed, in contrast to conventional text-type displays in which only a character box is addressable.
Since interactive draw graphic applications are to be run by the system, an auxiliary input device 18 is also provided to insure rapid positioning of the cursor on the screen, since positioning of the cursor by keys on the keyboard is not as efficient as input device 18.
Such devices are well known in the art, and for purpos-es of the present description, it will be assumed that device 18 is a conventional "mouse" equipped with two function keys or buttons. Devices having similar functions, such as data tablets, could also be employed for input device 18.
It should also be assumed that the system of Figure 1 is provided with a suitable interactive draw graphics type program which permits the operator to draw graphic objects on the screen of device 10 similar to the four objects, 21, 22, 23, and 24 shown in Figure 2.
Figure 2 represents the screen o device 10, or a defined section of that screenl sometimes referred to in the art as a window. The four objects comprise circle 21J triangle 22, rectangle 23~ and a zig?ag line 24. Each of these graphic objects are individuallY
AT9-84-044 ~38~8~
defined in the system as a graphic object and were generated by the operator following a series of inter-actions with the system to produce each object. It is assumed that each of the objects were either "drawn"
originally by the operator or retrieved or copied from a library of graphic objects which the system provides to the operator.
It should be further assumed, for purposes of understanding the present invention, that the operator desires to edit the graphic information displayed in Figure 2, particularly to move the rectangle 23 from the position shown in Figure 2 to the position shown in Figure 6.
The interactive steps involved in that move edit operation will now be described in connection with the 10wchart of Figure 7 and the display screens shown in Figures 2-6.
In order to start the graphic editing operation, the operator presses a predetermined function key on the keyboard or takes some equivalent action which the system interprets as an instruction to enter the graph-ic object editing mode. Entering into this mode dis^plays the pointing cursor 25 on the screen, as shown in Figure 3. The system then monitors the input device 18, i.e., the mouse, as indicated by Block 71 on the flowchart. As the operator moves the mouse, the system causes the pointing cursor 25 to track the movement of the mouse. The system is also monitoring the position ox the Action Selection Key 18A and the Object Selec-tion Key 18B.
To select an edit operation, the operator presses the Action Select Key, which is detected by Block 7~.
This action will usually occur after the operator has positioned the pointing cursor in a blank area of the screen. Block 73, sensing that the Action Key has been depressed, causes the menu 27, shown in Figure 4 to be displayed in a frame next to the position of cursor 25.
The display menu 27 lists all of the available edit actions that the operator may engage in. Thy system continues to monitor the output of the mouse device for selection of the particular edit action, as indicated by Block 74. An edit action is selected from the menu by the operator moving the mouse to position the pointing cursor adjacent the move edit action with at least a portion of the cursor within the frame of the menu and pressing the Object Select Key.18B, as shown in Block 75.
The system first determines the position of the cursor relative to the displayed menu and its frame when the Object Select Key is pressed. If the cursor arrowhead is within the menu frame, as shown in Figure 4 and indicated by Block 76, the new cursor 28, shown in Figure 5, is displayed and the move edit action is made active in the system and the menu becomes hidden to the operator. Block 77 and Block 78 indicate the setting of the new cursor 28 and setting of the edit action.
The operator then positions the cursor 28 next to the graphic object to be moved by suitably moving the mouse. When the cursor 28 is positioned adjacent to the rectangle 23, as shown in Figure 5, the operator again presses the Object Select Key, as shown in Block 72. Block 80 in the flowchart of Figure 7 determines if the cursor 28 is near a graphic object. Since it is next to the rectangle, the rectangle is highlighted, as indicated by Block 81, providing a visual feedback signal to the operator that the object to be moved has been recognized by the system.
Block 81 also represents operation of the system AT9-84-0~ 123~98~
to determine if an edit action is currently active and, if so, the various initializing actions that must occur, depending upon the specific action involved.
In the case of the move operation, the system is initial-ized so that the movement of the cursor from its cur-rent position will be translated to a corresponding movement of the rectangle from its current position.
It should be understood that the move edit junction does not involve any rotational movement of the reck-angle. However, the rectangle may be moved on anydiagonal line that the cursor follows. Block 83 of the flowchart reads the movement of the mouse and causes the rectangle to "move" in accordance with the movement of the mouse. The system in Block 84 continuously erases and re-draws the rectangle to provide an indica-tion of movement on the screen. -As long as the move edit operation is active,movement of the mouse will cause movement of the se-lected object, as shown in Block 85. Releasing of theObject Select Key terminates the movement of the reck-angle, but allows the operator to select another object to be moved, since the move action remains active until another edit operation is selected from the menu or the entire edit function is terminated at Block 86 by the operator pressing the End Function Key on the keyboard.
The operator is thus permitted to move other objects on the screen without returning to the menu at the end of the firs edit operation. In this type of editing method, the active editing operation remains implicit until the operator takes some positive action to either terminate the entire edit function or replace the active edit action by selecting a different edit action from the menu. It has been found that by having an editing action remain active or implicit until terminated or changed, considerably simplifies the graphic editing operation. The action that is current-AT9-8~-044 lZ38~80 ly active or implicit is reflected in the cursor and will also be displayed on the status line of the dis-play should the operator need to confirm what action is current and active.
The following paragraphs set forth programming language sta~emen~s, which persons skilled in the art of programming interactive information handling systems and interactive draw graphic applications will find informative in connection with implementing the method described in the specification and defined in the claims. The pseudo code statements follow generally the organization of the flowchart of Figure 7.
In the following it is assumed that the worksta-tion is under mouse and keyboard device control. The mouse controls the movement of a visible pointing cursor which allows the operator to determine the current cursor position on the screen. The mouse is zo also assumed to have two keys (buttons): l) one key is used for selection of objects and menu options and is called OBJECT_SELECT_KEY, and 2) the other for re-questing menu presentation and is called ACTION_SELECT KEY.
The application calls a routine to query the mouse input device to determine if a mouse key has been pressed CALL READ_INPUT DEVICE). READ_INPUT DEVICE
will return the selected key and the current X, Y
location of the pointing cursor.
If the OBJECT_SELECT_KEY is pressed, a routine is called to determine if the X and Y location returned from READ_INPUT_DEVICE is currently pointing to a 3~ graphic object (e.g., rectangle, circle). If the operator pointed to a graphic object, the graphic object is highlighted by a routine CALL
HIGHLIGHT_OBJECT). If an implicit action is in progress :~23~39~3~
(CASE ACTIVE_ACTION OF), the application performs initialization prior to performing the requested im-plicit action. In the case of MOVE, the application makes a copy of the selected object, and erases the original object on the screen. (CALL COPY_INIT) For SCALE_UP, SCALE_DO~, STRETCH, and SHRINK actions, the application must get the length of the line from the center of the object to the current cursor location and stores the results in an information save area. (CALL
S INIT) If no implicit action is currently active, then no initialization needs to be made.
Once initialization of the implicit actions occurs, the current X, Y location of the selected object are saved (SAVX and SAVY). The application then reads the input device again (CALL READ INPUT_DEVICE) to determine the status of the mouse Xey and the X, Y
location of the pointing cursor. If the application determines, by comparing the new X, Y with the SAVX and SAVY that the pointing cursor moved (CALL
CHECK_CURSOR_MOVEMENT), the implicit action is executed (CASE ACTIVE_ACTION OF).
If the action is a MOVE or COPY, a routine is called (CALL MOVE/COPY_OBJECT) to erase the previous copy of the selected object and draw a copy oE the selected object next to the new cursor position IF the action is a ROTATE, a routine is called (CALL ROTATE_OBJECT) to get an amount of circular rotation accumulated from the previous position to the current cursor location, erase old copy of the object, and draw the object with the rotation applied.
If the action is STRETCH or SHRINK, a routine is called (CALL STRETCH/SHRINK_OBJECT) to get length of line from center of the object to the new cursor posi-tion, use the proportion of the new length to old AT9-84-044 ~238980 length to get proportion to stretch or shrink the object in the direction of the cursor movement, erase old copy of the object, and draw the object with the stretch or shrink applied.
If the action is SCALE_UP or SCALE_DOWN, a routine is called (CALL SCALE_OBJECT) to get length of line from the center of the selected object to new cursor position, use the proportion of the new length to old length Jo get proportion to scale entire object, erase old copy of the object, and draw the object with scal-ing applied.
The input device is continually read and the implicit action executed until the implicit action is complete (UNTIL ACTION_COMPLETE).`
If the ACTION_SELECT_KEY is pressed, a menu of actions will be displayed. (CALL DISPLAY_ACTION_MENU) The input device is read again (CALL READ_INPUT_DEVICE) to wait for the operator to select one of the actions on the action menu. As the operator moves the pointing cursor, the menu is hidden (CALL HIDE_ACTION_MENU) and re-displayed until the OBJECT_SELECT_KEY is pressed.
When the OBJECT_SELECT_KEY is pressed, a routine is called to determine if the selection point is inside the menu area. (CALL FIND_IN MENU AREA) If the select-ed point is inside the menu area, a routine is called to get the action selected from the menu and set the ACTIVE ACTION to be performed. (CALL
-GET_ACTION_SELECTED) A routine is then called to change the shape of the pointing cursor to reflect the selected implicit action. (CALL SET_CURSOR_SHAPE) If the operator selected outside the menu area, the ap-plication will set a default ACTIVE_ACTION and setthe CURSOR_SHAPE to reflect the default implicit action.
AT9-84-0~4 The application continually queries the input device (CALL READ_INPUT_DEVICE) until editing is com-plete. UNTIL EDIT_COMPLETE) PSEUDO CODE FOR IMPLICIT ACTIONS IN INTERACTIVE DRAW
GRAPHICS
REPEAT
..CALL READ INPUT_DEVICE ~SELECT_KEY_TYPE, X, Y) ..IF SELECT KEY TYPE = OBJECT_SELECT KEY THEN
....CALL FIND_OBJECT OX, Y, OBJECT_PTR) ....IF OBJECT PTR C NIL THEN
OBJECT LOCATED AT X, Y LOCATION) ...... CALL HIGHLIGHT OBJECT OBJECT PTR) ...... CASE ACTIVE_ACTION OF
........ MOVE: CALL MOVE INIT ~OBJECT_PTR, X, Y) Zo ........ COPY: CALL COPY_INIT ~OBJECT_PTR, X, Y) ........ SCALE_UP, SCALE_DOWN, STRETCH, SHRINK:
CALL S_INIT ~OBJECT_PTR, X, Y) ........ NO ACTION : NO IMPLICIT ACTION CURRENTLY
ACTIVE*) ...... ENDCASE
...... REPEAT
.~... ..CALL SAVE CURSOR LOCATION OX, Y, SAVX, SAVY) ........ CALL READ INPUT DEVICE ~SELECT_KEY TYPE, X, Y) ........ CALL CHECK_CURSOR MOVEMENT
(X, Y, SAVX, SAVY, CURSOR_MOVED) ........ IF CURSOR MOVED THEN
.......... CASE ACTIVE ACTION OF
............ MOVE, COPY: CALL MOVE/COPY_OBJECT
~OBJECT_PTR~ X, Y) ~5 ............ ROTATE: CALL ROTATE_OBJECT
~OBJECT_PTR, X, Y) ............ STRETCH, SHRINK: CALL STRETCH/SHRINK OBJECT
OBJECT PTR, X, Y) AT9-84-044 ~23~80 ............ SCALE_UP, SCALE_DOWN: CALL SCALE OBJECT-(OBJECT_PTR, UP, X, Ye ............ NO_ACTION :
(*NO IMPLICIT ACTION CURRENTLY ACTIVE*) ,,...... ..ENDIF
...... UNTIL ACTION_COMPLETE
...... CALL DEHIGHLIGHT OBJECT(OBJECT PTR) ....ENDIF (*OBJECT_FOUND*) ..ELSE
l IF SELECT_KEY_TYPE = ACTION SELECT KEY THEN
...... REPEAT
........ CALL DISPLAY ACTION MENU (MENU PTR, X, Y) ........ CALL READ_INPUT_DEVICE (SELECT KEY TYPE, X, Y) ........ CALL HIDE ACTION_MENU (MENU PTR, X, Y) ...... UNTIL SELECT KEY TYPE = OBJECT SELECT KEY
...... CALL FIND_IN~ ENU_AREA (X, Y, IN_MENU_AREA) ...... IF IN_MENU_AREA THEN (*CURSOR INSIDE MENU AREA*) ........ CALL GET_ACTION SELECTED (ACTIVE_ACTION) ........ CALL SET_CURSOR_SHAPE
(ACTIVE ACTION, CURSOR_SHAPE) ,....... ELSE
........ ACTIVE_ACTION = DEFAULT_ACTION
........ CURSOR_SHAPE = DEFAULT CURSOR_SHAPE
...... ENDIF (* IN_MENU_AREA*) ....ENDIF (*ACTION_SELECT KEY
..ENDIF (*SELECT KEY_TYPE*) UNTIL EDIT COMPLETE (*TERMINATION OF EDITING*) While the invention has been particularly shown and described with reference to the preferred embodi-ment thereof, it will be understood by those skilled in the art that various changes in the orm and details may be made without departing from the scope and spirit of the invention.
Figure 6 is a view of the screen shown in Figure 5 after the operator has moved the graphic object.
Figure 7 is a flowchart, illustrating the various interactive steps in the improved method of interac-tively editing graphic objects in an interactive draw graphic system.
DESCRIPTION OF THE PREFERRED EMBODIMENT:
Figure 1 illustrates the general arrangement of a typical information handling system. The system shown comprises a display device 10 which comprises a conven-tional video text-type terminal for displaying informa-tion to the operator, a keyboard 11 which the operator uses to enter information, including commands and data, into system, a printer 13 which functions to provide hard copy output of informatïon selected by the opera-tor, a pair of diskette drives, 14L and 14R, whichfunction to transfer information between the system and the magnetic storage diskettes that are removably associated with the diskette drives, and which store both program information, text information, and graphic information.
System components 10, 11, 13, 14L, and 14R are connected, as shol~n in Figure 1, to the microprocessor AT9-84-Od4 ~980 Block 15 which functions as the overall control for the system and interrelates the system components in a manner to perform their specific functions at the appropriate time. The system of Figure 1 also includes a modem 16 which functions to interconnect the system to other system through various communication links.
Since the system of Figure 1 is adapted to process graphic applications such as interactive draw type graphics, it should be assumed that the display device 10 is an all-points addressable type of graphic display device, in which each individual picture element OPEL) may be addressed, in contrast to conventional text-type displays in which only a character box is addressable.
Since interactive draw graphic applications are to be run by the system, an auxiliary input device 18 is also provided to insure rapid positioning of the cursor on the screen, since positioning of the cursor by keys on the keyboard is not as efficient as input device 18.
Such devices are well known in the art, and for purpos-es of the present description, it will be assumed that device 18 is a conventional "mouse" equipped with two function keys or buttons. Devices having similar functions, such as data tablets, could also be employed for input device 18.
It should also be assumed that the system of Figure 1 is provided with a suitable interactive draw graphics type program which permits the operator to draw graphic objects on the screen of device 10 similar to the four objects, 21, 22, 23, and 24 shown in Figure 2.
Figure 2 represents the screen o device 10, or a defined section of that screenl sometimes referred to in the art as a window. The four objects comprise circle 21J triangle 22, rectangle 23~ and a zig?ag line 24. Each of these graphic objects are individuallY
AT9-84-044 ~38~8~
defined in the system as a graphic object and were generated by the operator following a series of inter-actions with the system to produce each object. It is assumed that each of the objects were either "drawn"
originally by the operator or retrieved or copied from a library of graphic objects which the system provides to the operator.
It should be further assumed, for purposes of understanding the present invention, that the operator desires to edit the graphic information displayed in Figure 2, particularly to move the rectangle 23 from the position shown in Figure 2 to the position shown in Figure 6.
The interactive steps involved in that move edit operation will now be described in connection with the 10wchart of Figure 7 and the display screens shown in Figures 2-6.
In order to start the graphic editing operation, the operator presses a predetermined function key on the keyboard or takes some equivalent action which the system interprets as an instruction to enter the graph-ic object editing mode. Entering into this mode dis^plays the pointing cursor 25 on the screen, as shown in Figure 3. The system then monitors the input device 18, i.e., the mouse, as indicated by Block 71 on the flowchart. As the operator moves the mouse, the system causes the pointing cursor 25 to track the movement of the mouse. The system is also monitoring the position ox the Action Selection Key 18A and the Object Selec-tion Key 18B.
To select an edit operation, the operator presses the Action Select Key, which is detected by Block 7~.
This action will usually occur after the operator has positioned the pointing cursor in a blank area of the screen. Block 73, sensing that the Action Key has been depressed, causes the menu 27, shown in Figure 4 to be displayed in a frame next to the position of cursor 25.
The display menu 27 lists all of the available edit actions that the operator may engage in. Thy system continues to monitor the output of the mouse device for selection of the particular edit action, as indicated by Block 74. An edit action is selected from the menu by the operator moving the mouse to position the pointing cursor adjacent the move edit action with at least a portion of the cursor within the frame of the menu and pressing the Object Select Key.18B, as shown in Block 75.
The system first determines the position of the cursor relative to the displayed menu and its frame when the Object Select Key is pressed. If the cursor arrowhead is within the menu frame, as shown in Figure 4 and indicated by Block 76, the new cursor 28, shown in Figure 5, is displayed and the move edit action is made active in the system and the menu becomes hidden to the operator. Block 77 and Block 78 indicate the setting of the new cursor 28 and setting of the edit action.
The operator then positions the cursor 28 next to the graphic object to be moved by suitably moving the mouse. When the cursor 28 is positioned adjacent to the rectangle 23, as shown in Figure 5, the operator again presses the Object Select Key, as shown in Block 72. Block 80 in the flowchart of Figure 7 determines if the cursor 28 is near a graphic object. Since it is next to the rectangle, the rectangle is highlighted, as indicated by Block 81, providing a visual feedback signal to the operator that the object to be moved has been recognized by the system.
Block 81 also represents operation of the system AT9-84-0~ 123~98~
to determine if an edit action is currently active and, if so, the various initializing actions that must occur, depending upon the specific action involved.
In the case of the move operation, the system is initial-ized so that the movement of the cursor from its cur-rent position will be translated to a corresponding movement of the rectangle from its current position.
It should be understood that the move edit junction does not involve any rotational movement of the reck-angle. However, the rectangle may be moved on anydiagonal line that the cursor follows. Block 83 of the flowchart reads the movement of the mouse and causes the rectangle to "move" in accordance with the movement of the mouse. The system in Block 84 continuously erases and re-draws the rectangle to provide an indica-tion of movement on the screen. -As long as the move edit operation is active,movement of the mouse will cause movement of the se-lected object, as shown in Block 85. Releasing of theObject Select Key terminates the movement of the reck-angle, but allows the operator to select another object to be moved, since the move action remains active until another edit operation is selected from the menu or the entire edit function is terminated at Block 86 by the operator pressing the End Function Key on the keyboard.
The operator is thus permitted to move other objects on the screen without returning to the menu at the end of the firs edit operation. In this type of editing method, the active editing operation remains implicit until the operator takes some positive action to either terminate the entire edit function or replace the active edit action by selecting a different edit action from the menu. It has been found that by having an editing action remain active or implicit until terminated or changed, considerably simplifies the graphic editing operation. The action that is current-AT9-8~-044 lZ38~80 ly active or implicit is reflected in the cursor and will also be displayed on the status line of the dis-play should the operator need to confirm what action is current and active.
The following paragraphs set forth programming language sta~emen~s, which persons skilled in the art of programming interactive information handling systems and interactive draw graphic applications will find informative in connection with implementing the method described in the specification and defined in the claims. The pseudo code statements follow generally the organization of the flowchart of Figure 7.
In the following it is assumed that the worksta-tion is under mouse and keyboard device control. The mouse controls the movement of a visible pointing cursor which allows the operator to determine the current cursor position on the screen. The mouse is zo also assumed to have two keys (buttons): l) one key is used for selection of objects and menu options and is called OBJECT_SELECT_KEY, and 2) the other for re-questing menu presentation and is called ACTION_SELECT KEY.
The application calls a routine to query the mouse input device to determine if a mouse key has been pressed CALL READ_INPUT DEVICE). READ_INPUT DEVICE
will return the selected key and the current X, Y
location of the pointing cursor.
If the OBJECT_SELECT_KEY is pressed, a routine is called to determine if the X and Y location returned from READ_INPUT_DEVICE is currently pointing to a 3~ graphic object (e.g., rectangle, circle). If the operator pointed to a graphic object, the graphic object is highlighted by a routine CALL
HIGHLIGHT_OBJECT). If an implicit action is in progress :~23~39~3~
(CASE ACTIVE_ACTION OF), the application performs initialization prior to performing the requested im-plicit action. In the case of MOVE, the application makes a copy of the selected object, and erases the original object on the screen. (CALL COPY_INIT) For SCALE_UP, SCALE_DO~, STRETCH, and SHRINK actions, the application must get the length of the line from the center of the object to the current cursor location and stores the results in an information save area. (CALL
S INIT) If no implicit action is currently active, then no initialization needs to be made.
Once initialization of the implicit actions occurs, the current X, Y location of the selected object are saved (SAVX and SAVY). The application then reads the input device again (CALL READ INPUT_DEVICE) to determine the status of the mouse Xey and the X, Y
location of the pointing cursor. If the application determines, by comparing the new X, Y with the SAVX and SAVY that the pointing cursor moved (CALL
CHECK_CURSOR_MOVEMENT), the implicit action is executed (CASE ACTIVE_ACTION OF).
If the action is a MOVE or COPY, a routine is called (CALL MOVE/COPY_OBJECT) to erase the previous copy of the selected object and draw a copy oE the selected object next to the new cursor position IF the action is a ROTATE, a routine is called (CALL ROTATE_OBJECT) to get an amount of circular rotation accumulated from the previous position to the current cursor location, erase old copy of the object, and draw the object with the rotation applied.
If the action is STRETCH or SHRINK, a routine is called (CALL STRETCH/SHRINK_OBJECT) to get length of line from center of the object to the new cursor posi-tion, use the proportion of the new length to old AT9-84-044 ~238980 length to get proportion to stretch or shrink the object in the direction of the cursor movement, erase old copy of the object, and draw the object with the stretch or shrink applied.
If the action is SCALE_UP or SCALE_DOWN, a routine is called (CALL SCALE_OBJECT) to get length of line from the center of the selected object to new cursor position, use the proportion of the new length to old length Jo get proportion to scale entire object, erase old copy of the object, and draw the object with scal-ing applied.
The input device is continually read and the implicit action executed until the implicit action is complete (UNTIL ACTION_COMPLETE).`
If the ACTION_SELECT_KEY is pressed, a menu of actions will be displayed. (CALL DISPLAY_ACTION_MENU) The input device is read again (CALL READ_INPUT_DEVICE) to wait for the operator to select one of the actions on the action menu. As the operator moves the pointing cursor, the menu is hidden (CALL HIDE_ACTION_MENU) and re-displayed until the OBJECT_SELECT_KEY is pressed.
When the OBJECT_SELECT_KEY is pressed, a routine is called to determine if the selection point is inside the menu area. (CALL FIND_IN MENU AREA) If the select-ed point is inside the menu area, a routine is called to get the action selected from the menu and set the ACTIVE ACTION to be performed. (CALL
-GET_ACTION_SELECTED) A routine is then called to change the shape of the pointing cursor to reflect the selected implicit action. (CALL SET_CURSOR_SHAPE) If the operator selected outside the menu area, the ap-plication will set a default ACTIVE_ACTION and setthe CURSOR_SHAPE to reflect the default implicit action.
AT9-84-0~4 The application continually queries the input device (CALL READ_INPUT_DEVICE) until editing is com-plete. UNTIL EDIT_COMPLETE) PSEUDO CODE FOR IMPLICIT ACTIONS IN INTERACTIVE DRAW
GRAPHICS
REPEAT
..CALL READ INPUT_DEVICE ~SELECT_KEY_TYPE, X, Y) ..IF SELECT KEY TYPE = OBJECT_SELECT KEY THEN
....CALL FIND_OBJECT OX, Y, OBJECT_PTR) ....IF OBJECT PTR C NIL THEN
OBJECT LOCATED AT X, Y LOCATION) ...... CALL HIGHLIGHT OBJECT OBJECT PTR) ...... CASE ACTIVE_ACTION OF
........ MOVE: CALL MOVE INIT ~OBJECT_PTR, X, Y) Zo ........ COPY: CALL COPY_INIT ~OBJECT_PTR, X, Y) ........ SCALE_UP, SCALE_DOWN, STRETCH, SHRINK:
CALL S_INIT ~OBJECT_PTR, X, Y) ........ NO ACTION : NO IMPLICIT ACTION CURRENTLY
ACTIVE*) ...... ENDCASE
...... REPEAT
.~... ..CALL SAVE CURSOR LOCATION OX, Y, SAVX, SAVY) ........ CALL READ INPUT DEVICE ~SELECT_KEY TYPE, X, Y) ........ CALL CHECK_CURSOR MOVEMENT
(X, Y, SAVX, SAVY, CURSOR_MOVED) ........ IF CURSOR MOVED THEN
.......... CASE ACTIVE ACTION OF
............ MOVE, COPY: CALL MOVE/COPY_OBJECT
~OBJECT_PTR~ X, Y) ~5 ............ ROTATE: CALL ROTATE_OBJECT
~OBJECT_PTR, X, Y) ............ STRETCH, SHRINK: CALL STRETCH/SHRINK OBJECT
OBJECT PTR, X, Y) AT9-84-044 ~23~80 ............ SCALE_UP, SCALE_DOWN: CALL SCALE OBJECT-(OBJECT_PTR, UP, X, Ye ............ NO_ACTION :
(*NO IMPLICIT ACTION CURRENTLY ACTIVE*) ,,...... ..ENDIF
...... UNTIL ACTION_COMPLETE
...... CALL DEHIGHLIGHT OBJECT(OBJECT PTR) ....ENDIF (*OBJECT_FOUND*) ..ELSE
l IF SELECT_KEY_TYPE = ACTION SELECT KEY THEN
...... REPEAT
........ CALL DISPLAY ACTION MENU (MENU PTR, X, Y) ........ CALL READ_INPUT_DEVICE (SELECT KEY TYPE, X, Y) ........ CALL HIDE ACTION_MENU (MENU PTR, X, Y) ...... UNTIL SELECT KEY TYPE = OBJECT SELECT KEY
...... CALL FIND_IN~ ENU_AREA (X, Y, IN_MENU_AREA) ...... IF IN_MENU_AREA THEN (*CURSOR INSIDE MENU AREA*) ........ CALL GET_ACTION SELECTED (ACTIVE_ACTION) ........ CALL SET_CURSOR_SHAPE
(ACTIVE ACTION, CURSOR_SHAPE) ,....... ELSE
........ ACTIVE_ACTION = DEFAULT_ACTION
........ CURSOR_SHAPE = DEFAULT CURSOR_SHAPE
...... ENDIF (* IN_MENU_AREA*) ....ENDIF (*ACTION_SELECT KEY
..ENDIF (*SELECT KEY_TYPE*) UNTIL EDIT COMPLETE (*TERMINATION OF EDITING*) While the invention has been particularly shown and described with reference to the preferred embodi-ment thereof, it will be understood by those skilled in the art that various changes in the orm and details may be made without departing from the scope and spirit of the invention.
Claims (7)
1. A method of editing displayed graphic objects in an interactive draw graphic system which includes an input device for the system operator to control the position of the cursor on the display screen and a pair of selectively operable keys, said method com-prising the steps of;
a) displaying to said operator in response to operation of one of said keys a menu of available editing actions, and b) selecting one of said editing actions to be made active or an object to be edited including the step of positioning said cursor adjacent the item to be selected and actuating said other key.
a) displaying to said operator in response to operation of one of said keys a menu of available editing actions, and b) selecting one of said editing actions to be made active or an object to be edited including the step of positioning said cursor adjacent the item to be selected and actuating said other key.
2. The method recited in Claim 1 in which said step of displaying said menu positions said displayed menu in a predetermined positional relationship with respect to said cursor.
3. The method recited in Claim 2 in which said selected editing action remains active until a dif-ferent editing action is selected or said editing operation is terminated.
4. The method recited in Claim 3 further including the step of modifying the appearance of the cursor to reflect the selected editing action.
5. The method recited in Claim 4 further including the step of hiding said menu from said operator after an editing action has been selected.
6. The method recited in Claim 5 further including the step of selecting an object to be edited, editing said selected object in accordance with the edit action selected from said menu, terminating the edit action on said selected object, and editing a second selected object without repeating the edit action selection step.
7. The method recited in Claim 6 in which said step of editing said second selected object involves the same editing action as said first said editing action.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/703,161 US4686522A (en) | 1985-02-19 | 1985-02-19 | Method of editing graphic objects in an interactive draw graphic system using implicit editing actions |
US703,161 | 1985-02-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1238980A true CA1238980A (en) | 1988-07-05 |
Family
ID=24824274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000495481A Expired CA1238980A (en) | 1985-02-19 | 1985-11-15 | Method of editing graphic objects in an interactive draw graphic system using implicit editing actions |
Country Status (4)
Country | Link |
---|---|
US (1) | US4686522A (en) |
EP (1) | EP0192927A3 (en) |
JP (1) | JPS61194577A (en) |
CA (1) | CA1238980A (en) |
Families Citing this family (223)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0174403B1 (en) * | 1984-09-12 | 1988-12-14 | International Business Machines Corporation | Automatic highlighting in a raster graphics display system |
JPS61245188A (en) * | 1985-04-24 | 1986-10-31 | 株式会社日立製作所 | Data processor |
US4815029A (en) * | 1985-09-23 | 1989-03-21 | International Business Machines Corp. | In-line dynamic editor for mixed object documents |
US4941111A (en) * | 1986-04-18 | 1990-07-10 | Advanced Micro Devices, Inc. | Video picking and clipping method and apparatus |
US4849908A (en) * | 1986-05-14 | 1989-07-18 | Brother Kogyo Kabushiki Kaisha | Word processor with a ruled line display function |
US5337402A (en) * | 1986-06-12 | 1994-08-09 | Keiji Kitagawa | Graphic data processing apparatus using displayed graphics for application program selection |
DE3729023C2 (en) * | 1986-08-29 | 1995-03-16 | Canon Kk | Imaging device |
US5579416A (en) * | 1986-10-27 | 1996-11-26 | Canon Kabushiki Kaisha | Character processing apparatus for selectively modifying a font pattern |
JPS63109591A (en) * | 1986-10-27 | 1988-05-14 | Sharp Corp | Optical character reader |
US4731609A (en) * | 1986-11-03 | 1988-03-15 | International Business Machines Corporation | Fast correlation of markers with graphic entities |
US5285193A (en) * | 1987-01-16 | 1994-02-08 | Sharp Kabushiki Kaisha | Data base system |
JP2619383B2 (en) * | 1987-03-20 | 1997-06-11 | 株式会社日立製作所 | Coordinate input device |
JPS63288357A (en) * | 1987-05-20 | 1988-11-25 | Hitachi Ltd | Data editing system |
US4841291A (en) * | 1987-09-21 | 1989-06-20 | International Business Machines Corp. | Interactive animation of graphics objects |
US5162781A (en) * | 1987-10-02 | 1992-11-10 | Automated Decisions, Inc. | Orientational mouse computer input system |
US4821211A (en) * | 1987-11-19 | 1989-04-11 | International Business Machines Corp. | Method of navigating among program menus using a graphical menu tree |
JP2693777B2 (en) * | 1988-03-23 | 1997-12-24 | 株式会社日立製作所 | Interactive screen definition method and apparatus |
US5721959A (en) * | 1988-07-01 | 1998-02-24 | Canon Kabushiki Kaisha | Information processing apparatus for pattern editing using logic relationship representative patterns |
US4931783A (en) * | 1988-07-26 | 1990-06-05 | Apple Computer, Inc. | Method and apparatus for removable menu window |
US5070534A (en) * | 1988-10-17 | 1991-12-03 | International Business Machines Corporation | Simplified cad parametric macroinstruction capability including variational geometrics feature |
EP0382495B1 (en) * | 1989-02-08 | 2000-04-26 | Canon Kabushiki Kaisha | Figure processing apparatus |
US6473204B1 (en) * | 1989-05-10 | 2002-10-29 | Canon Kabushiki Kaisha | Image processing apparatus capable of selecting a non-rectangular area |
CA2012796C (en) * | 1989-06-16 | 1996-05-14 | Bradley James Beitel | Trigger field display selection |
US5211564A (en) * | 1989-07-19 | 1993-05-18 | Educational Testing Service | Computerized figural response testing system and method |
CA2045646A1 (en) * | 1989-10-23 | 1991-04-24 | Stuart Ashmun | Pointing device with adjustable clamp attachable to a keyboard |
US5187468A (en) * | 1989-10-23 | 1993-02-16 | Microsoft Corporation | Pointing device with adjustable clamp attachable to a keyboard |
JP2784825B2 (en) * | 1989-12-05 | 1998-08-06 | ソニー株式会社 | Information input control device |
JP2619962B2 (en) * | 1990-02-28 | 1997-06-11 | 株式会社日立製作所 | Figure editing method and apparatus |
JPH04118695A (en) * | 1990-09-10 | 1992-04-20 | Sony Corp | Image formation system |
JPH04121923A (en) * | 1990-09-12 | 1992-04-22 | Sony Corp | Switch structure for electronic apparatus |
JPH04160622A (en) * | 1990-10-25 | 1992-06-03 | Mutoh Ind Ltd | Input device for cad |
JP2908002B2 (en) * | 1990-11-26 | 1999-06-21 | 株式会社日立製作所 | Drawing apparatus having auxiliary line display function, and drawing method using the drawing apparatus |
JPH04199473A (en) * | 1990-11-29 | 1992-07-20 | Fujitsu Ltd | Logic drawing editing editor |
JP2695301B2 (en) * | 1991-04-26 | 1997-12-24 | シャープ株式会社 | Portable information terminal |
US5283560A (en) * | 1991-06-25 | 1994-02-01 | Digital Equipment Corporation | Computer system and method for displaying images with superimposed partially transparent menus |
GB9115142D0 (en) * | 1991-07-13 | 1991-08-28 | Ibm | Data processing system |
US5805132A (en) | 1991-09-17 | 1998-09-08 | Minolta Co., Ltd. | Image editing apparatus capable of setting image processing region on display screen |
EP0606214B1 (en) * | 1991-10-04 | 1997-07-16 | Wang Laboratories, Inc. | Computer graphics system having a pause utility for interactive operations |
US5442741A (en) * | 1991-11-13 | 1995-08-15 | Hewlett-Packard Company | Method for displaying pie chart information on a computer screen |
US5325110A (en) * | 1991-12-30 | 1994-06-28 | Xerox Corporation | Multi-control point tool for computer drawing programs |
US5623282A (en) * | 1991-12-31 | 1997-04-22 | Microsoft Corporation | Method and system for the direct manipulation of cells in an electronic spreadsheet program or the like |
US5404439A (en) * | 1992-04-15 | 1995-04-04 | Xerox Corporation | Time-space object containment for graphical user interface |
EP0566293B1 (en) * | 1992-04-15 | 2003-07-16 | Xerox Corporation | Graphical drawing and editing systems and methods therefor |
JP3002923B2 (en) * | 1992-04-20 | 2000-01-24 | 富士写真フイルム株式会社 | Image alignment device and method of using the same |
JPH0628477A (en) * | 1992-04-27 | 1994-02-04 | Digital Equip Corp <Dec> | Pattern perception device |
JPH0689307A (en) * | 1992-05-04 | 1994-03-29 | Internatl Business Mach Corp <Ibm> | Device and method for displaying information in database |
CA2092632C (en) * | 1992-05-26 | 2001-10-16 | Richard E. Berry | Display system with imbedded icons in a menu bar |
CA2092633C (en) * | 1992-05-26 | 2001-06-05 | Richard E. Berry | Display system with nested objects |
US5319385A (en) * | 1992-06-02 | 1994-06-07 | Digital Equipment Corporation | Quadrant-based binding of pointer device buttons |
US5870492A (en) * | 1992-06-04 | 1999-02-09 | Wacom Co., Ltd. | Hand-written character entry apparatus |
JPH06103075A (en) * | 1992-07-06 | 1994-04-15 | Internatl Business Mach Corp <Ibm> | Operation for object-oriented application |
US5551038A (en) * | 1992-07-16 | 1996-08-27 | International Business Machines Corporation | Directory based computer environment |
US5721900A (en) * | 1992-07-20 | 1998-02-24 | International Business Machines Corp | Method and apparatus for graphically displaying query relationships |
JP2549247B2 (en) * | 1992-07-20 | 1996-10-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | Display device and method for database |
US5526018A (en) * | 1992-10-02 | 1996-06-11 | Foundation Microsystems, Inc. | Stretching scales for computer documents or drawings |
US6121966A (en) * | 1992-11-02 | 2000-09-19 | Apple Computer, Inc. | Navigable viewing system |
JP2750411B2 (en) * | 1992-12-02 | 1998-05-13 | 大日本スクリーン製造株式会社 | Plate making equipment |
US6259446B1 (en) | 1992-12-23 | 2001-07-10 | Object Technology Licensing Corporation | Menu state system |
DE69303028T2 (en) | 1992-12-23 | 1997-01-09 | Taligent Inc | SHIFTING SYSTEM |
JP3793226B2 (en) | 1992-12-23 | 2006-07-05 | オブジェクト テクノロジー ライセンシング コーポレイション | Atomic command system |
US5551055A (en) * | 1992-12-23 | 1996-08-27 | Taligent, Inc. | System for providing locale dependent user interface for presenting control graphic which has different contents or same contents displayed in a predetermined order |
US5315703A (en) * | 1992-12-23 | 1994-05-24 | Taligent, Inc. | Object-oriented notification framework system |
AU5960594A (en) * | 1992-12-28 | 1994-07-19 | Apple Computer, Inc. | File translation system |
US5440482A (en) * | 1993-03-25 | 1995-08-08 | Taligent, Inc. | Forward and reverse Boyer-Moore string searching of multilingual text having a defined collation order |
US5485373A (en) * | 1993-03-25 | 1996-01-16 | Taligent, Inc. | Language-sensitive text searching system with modified Boyer-Moore process |
US5734905A (en) * | 1993-05-06 | 1998-03-31 | Board Of Trustees Of The Leland Stanford Junior University | User interface in object oriented computer system for performing intuitive object transformations |
US5638501A (en) | 1993-05-10 | 1997-06-10 | Apple Computer, Inc. | Method and apparatus for displaying an overlay image |
CA2124505C (en) * | 1993-07-21 | 2000-01-04 | William A. S. Buxton | User interface having simultaneously movable tools and cursor |
CA2124624C (en) * | 1993-07-21 | 1999-07-13 | Eric A. Bier | User interface having click-through tools that can be composed with other tools |
US5581670A (en) * | 1993-07-21 | 1996-12-03 | Xerox Corporation | User interface having movable sheet with click-through tools |
JPH0764749A (en) * | 1993-08-25 | 1995-03-10 | Fujitsu Ltd | Command execution processor |
JPH0896157A (en) * | 1994-09-22 | 1996-04-12 | Nikon Corp | Method and device for editing image |
US5530796A (en) * | 1994-09-30 | 1996-06-25 | International Business Machines Corporation | Menu bar editor |
US5790820A (en) * | 1995-06-07 | 1998-08-04 | Vayda; Mark | Radial graphical menuing system |
US5745717A (en) * | 1995-06-07 | 1998-04-28 | Vayda; Mark | Graphical menu providing simultaneous multiple command selection |
US5798760A (en) * | 1995-06-07 | 1998-08-25 | Vayda; Mark | Radial graphical menuing system with concentric region menuing |
US6119130A (en) * | 1996-03-28 | 2000-09-12 | Oracle Corporation | Method and apparatus for providing schema evolution without recompilation |
US7225404B1 (en) | 1996-04-04 | 2007-05-29 | Massachusetts Institute Of Technology | Method and apparatus for determining forces to be applied to a user through a haptic interface |
US5715413A (en) * | 1996-06-25 | 1998-02-03 | International Business Machines Corporation | Dragging and dropping with an instantiation object |
US6084587A (en) | 1996-08-02 | 2000-07-04 | Sensable Technologies, Inc. | Method and apparatus for generating and interfacing with a haptic virtual reality environment |
US5917486A (en) * | 1996-11-04 | 1999-06-29 | Prolexia Reading Education Software Corporation | System and method for client program control of a computer display cursor |
US6496870B1 (en) | 1997-01-31 | 2002-12-17 | Sun Microsystems, Inc. | System, method and article of manufacture for collaboration with an application |
US5842020A (en) * | 1997-01-31 | 1998-11-24 | Sun Microsystems, Inc. | System, method and article of manufacture for providing dynamic user editing of object oriented components used in an object oriented applet or application |
US5884078A (en) | 1997-01-31 | 1999-03-16 | Sun Microsystems, Inc. | System, method and article of manufacture for creating an object oriented component having multiple bidirectional ports for use in association with a java application or applet |
AU4196299A (en) * | 1998-05-23 | 1999-12-13 | Eolas Technologies, Incorporated | Identification of features of multi-dimensional image data in hypermedia systems |
US6421048B1 (en) | 1998-07-17 | 2002-07-16 | Sensable Technologies, Inc. | Systems and methods for interacting with virtual objects in a haptic virtual reality environment |
US6552722B1 (en) | 1998-07-17 | 2003-04-22 | Sensable Technologies, Inc. | Systems and methods for sculpting virtual objects in a haptic virtual reality environment |
WO2000033173A1 (en) * | 1998-11-30 | 2000-06-08 | Actcon Control Ab | Method for inserting objects into a working area in a computer application |
US6433775B1 (en) * | 1999-03-25 | 2002-08-13 | Monkeymedia, Inc. | Virtual force feedback interface |
US6224382B1 (en) * | 1999-03-30 | 2001-05-01 | Prosoft, Inc. | Method and apparatus for developing computer screen layout |
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US7624356B1 (en) * | 2000-06-21 | 2009-11-24 | Microsoft Corporation | Task-sensitive methods and systems for displaying command sets |
US7113168B2 (en) * | 2000-09-12 | 2006-09-26 | Canon Kabushiki Kaisha | Compact information terminal apparatus, method for controlling such apparatus and medium |
US6867770B2 (en) | 2000-12-14 | 2005-03-15 | Sensable Technologies, Inc. | Systems and methods for voxel warping |
US6907580B2 (en) * | 2000-12-14 | 2005-06-14 | Microsoft Corporation | Selection paradigm for displayed user interface |
US6958752B2 (en) | 2001-01-08 | 2005-10-25 | Sensable Technologies, Inc. | Systems and methods for three-dimensional modeling |
US9189467B1 (en) | 2001-11-07 | 2015-11-17 | Apple Inc. | Method and apparatus for annotating an electronic document |
US20030184525A1 (en) * | 2002-03-29 | 2003-10-02 | Mitac International Corp. | Method and apparatus for image processing |
US7058902B2 (en) * | 2002-07-30 | 2006-06-06 | Microsoft Corporation | Enhanced on-object context menus |
US7056124B1 (en) | 2002-08-20 | 2006-06-06 | Ctb/Mcgraw-Hill | Method and system for creating, administering and automating scoring of dimensional modeling constructed response items |
US20040078792A1 (en) | 2002-10-21 | 2004-04-22 | Microsoft Corporation | System and method for selectively deactivating auto-deploy functionality of a software input panel |
US7382378B2 (en) | 2003-10-30 | 2008-06-03 | Sensable Technologies, Inc. | Apparatus and methods for stenciling an image |
US7889209B2 (en) | 2003-12-10 | 2011-02-15 | Sensable Technologies, Inc. | Apparatus and methods for wrapping texture onto the surface of a virtual object |
US7626589B2 (en) | 2003-12-10 | 2009-12-01 | Sensable Technologies, Inc. | Haptic graphical user interface for adjusting mapped texture |
US7149596B2 (en) | 2004-01-13 | 2006-12-12 | Sensable Technologies, Inc. | Apparatus and methods for modifying a model of an object to enforce compliance with a manufacturing constraint |
US20050174337A1 (en) * | 2004-02-11 | 2005-08-11 | Nielsen Paul S. | Electronic handheld drawing and gaming system using television monitor |
US7834819B2 (en) * | 2004-04-01 | 2010-11-16 | Polyvision Corporation | Virtual flip chart method and apparatus |
US20070044028A1 (en) * | 2004-04-01 | 2007-02-22 | Dunn Michael H | Virtual flip chart method and apparatus |
US7948448B2 (en) | 2004-04-01 | 2011-05-24 | Polyvision Corporation | Portable presentation system and methods for use therewith |
US8046712B2 (en) * | 2004-06-29 | 2011-10-25 | Acd Systems International Inc. | Management of multiple window panels with a graphical user interface |
US7348982B2 (en) * | 2004-09-30 | 2008-03-25 | Microsoft Corporation | Method, system, and computer-readable medium for creating and laying out a graphic within an application program |
US8134575B2 (en) | 2004-09-30 | 2012-03-13 | Microsoft Corporation | Maintaining graphical presentations based on user customizations |
US8510657B2 (en) * | 2004-09-30 | 2013-08-13 | Microsoft Corporation | Editing the text of an arbitrary graphic via a hierarchical list |
JP4548093B2 (en) * | 2004-11-01 | 2010-09-22 | 日本電気株式会社 | Mobile terminal device and display data editing method for mobile terminal device |
US7337399B2 (en) | 2005-01-03 | 2008-02-26 | Infoprint Solutions Company | Apparatus, system, and method for editing a region of a document intersecting multiple content component types in a single operation |
US7762816B2 (en) * | 2005-02-22 | 2010-07-27 | Educational Testing Service | Method and system for automated item development for language learners |
US7506306B2 (en) * | 2005-05-24 | 2009-03-17 | International Business Machines Corporation | Graphical editor with incremental development |
US7779362B1 (en) * | 2005-09-02 | 2010-08-17 | Adobe Systems Inc. | Methods and apparatus for selecting objects by state |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US8438486B2 (en) | 2006-02-09 | 2013-05-07 | Microsoft Corporation | Automatically converting text to business graphics |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US20080238887A1 (en) * | 2007-03-28 | 2008-10-02 | Gateway Inc. | Method and apparatus for programming an interactive stylus button |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US8739068B2 (en) * | 2007-06-15 | 2014-05-27 | Microsoft Corporation | Dynamic user interface for in-diagram shape selection |
US9035948B2 (en) * | 2007-08-02 | 2015-05-19 | Adobe Systems Incorporated | Methods and systems for drawing graphics into a data chart |
DE102007039444A1 (en) * | 2007-08-21 | 2009-02-26 | Volkswagen Ag | Method for displaying information in a motor vehicle and display device for a motor vehicle |
DE102007039446A1 (en) * | 2007-08-21 | 2009-02-26 | Volkswagen Ag | A method of displaying information in a variable scale vehicle and display device |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8762871B2 (en) * | 2008-02-03 | 2014-06-24 | Microsoft Corporation | Dynamic preview of diagram elements to be inserted into a diagram |
US8185843B2 (en) * | 2008-03-17 | 2012-05-22 | Apple Inc. | Managing user interface control panels |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US10255566B2 (en) | 2011-06-03 | 2019-04-09 | Apple Inc. | Generating and processing task items that represent tasks to perform |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US9448706B2 (en) * | 2009-07-29 | 2016-09-20 | Synopsys, Inc. | Loop removal in electronic design automation |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US8799325B2 (en) | 2010-03-12 | 2014-08-05 | Microsoft Corporation | Reordering nodes in a hierarchical structure |
US9092128B2 (en) | 2010-05-21 | 2015-07-28 | Apple Inc. | Method and apparatus for managing visual information |
CN102541398A (en) * | 2010-12-16 | 2012-07-04 | 北京北方微电子基地设备工艺研究中心有限责任公司 | Method, device and system for adjusting process formula step sequence |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
CN102955657B (en) * | 2011-08-25 | 2016-08-17 | 幻音科技(深圳)有限公司 | Menu displaying method and device |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US9802364B2 (en) | 2011-10-18 | 2017-10-31 | 3D Systems, Inc. | Systems and methods for construction of an instruction set for three-dimensional printing of a user-customizableimage of a three-dimensional structure |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
US9904414B2 (en) * | 2012-12-10 | 2018-02-27 | Seiko Epson Corporation | Display device, and method of controlling display device |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
EP3937002A1 (en) | 2013-06-09 | 2022-01-12 | Apple Inc. | Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
AU2015266863B2 (en) | 2014-05-30 | 2018-03-15 | Apple Inc. | Multi-command single utterance input method |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179588B1 (en) | 2016-06-09 | 2019-02-22 | Apple Inc. | Intelligent automated assistant in a home environment |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
US10264213B1 (en) | 2016-12-15 | 2019-04-16 | Steelcase Inc. | Content amplification system and method |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
CN107909633B (en) * | 2017-11-16 | 2021-04-16 | 马军民 | Virtual mouse drawing tool and drawing method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4464652A (en) * | 1982-07-19 | 1984-08-07 | Apple Computer, Inc. | Cursor control device for use with display systems |
JPS5941047A (en) * | 1982-09-01 | 1984-03-07 | Omron Tateisi Electronics Co | Method for selecting menu |
US4692858A (en) * | 1984-02-02 | 1987-09-08 | Trillian Computer Corporation | Visual interface between user and computer system |
US4586035A (en) * | 1984-02-29 | 1986-04-29 | International Business Machines Corporation | Display terminal with a cursor responsive virtual distributed menu |
-
1985
- 1985-02-19 US US06/703,161 patent/US4686522A/en not_active Expired - Lifetime
- 1985-11-15 CA CA000495481A patent/CA1238980A/en not_active Expired
- 1985-12-18 JP JP60283215A patent/JPS61194577A/en active Granted
-
1986
- 1986-01-07 EP EP86100111A patent/EP0192927A3/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
EP0192927A2 (en) | 1986-09-03 |
US4686522A (en) | 1987-08-11 |
JPH0320789B2 (en) | 1991-03-20 |
JPS61194577A (en) | 1986-08-28 |
EP0192927A3 (en) | 1990-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1238980A (en) | Method of editing graphic objects in an interactive draw graphic system using implicit editing actions | |
EP0194442B1 (en) | Method for manipulation of graphic sub-objects in an interactive draw graphic system | |
JP2654283B2 (en) | Icon display method | |
EP0677803B1 (en) | A method and system for facilitating the selection of icons | |
US5384910A (en) | Method and apparatus for facilitating operator reconfiguration of a graphical user interface in a data processing system | |
US5923325A (en) | System and method for enhancing conveyed user information relating to symbols in a graphical user interface | |
EP0192022B1 (en) | Method for interactive rotation of displayed graphic objects | |
EP0203324B1 (en) | Graphic highlight adjacent a pointing cursor | |
JP2698045B2 (en) | Two-dimensional scrolling method and apparatus | |
EP0727730B1 (en) | Method for improving visibility and selectability of icons | |
US5706448A (en) | Method and system for manipulating data through a graphic user interface within a data processing system | |
US20020154173A1 (en) | Graphical user interface for direct control of display of data | |
JPH0756839A (en) | Operating method of processor-based apparatus | |
JPH0756841A (en) | Operating method of processor-based apparatus | |
JPH0756840A (en) | Operating method of processor-based apparatus | |
JP2003296012A (en) | System for inputting and displaying graphic and method of using interface | |
GB2310989A (en) | Graphical user interface | |
US4703321A (en) | Method for editing a graphic object in an interactive draw graphic system | |
JPH04186425A (en) | Menu display system | |
EP0613145A2 (en) | Card file graphical user interface with visual representation of video data | |
JP3348363B2 (en) | Graphic information display apparatus and method | |
JPH03144719A (en) | Information processor | |
JP2887808B2 (en) | Editing processor | |
JP2624271B2 (en) | Menu display method for information processing device | |
JP3043639B2 (en) | Display control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKEX | Expiry |