US20030001895A1 - Graphical user interface providing consistent behavior for the dragging and dropping of content objects - Google Patents

Graphical user interface providing consistent behavior for the dragging and dropping of content objects Download PDF

Info

Publication number
US20030001895A1
US20030001895A1 US10/233,551 US23355102A US2003001895A1 US 20030001895 A1 US20030001895 A1 US 20030001895A1 US 23355102 A US23355102 A US 23355102A US 2003001895 A1 US2003001895 A1 US 2003001895A1
Authority
US
United States
Prior art keywords
service
location
representation
user
copy
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.)
Abandoned
Application number
US10/233,551
Inventor
Tantek Celik
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Celik Tantek I.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Celik Tantek I. filed Critical Celik Tantek I.
Priority to US10/233,551 priority Critical patent/US20030001895A1/en
Publication of US20030001895A1 publication Critical patent/US20030001895A1/en
Assigned to APPLE INC. reassignment APPLE INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: APPLE COMPUTER, INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction 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/0486Drag-and-drop

Definitions

  • the present invention is directed to graphical user interfaces that are employed in computer systems, such as personal computers, and more particularly to a graphical user interface that provides consistency of operation for the dragging and dropping of all types of objects.
  • GUI graphical user interface
  • GUI display is based on a visual metaphor which defines a monitor screen as a work space known as a “desktop,” in which the contents of documents are presented in relocatable regions known as “windows.”
  • the graphical user interface typically includes icons that represent various objects in the computer system.
  • object refers to any software entity that exists in the memory of the computer and constitutes a specimen of a particular class.
  • an object can be a data file which contains the contents of a document. It can also be an application program or other type of service provider, such as a hardware driver.
  • An object can also be a container for other objects, such as a folder or a window.
  • a graphical user interface typically includes a cursor, or similar type of pointing device, that is controlled by the user to select objects.
  • a cursor or similar type of pointing device
  • the user can cause the object represented by the icon to open.
  • the icon represents an application program
  • the program can be launched.
  • the icon represents a data file
  • the application program which created that data file can be automatically launched, and the file opened within the program.
  • drag-and-drop Another ease-of-use capability provided by the graphical user interface is known as “drag-and-drop.” This term refers to the functionality which permits a user to select an icon, or other representation of an object, and “drag” the icon from one location to another on the display. For example, an icon for a data file can be dragged from the desktop to a folder, to cause the data file to be stored within the folder. In another type of drag-and-drop operation, an icon for a graphic document can be dragged into a window, to cause the document to be displayed within the window. As another example, an icon for a text document can be dragged onto an icon for a printer, to cause the document to be printed.
  • an object can be a text type of object, i.e. a data file containing textual data, a graphic type of object, which is another form of data file containing graphical information, or an application type, namely an executable program.
  • n is the number of types of objects in a system (typically on the order of 100 or more) and m is the number of types of receiving, or container, objects onto which any given object can be dropped (which may be on the order of 10 or more). If additional factors are involved, the number of possible results increases exponentially.
  • a typical computer user cannot reasonably be expected to remember all of these possibilities.
  • the model for drag-and-drop operations is not intuitive. Consequently, when a user performs a particular drag-and-drop operation, the resulting action may not be what was expected, or desired. For example, a user may know that the dragging of an icon from a desktop to a folder on the desktop results in the file represented by the icon being moved into that folder. However, if an icon is dragged from a window representing a removable disk to the desktop folder, the resulting action may be to make a copy of the file represented by the icon, while retaining the original version on the removable disk.
  • the user may have intended merely to move the file from the removable disk to the desktop folder, similar to moving the icon from the desktop to the folder. Because there are two copies of the file, the user is required to go back to the removable disk and delete the original copy of the file therefrom. The need for the user to perform these extra actions, because the result of the drag-and-drop operation was not as intended, is counterproductive to the basic premise which underlies the graphical user interface, namely ease of use.
  • this objective is achieved by controlling the action of a drag-and-drop operation in dependence upon a single factor, namely whether the destination for the operation is a content object or a service object.
  • a content object is any type of object that has the capability to contain another object without manipulating its data.
  • a service object is one which provides a computational result on data when another object is dropped on it. If the destination of a drag-and-drop operation is a content object, the resulting action is to move the dragged object from its original location to the destination. If the destination is a service object, the resulting action is to perform the associated service on the dragged object without affecting the perceived location of the data contained in the dragged object.
  • the user desires that a copy of an object be made when dragging it to a content object, rather than moving the object, such intention can be indicated through an appropriate action during the drag-and-drop operation.
  • the user may press a specified key on a keyboard, to indicate that the drag-and-drop operation should make a copy, rather than merely move the object.
  • the source of the dragged object does not permit the user to move the object, for example it is a locked disk, the user can be presented with an option to copy the object when the drag-and-drop operation is carried out.
  • the computer system can be set up to automatically make a copy if the source does not permit the object to be moved therefrom.
  • FIG. 1 is a general block diagram of an exemplary computer system of the type in which the present invention can be implemented;
  • FIGS. 2A and 2B are illustrations of a desktop in a graphical user interface
  • FIGS. 3A and 3B are illustrations of different types of drag and drop operations.
  • FIG. 4 is a flowchart of the operation of a user interface in accordance with the present invention.
  • a typical computer system includes a computer 10 having a variety of external peripheral devices 12 connected thereto.
  • the computer 10 includes a central processing unit 14 and associated memory.
  • This memory generally includes a main memory which is typically implemented in the form of a random access memory 16 , a nonvolatile memory that can comprise a read only memory 18 , and a permanent storage device, such as a magnetic or optical disk 20 .
  • the CPU 14 communicates with each of these forms of memory through an internal bus 22 .
  • the peripheral devices 12 include a data entry device such as a keyboard 24 , and a pointing or cursor control device 26 such as a mouse, trackball, pen or the like.
  • a display device 28 such as a CRT monitor or an LCD screen, provides a visual display of the information that is being processed within the computer, for example, the contents of a document being created by the user. A hard copy of this information can be provided through a printer 30 , or similar such device.
  • Each of these external peripheral devices communicates with the CPU 14 by means of one or more input/output ports 32 on the computer.
  • FIGS. 2A and 2B An example of an interface which employs the principles of the present invention is illustrated in FIGS. 2A and 2B. These figures illustrate a desktop 34 which defines a workspace 36 . Also included on the desktop is a menu bar 38 . Within the workspace 36 are two windows, 40 and 42 .
  • the left-hand window 40 is a folder window which contains icons representing various objects. As shown in FIG. 2A, three icons 44 pertain to text objects, a fourth icon 45 represents a graphic object and another icon 46 represents a spreadsheet object.
  • a sixth icon 48 is a stationary icon representing an object that can be used for the creation of presentation slides.
  • the right-hand window 42 contains a document which includes text 50 .
  • FIG. 2B illustrates the result of an operation in which the graphic icon 45 has been dragged from the folder in the left window 40 to the text document in the right window 42 .
  • dragging is an operation in which objects can be moved or copied on the desktop and within windows through the actuation of the cursor control device 26 .
  • the graphic icon When the graphic icon is placed within the document, its contents can be displayed, as illustrated in FIG. 2B.
  • FIG. 3A illustrates some examples of different types of container objects that can serve as destinations for a drag-and-drop operation.
  • a window 52 contains a file 54 which the user has selected with a cursor. This file can be dragged to another window 56 on the desktop. Alternatively, it can be dragged to a folder 58 , which could reside within a window or on the desktop itself.
  • the file 54 can be dragged into a text document 60 which might be displayed in another window.
  • 3A namely the window 56 , the folder 58 and the document 60 , is a “container” object.
  • These objects have the ability to embed objects within their contents. For example, when an object contains another object, it may include a pointer or other analogous type of reference to the location of the embedded object in the computer's memory.
  • the present invention is incorporated in a component-software based user interface of the type disclosed in U.S. patent application Ser No. 08/175,549, filed Dec. 30, 1993.
  • objects exist in the form of parts, where each part consists of intrinsic contents and an associated editor or handler.
  • One of the fundamental properties of parts is that any part can function as a container for any other part, or be contained within any other part. Thus, any part can be dragged and dropped onto any other part, and become a portion of the contents of the receiving part.
  • a given object can also be dragged to a service object.
  • the file 54 can be dragged onto an icon 62 which represents a printer.
  • the file 54 can be dragged onto an icon 64 that represents a word count service.
  • the file When the file is dropped onto the printer icon 62 , it causes the contents of the file to be printed at a particular printer associated with the icon.
  • an application When it is dropped on the word count service icon 64 , an application is launched which counts the number of words in the file, and reports the results of the count to the user. Whenever either of these services is performed, the dropped object remains intact, i.e. it is not consumed by the service. Consequently, the icon 54 returns to its original state, within the window 52 , after the user has dropped it onto one of the service icons 62 or 64 .
  • the user interface provides a consistent form of action whenever the user carries out a drag-and-drop operation.
  • the specific action that is performed is determined by the destination for the dragged object. If the destination is a container object, such as any of the examples illustrated in FIG. 3A, the dragged object is moved from its original location to the destination object. Alternatively, if the destination object is a service provider, as illustrated in FIG. 3B, the associated service is carried out with respect to the dragged object, but the perceived location of the object does not change. In other words, in the example of FIG. 3B, the icon 54 returns to its original location in the window 52 .
  • the user desires to place a copy of a selected object at the destination, and leave the original version of the object intact, rather than move it.
  • the user may desire to place a copy of the file 54 in the folder 58 .
  • the user can indicate the desire to make a copy by performing a specified action during the drag-and-drop operation.
  • the user can press a particular key on the computer keyboard, such as a shift or control key, while carrying out the drag-and-drop operation.
  • buttons can be designated as the “primary” button which is employed for default operations, such as selecting files and dragging icons, and one of the other buttons can be designated as a modifier button which indicates alternative operations, such as copying rather than moving an object.
  • the user interface can also provide a visual distinction between moving and copying operations. For example, during a normal drag-and-drop onto to a container object, the representation of the icon can move on the display with the cursor during the dragging operation. However, when a copying action is indicated, the image of the icon can remain in its original location, and a “ghost” or outline image of the icon can follow the cursor, to indicate that the original object is remaining intact.
  • modified actions may be desirable in response to a drag-and-drop operation.
  • the user may wish to create a link between two objects, or create a reference object which refers to the original object, e.g., an alias.
  • other modifier keys can be designated for these other types of actions.
  • the user may not be possible for the user to move an object from the source location as part of the drag-and-drop operation. For example, if a folder or disk which contains the object has been locked, the user does not normally have the option to make changes to the object. Rather, the user's capabilities may be limited to reading the object. In such a case, if the user attempts to perform a drag-and-drop operation with respect to a locked object, a warning can be displayed, to indicate that the user does not have the necessary authority to move the object. As part of the warning, the user can be provided with the option to make a copy of the object, instead of moving it. In this case, the original version of the object remains intact, so that its write-access privilege is not violated, but the user can still place a copy of the object at a desired new destination.
  • the user can set a system preference which automatically carries out a desired operation whenever an object cannot be moved through a drag-and-drop operation.
  • the user may set a parameter in the system which causes it to automatically copy the dragged object, or to automatically cancel the move when the user drags an object from a non-changeable source.
  • a user drags one or more objects from a source location A to a destination object B.
  • a destination object B is a service. If so, the service is performed on the dragged object(s) at step 74 , and the process ends.
  • step 80 If a determination is made at step 80 that the user does not have write access for the source location A, an inquiry is made at step 84 whether a system preference has been established for read-only sources. If so, a determination of that preference is made at step 86 . If the user has indicated that the object should be automatically copied, this action is carried out at step 78 . Otherwise, the move is cancelled and the process ends. If the user has not indicated a specific preference, a dialog box can be displayed at step 88 , asking the user whether he desires to copy the dragged object or cancel the move operation. If the user indicates cancel, the process ends. Otherwise, the object is copied at step 78 , and the process then ends.
  • the present invention provides a consistent action in response to a drag-and-drop operation, thereby enhancing the ease of use of the graphical user interface.
  • the dragging action is independent of both the source of the object being dragged and the type of object being dragged.
  • the resulting action is a binary decision that is based exclusively on whether the destination is a service object or a container object, thereby reducing the knowledge that is required of the user to successfully manipulate objects.

Abstract

A drag-and-drop operation in a graphical user interface is controlled dependence upon whether the destination for the operation is a content object or a service object. If the destination of a drag-and-drop operation is a content object, the resulting action is to move the dragged object from its original location to the destination. If the destination is a service object, the resulting action is to perform the associated service on the dragged object without affecting the perceived location of the data contained in the dragged object. If the user desires that an operation other than a move be made when dragging an object to a content object, a specified key on a keyboard is pressed, to indicate that the drag-and-drop operation should make a copy, rather than merely move the object. If the source of the dragged object does not permit the user to move the object, the user can be presented with an option to copy the object when the drag-and-drop operation is carried out. Alternatively, rather than requesting the user to indicate a choice each time such a situation occurs, the computer system can be set up to automatically make a copy if the source does not permit the object to be moved.

Description

    FIELD OF THE INVENTION
  • The present invention is directed to graphical user interfaces that are employed in computer systems, such as personal computers, and more particularly to a graphical user interface that provides consistency of operation for the dragging and dropping of all types of objects. [0001]
  • BACKGROUND OF THE INVENTION
  • The evolution of the computer industry is unparalleled in its rate of growth and complexity. Personal computers, for example, which began as little more than calculators having limited memory, tape-driven input capabilities and monochrome displays are now able to handle almost any data processing task with relative ease. While the ever-growing increase in computing power provided greater capabilities for application programmers and end users alike, the corresponding increase in complexity created an ease of use problem. Consequently, computer system designers were faced with a new challenge, namely to harness the available computing power in a form that was usable even by those with relatively little computer training, to ease the transition of users into a computer-based information paradigm. [0002]
  • In pursuit of this objective, various input/output philosophies, such as “user friendly,” “wysiwig” and “menu driven” became popular. These approaches to the input/output function are particularly applicable to microcomputers, also known as personal computers, which are intended to appeal to a broad audience of computer users, including those who had no previous computer experience. An important aspect of computers which employ those input/output concepts was, and continues to be, the interface which allows the user to input commands and data and receive results. One particularly prevalent form of interface is known as the graphical user interface (GUI). [0003]
  • One popular type of GUI display is based on a visual metaphor which defines a monitor screen as a work space known as a “desktop,” in which the contents of documents are presented in relocatable regions known as “windows.” In addition to windows, the graphical user interface typically includes icons that represent various objects in the computer system. In this context, the term “object” refers to any software entity that exists in the memory of the computer and constitutes a specimen of a particular class. For example, an object can be a data file which contains the contents of a document. It can also be an application program or other type of service provider, such as a hardware driver. An object can also be a container for other objects, such as a folder or a window. [0004]
  • One of the primary advantages offered by the graphical user interface, in terms of making the computer easier to use, is the ability for the user to effortlessly manipulate objects by moving, or otherwise acting upon, their icon representations. For example, a graphical user interface typically includes a cursor, or similar type of pointing device, that is controlled by the user to select objects. By actuating a button or key while the cursor is positioned over an icon, for example double-clicking a mouse button, the user can cause the object represented by the icon to open. If the icon represents an application program, the program can be launched. If the icon represents a data file, the application program which created that data file can be automatically launched, and the file opened within the program. [0005]
  • Another ease-of-use capability provided by the graphical user interface is known as “drag-and-drop.” This term refers to the functionality which permits a user to select an icon, or other representation of an object, and “drag” the icon from one location to another on the display. For example, an icon for a data file can be dragged from the desktop to a folder, to cause the data file to be stored within the folder. In another type of drag-and-drop operation, an icon for a graphic document can be dragged into a window, to cause the document to be displayed within the window. As another example, an icon for a text document can be dragged onto an icon for a printer, to cause the document to be printed. [0006]
  • In the past, the result of a drag-and-drop operation was dependent upon a number of factors, such as the type of object being dragged, the type of source from which the object was being dragged, and the type of destination. In some instances, the location of the source and the location of the destination were also factors that influenced the resulting action. In this context, the term “type” refers to an inherent characteristic or property of each object. For example, an object can be a text type of object, i.e. a data file containing textual data, a graphic type of object, which is another form of data file containing graphical information, or an application type, namely an executable program. If an action that results from any given drag-and-drop operation is dependent upon the first three independent factors noted previously, all of the possible forms of action can be represented in a three-dimensional matrix of dimensions n×m×m, where n is the number of types of objects in a system (typically on the order of 100 or more) and m is the number of types of receiving, or container, objects onto which any given object can be dropped (which may be on the order of 10 or more). If additional factors are involved, the number of possible results increases exponentially. [0007]
  • A typical computer user cannot reasonably be expected to remember all of these possibilities. As such, the model for drag-and-drop operations is not intuitive. Consequently, when a user performs a particular drag-and-drop operation, the resulting action may not be what was expected, or desired. For example, a user may know that the dragging of an icon from a desktop to a folder on the desktop results in the file represented by the icon being moved into that folder. However, if an icon is dragged from a window representing a removable disk to the desktop folder, the resulting action may be to make a copy of the file represented by the icon, while retaining the original version on the removable disk. The user may have intended merely to move the file from the removable disk to the desktop folder, similar to moving the icon from the desktop to the folder. Because there are two copies of the file, the user is required to go back to the removable disk and delete the original copy of the file therefrom. The need for the user to perform these extra actions, because the result of the drag-and-drop operation was not as intended, is counterproductive to the basic premise which underlies the graphical user interface, namely ease of use. [0008]
  • Accordingly, it is an objective of the present invention to provide a graphical user interface which ensures consistency of operation when objects are dragged to various destinations in windows and workspaces. [0009]
  • SUMMARY OF THE INVENTION
  • In accordance with the present invention, this objective is achieved by controlling the action of a drag-and-drop operation in dependence upon a single factor, namely whether the destination for the operation is a content object or a service object. Generally speaking, a content object is any type of object that has the capability to contain another object without manipulating its data. In contrast, a service object is one which provides a computational result on data when another object is dropped on it. If the destination of a drag-and-drop operation is a content object, the resulting action is to move the dragged object from its original location to the destination. If the destination is a service object, the resulting action is to perform the associated service on the dragged object without affecting the perceived location of the data contained in the dragged object. [0010]
  • If the user desires that a copy of an object be made when dragging it to a content object, rather than moving the object, such intention can be indicated through an appropriate action during the drag-and-drop operation. For example, the user may press a specified key on a keyboard, to indicate that the drag-and-drop operation should make a copy, rather than merely move the object. If the source of the dragged object does not permit the user to move the object, for example it is a locked disk, the user can be presented with an option to copy the object when the drag-and-drop operation is carried out. Alternatively, rather than requesting the user to indicate a choice each time such a situation occurs, the computer system can be set up to automatically make a copy if the source does not permit the object to be moved therefrom. [0011]
  • Further features of the invention, and the advantages offered thereby, are explained in detail hereinafter with reference to preferred embodiments illustrated in the accompanying drawings. [0012]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a general block diagram of an exemplary computer system of the type in which the present invention can be implemented; [0013]
  • FIGS. 2A and 2B are illustrations of a desktop in a graphical user interface; [0014]
  • FIGS. 3A and 3B are illustrations of different types of drag and drop operations; and [0015]
  • FIG. 4 is a flowchart of the operation of a user interface in accordance with the present invention.[0016]
  • DETAILED DESCRIPTION
  • To facilitate an understanding of the present invention, its underlying principles are described hereinafter with reference to their implementation in a specific embodiment. In particular, certain references are made to features and terminology associated with the Macintosh® Operating System provided by Apple Computer, Inc. It will be apparent, however, that the practical applications of the present invention are not limited to this particular embodiment. Rather, it can be utilized in any type of computer system that provides a drag-and-drop type of operation that permits users to easily manipulate objects within the system. [0017]
  • While the particular hardware components of a computer system do not form part of the invention itself, they are briefly described herein to provide a thorough understanding of the manner in which the features of the invention cooperate with various components of a computer system, to produce the desired results. Referring to FIG. 1, a typical computer system includes a [0018] computer 10 having a variety of external peripheral devices 12 connected thereto. The computer 10 includes a central processing unit 14 and associated memory. This memory generally includes a main memory which is typically implemented in the form of a random access memory 16, a nonvolatile memory that can comprise a read only memory 18, and a permanent storage device, such as a magnetic or optical disk 20. The CPU 14 communicates with each of these forms of memory through an internal bus 22. The peripheral devices 12 include a data entry device such as a keyboard 24, and a pointing or cursor control device 26 such as a mouse, trackball, pen or the like. A display device 28, such a CRT monitor or an LCD screen, provides a visual display of the information that is being processed within the computer, for example, the contents of a document being created by the user. A hard copy of this information can be provided through a printer 30, or similar such device. Each of these external peripheral devices communicates with the CPU 14 by means of one or more input/output ports 32 on the computer.
  • The present invention is particularly directed to a system which controls the manner in which the [0019] CPU 14 handles information that is manipulated by the keyboard 24 and the cursor control device 26, as well as the manner in which that manipulated information is portrayed to the user through the display device 30. An example of an interface which employs the principles of the present invention is illustrated in FIGS. 2A and 2B. These figures illustrate a desktop 34 which defines a workspace 36. Also included on the desktop is a menu bar 38. Within the workspace 36 are two windows, 40 and 42. The left-hand window 40 is a folder window which contains icons representing various objects. As shown in FIG. 2A, three icons 44 pertain to text objects, a fourth icon 45 represents a graphic object and another icon 46 represents a spreadsheet object. A sixth icon 48 is a stationary icon representing an object that can be used for the creation of presentation slides. In FIG. 2A the right-hand window 42 contains a document which includes text 50.
  • FIG. 2B illustrates the result of an operation in which the [0020] graphic icon 45 has been dragged from the folder in the left window 40 to the text document in the right window 42. As is known in interfaces which provide a desktop metaphor, such as that shown in FIGS. 2A and 2B, dragging is an operation in which objects can be moved or copied on the desktop and within windows through the actuation of the cursor control device 26. When the graphic icon is placed within the document, its contents can be displayed, as illustrated in FIG. 2B.
  • Generally speaking, an object can be dragged to a variety of different types of destinations. FIG. 3A illustrates some examples of different types of container objects that can serve as destinations for a drag-and-drop operation. Referring thereto, a [0021] window 52 contains a file 54 which the user has selected with a cursor. This file can be dragged to another window 56 on the desktop. Alternatively, it can be dragged to a folder 58, which could reside within a window or on the desktop itself. As a third alternative, the file 54 can be dragged into a text document 60 which might be displayed in another window. Each of the objects to which the file 54 is moved in the examples of FIG. 3A, namely the window 56, the folder 58 and the document 60, is a “container” object. These objects have the ability to embed objects within their contents. For example, when an object contains another object, it may include a pointer or other analogous type of reference to the location of the embedded object in the computer's memory.
  • In a preferred implementation, the present invention is incorporated in a component-software based user interface of the type disclosed in U.S. patent application Ser No. 08/175,549, filed Dec. 30, 1993. In this type of user interface, objects exist in the form of parts, where each part consists of intrinsic contents and an associated editor or handler. One of the fundamental properties of parts is that any part can function as a container for any other part, or be contained within any other part. Thus, any part can be dragged and dropped onto any other part, and become a portion of the contents of the receiving part. [0022]
  • In addition to container objects, a given object can also be dragged to a service object. Referring to FIG. 3B, the [0023] file 54 can be dragged onto an icon 62 which represents a printer. As an alternative, the file 54 can be dragged onto an icon 64 that represents a word count service. When the file is dropped onto the printer icon 62, it causes the contents of the file to be printed at a particular printer associated with the icon. When it is dropped on the word count service icon 64, an application is launched which counts the number of words in the file, and reports the results of the count to the user. Whenever either of these services is performed, the dropped object remains intact, i.e. it is not consumed by the service. Consequently, the icon 54 returns to its original state, within the window 52, after the user has dropped it onto one of the service icons 62 or 64.
  • In accordance with the present invention, the user interface provides a consistent form of action whenever the user carries out a drag-and-drop operation. The specific action that is performed is determined by the destination for the dragged object. If the destination is a container object, such as any of the examples illustrated in FIG. 3A, the dragged object is moved from its original location to the destination object. Alternatively, if the destination object is a service provider, as illustrated in FIG. 3B, the associated service is carried out with respect to the dragged object, but the perceived location of the object does not change. In other words, in the example of FIG. 3B, the [0024] icon 54 returns to its original location in the window 52. With this approach, the user is not required to remember a number of different types of actions that could result from a drag-and-drop operation. Rather, only two different actions are normally provided, namely moving the object or performing a service, and are determined solely by the nature of the destination object.
  • Of course, there may be instances when the user desires to place a copy of a selected object at the destination, and leave the original version of the object intact, rather than move it. For example, referring to FIG. 3A, the user may desire to place a copy of the [0025] file 54 in the folder 58. In this situation, the user can indicate the desire to make a copy by performing a specified action during the drag-and-drop operation. For example, the user can press a particular key on the computer keyboard, such as a shift or control key, while carrying out the drag-and-drop operation. As another example, if the cursor control device is a mouse, or the like, which has two or more buttons, one of the buttons can be designated as the “primary” button which is employed for default operations, such as selecting files and dragging icons, and one of the other buttons can be designated as a modifier button which indicates alternative operations, such as copying rather than moving an object.
  • If desired, the user interface can also provide a visual distinction between moving and copying operations. For example, during a normal drag-and-drop onto to a container object, the representation of the icon can move on the display with the cursor during the dragging operation. However, when a copying action is indicated, the image of the icon can remain in its original location, and a “ghost” or outline image of the icon can follow the cursor, to indicate that the original object is remaining intact. [0026]
  • In addition to copying, other types of modified actions may be desirable in response to a drag-and-drop operation. For example, the user may wish to create a link between two objects, or create a reference object which refers to the original object, e.g., an alias. In such a case, other modifier keys can be designated for these other types of actions. [0027]
  • In some cases, it may not be possible for the user to move an object from the source location as part of the drag-and-drop operation. For example, if a folder or disk which contains the object has been locked, the user does not normally have the option to make changes to the object. Rather, the user's capabilities may be limited to reading the object. In such a case, if the user attempts to perform a drag-and-drop operation with respect to a locked object, a warning can be displayed, to indicate that the user does not have the necessary authority to move the object. As part of the warning, the user can be provided with the option to make a copy of the object, instead of moving it. In this case, the original version of the object remains intact, so that its write-access privilege is not violated, but the user can still place a copy of the object at a desired new destination. [0028]
  • As an alternative to providing the user with an option to copy the dragged object, the user can set a system preference which automatically carries out a desired operation whenever an object cannot be moved through a drag-and-drop operation. For example, the user may set a parameter in the system which causes it to automatically copy the dragged object, or to automatically cancel the move when the user drags an object from a non-changeable source. [0029]
  • The foregoing functionality of the graphical user interface is illustrated in the flow chart of FIG. 4. Referring thereto, at step [0030] 70 a user drags one or more objects from a source location A to a destination object B. At step 72 at determination is made whether the destination object B is a service. If so, the service is performed on the dragged object(s) at step 74, and the process ends.
  • If the destination is not a service, a determination is made at [0031] step 76 whether the user has pressed a modifier key or button. If so, the appropriate modified action is carried out, e.g., a copy of the object is made and stored in the destination object B, at step 78. Otherwise, a determination is made at step 80 whether the user has write access for the source location A, i.e. whether the user is permitted to move the object from its current location. If so, the object is moved from its source location A to the destination object B, at step 82 e.g. a pointer which refers to the object is created in the destination object B and removed from the source object A. In addition, the image of the dragged object's icon is moved to the destination.
  • If a determination is made at [0032] step 80 that the user does not have write access for the source location A, an inquiry is made at step 84 whether a system preference has been established for read-only sources. If so, a determination of that preference is made at step 86. If the user has indicated that the object should be automatically copied, this action is carried out at step 78. Otherwise, the move is cancelled and the process ends. If the user has not indicated a specific preference, a dialog box can be displayed at step 88, asking the user whether he desires to copy the dragged object or cancel the move operation. If the user indicates cancel, the process ends. Otherwise, the object is copied at step 78, and the process then ends.
  • From the foregoing, it can be seen that the present invention provides a consistent action in response to a drag-and-drop operation, thereby enhancing the ease of use of the graphical user interface. The dragging action is independent of both the source of the object being dragged and the type of object being dragged. The resulting action is a binary decision that is based exclusively on whether the destination is a service object or a container object, thereby reducing the knowledge that is required of the user to successfully manipulate objects. [0033]
  • It will be appreciated by those of ordinary skill in the art that the present invention can be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The presently disclosed embodiments are considered in all respects to be illustrative, and not restrictive. The scope of the invention is indicated by the appended claims rather than the foregoing description, and all changes that come within the meaning and range of equivalents thereof are intended to be embraced therein. [0034]

Claims (12)

What is claimed is:
1. A method for manipulating objects in a graphical user interface for a computer, of the type in which representations of objects stored in a memory are displayed to a user on a display, comprising the steps of:
selecting a first object whose representation is displayed on said display;
dragging the representation of the first object from a first location on the display to a second location associated with a second object;
determining whether said second object is either a service object which performs a service that provides a computational result on data or a container object;
performing a service with respect to said first object if said second object is a service object; and
moving the representation of the first object from said first location to a new location associated with said second object if said second object is a container object.
2. The method of claim 1 further including the step of displaying the representation of the first object at said first location after said service is performed, when the second object is a service object.
3. The method of claim 1 further including the step of detecting an indication for a modified operation, and performing an operation other than moving the representation of the first object.
4. The method of claim 3 wherein said indication is the actuation of a predetermined key during said dragging step.
5. The method of claim 3 wherein said other operation comprises the steps of making a copy of the first object and displaying a representation of the copy at said new location, and displaying the representation of the first object at said first location.
6. The method of claim 3 wherein said other operation comprises the step of creating a link between said first and second objects.
7. The method of claim 1 further including the steps of detecting whether said first location limits access to said first object, and if so determining whether the first object is to be copied.
8. The method of claim 7 wherein said determining step includes the step of detecting whether a copy operation is stored as a default operation in the computer.
9. The method of claim 7 wherein said determining step includes the steps of displaying a message which permits a user to indicate a choice, and selectively copying the first object in dependence upon the choice indicated by the user.
10. The method of claim 1 wherein the representation of the first object comprises an icon.
11. A computer-readable medium containing a program which performs the steps of:
detecting the dragging of a representation of a first object from a first location on a display to a second location associated with a second object;
determining whether said second object is a service object which performs a service that provides a computational result on data;
performing a service with respect to said first object if said second object is a service object; and
moving the representation of the first object from said first location to a new location associated with said second object if said second object is not a service object.
12. A graphical user interface for a computer having a display device, comprising:
a user-controlled component for selecting and moving representations of objects displayed on said display device;
means for detecting that a representation of a first object displayed at a first location on said display device is moved to a location associated with a second object;
means for determining whether said second object is a service object which performs a service that provides a computation result on data;
means for causing said second object to perform said service on the data of said first object when said second object is determined to be a service object; and
means for moving the representation of the first object from said first location to said second location when said second object is not a service object.
US10/233,551 1995-08-07 2002-09-04 Graphical user interface providing consistent behavior for the dragging and dropping of content objects Abandoned US20030001895A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/233,551 US20030001895A1 (en) 1995-08-07 2002-09-04 Graphical user interface providing consistent behavior for the dragging and dropping of content objects

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/511,645 US6535230B1 (en) 1995-08-07 1995-08-07 Graphical user interface providing consistent behavior for the dragging and dropping of content objects
US10/233,551 US20030001895A1 (en) 1995-08-07 2002-09-04 Graphical user interface providing consistent behavior for the dragging and dropping of content objects

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US08/511,645 Continuation US6535230B1 (en) 1995-08-07 1995-08-07 Graphical user interface providing consistent behavior for the dragging and dropping of content objects

Publications (1)

Publication Number Publication Date
US20030001895A1 true US20030001895A1 (en) 2003-01-02

Family

ID=24035801

Family Applications (2)

Application Number Title Priority Date Filing Date
US08/511,645 Expired - Lifetime US6535230B1 (en) 1995-08-07 1995-08-07 Graphical user interface providing consistent behavior for the dragging and dropping of content objects
US10/233,551 Abandoned US20030001895A1 (en) 1995-08-07 2002-09-04 Graphical user interface providing consistent behavior for the dragging and dropping of content objects

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US08/511,645 Expired - Lifetime US6535230B1 (en) 1995-08-07 1995-08-07 Graphical user interface providing consistent behavior for the dragging and dropping of content objects

Country Status (1)

Country Link
US (2) US6535230B1 (en)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020008719A1 (en) * 2000-06-28 2002-01-24 Dai Miyawaki Internet database
US20030093466A1 (en) * 2001-11-15 2003-05-15 Jarman James D. Drag and drop technology for remote control tool
US6803929B2 (en) * 2001-07-05 2004-10-12 International Business Machines Corporation Method, apparatus and computer program product for moving or copying information
US20040210824A1 (en) * 1996-03-29 2004-10-21 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US20050278741A1 (en) * 1997-03-31 2005-12-15 Microsoft Corporation Query-based electronic program guide
US20050283476A1 (en) * 2003-03-27 2005-12-22 Microsoft Corporation System and method for filtering and organizing items based on common elements
US20070050726A1 (en) * 2005-08-26 2007-03-01 Masanori Wakai Information processing apparatus and processing method of drag object on the apparatus
US20070198561A1 (en) * 2006-02-10 2007-08-23 Samsung Electronics Co., Ltd. Method and apparatus for merging data objects
US20080235609A1 (en) * 2007-03-19 2008-09-25 Carraher Theodore R Function switching during drag-and-drop
US20080313568A1 (en) * 2007-06-12 2008-12-18 Samsung Electronics Co., Ltd. Digital multimedia playback apparatus and control method thereof
US20100017734A1 (en) * 2005-07-13 2010-01-21 Microsoft Corporation Rich drag drop user interface
US20110035691A1 (en) * 2009-08-04 2011-02-10 Lg Electronics Inc. Mobile terminal and icon collision controlling method thereof
US20110320746A1 (en) * 2010-06-28 2011-12-29 Nokia Corporation Handling content associated with content identifiers
WO2012001167A1 (en) * 2010-07-01 2012-01-05 Visto Corporation Method and device for editing workspace data objects
EP2410413A1 (en) * 2010-07-19 2012-01-25 Telefonaktiebolaget L M Ericsson (Publ) Method for text input, apparatus, and computer program
US20150100988A1 (en) * 2013-10-08 2015-04-09 Infopower Corporation Method of Selection and Management of Resources
EP2680119A3 (en) * 2012-06-28 2015-04-22 Orange Enhanced user interface to suspend a drag and drop operation
WO2019078961A1 (en) * 2017-10-17 2019-04-25 Microsoft Technology Licensing, Llc Drag and drop of objects to create new composites

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7607102B2 (en) * 2002-03-14 2009-10-20 Apple Inc. Dynamically changing appearances for user interface elements during drag-and-drop operations
US20040001094A1 (en) * 2002-06-28 2004-01-01 Johannes Unnewehr Automatic identification of drop zones
US20040034860A1 (en) * 2002-08-15 2004-02-19 Microsoft Corporation Dynamically extensible application program framework including message and notification routing
US7739604B1 (en) * 2002-09-25 2010-06-15 Apple Inc. Method and apparatus for managing windows
US7240292B2 (en) 2003-04-17 2007-07-03 Microsoft Corporation Virtual address bar user interface control
US7421438B2 (en) * 2004-04-29 2008-09-02 Microsoft Corporation Metadata editing control
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7409644B2 (en) 2003-05-16 2008-08-05 Microsoft Corporation File system shell
US7712034B2 (en) * 2003-03-24 2010-05-04 Microsoft Corporation System and method for shell browser
US7823077B2 (en) * 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7827561B2 (en) 2003-03-26 2010-11-02 Microsoft Corporation System and method for public consumption of communication events between arbitrary processes
US7890960B2 (en) 2003-03-26 2011-02-15 Microsoft Corporation Extensible user context system for delivery of notifications
US7587411B2 (en) 2003-03-27 2009-09-08 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7499925B2 (en) 2003-03-27 2009-03-03 Microsoft Corporation File system for displaying items of different types and from different physical locations
US7536386B2 (en) 2003-03-27 2009-05-19 Microsoft Corporation System and method for sharing items in a computer system
US7925682B2 (en) 2003-03-27 2011-04-12 Microsoft Corporation System and method utilizing virtual folders
US7526483B2 (en) 2003-03-27 2009-04-28 Microsoft Corporation System and method for virtual folder sharing including utilization of static and dynamic lists
US7650575B2 (en) 2003-03-27 2010-01-19 Microsoft Corporation Rich drag drop user interface
US20050188174A1 (en) * 2003-10-12 2005-08-25 Microsoft Corporation Extensible creation and editing of collections of objects
US8024335B2 (en) 2004-05-03 2011-09-20 Microsoft Corporation System and method for dynamically generating a selectable search extension
US7181463B2 (en) 2003-10-24 2007-02-20 Microsoft Corporation System and method for managing data using static lists
US7657846B2 (en) * 2004-04-23 2010-02-02 Microsoft Corporation System and method for displaying stack icons
US7694236B2 (en) 2004-04-23 2010-04-06 Microsoft Corporation Stack icons representing multiple objects
US7992103B2 (en) 2004-04-26 2011-08-02 Microsoft Corporation Scaling icons for representing files
US20050240878A1 (en) * 2004-04-26 2005-10-27 Microsoft Corporation System and method for scaling icons
US8707209B2 (en) * 2004-04-29 2014-04-22 Microsoft Corporation Save preview representation of files being created
US7496583B2 (en) * 2004-04-30 2009-02-24 Microsoft Corporation Property tree for metadata navigation and assignment
US8108430B2 (en) 2004-04-30 2012-01-31 Microsoft Corporation Carousel control for metadata navigation and assignment
JP2005346202A (en) * 2004-05-31 2005-12-15 Toshiba Corp Electronic apparatus
KR100601696B1 (en) * 2004-07-27 2006-07-14 삼성전자주식회사 Method and apparatus for processing image file directly
US10216372B1 (en) * 2004-12-06 2019-02-26 The Mathworks, Inc. Automatic import to a graphical model
US7383503B2 (en) * 2005-02-23 2008-06-03 Microsoft Corporation Filtering a collection of items
US8490015B2 (en) 2005-04-15 2013-07-16 Microsoft Corporation Task dialog and programming interface for same
US8522154B2 (en) * 2005-04-22 2013-08-27 Microsoft Corporation Scenario specialization of file browser
US8195646B2 (en) 2005-04-22 2012-06-05 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US20060242591A1 (en) * 2005-04-22 2006-10-26 Microsoft Corporation File dialog user interfaces and creation of same
US7996789B2 (en) * 2006-08-04 2011-08-09 Apple Inc. Methods and apparatuses to control application programs
US8006183B1 (en) * 2006-12-08 2011-08-23 Trading Technologies International Inc. System and method for using a curser to convey information
US8351713B2 (en) * 2007-02-20 2013-01-08 Microsoft Corporation Drag-and-drop pasting for seamless image composition
US20090177986A1 (en) * 2008-01-07 2009-07-09 Microsoft Corporation Third party in-page application platform
JP2009181321A (en) * 2008-01-30 2009-08-13 Sony Corp Display device, display method, and program
JP5322660B2 (en) * 2009-01-07 2013-10-23 キヤノン株式会社 Data display device, data display method, and computer program
CH703725A1 (en) * 2010-09-15 2012-03-15 Ferag Ag Computer-implemented graphical user interface for e.g. input of data for operating e.g. industrial production systems, has output and target widgets and content windows coupled with each other
WO2012034245A1 (en) 2010-09-15 2012-03-22 Ferag Ag Graphical user interface
CN103092487A (en) * 2011-10-27 2013-05-08 腾讯科技(深圳)有限公司 Method and device for uploading and downloading files
US20140108982A1 (en) * 2012-10-11 2014-04-17 Microsoft Corporation Object placement within interface
US9117199B2 (en) * 2012-11-13 2015-08-25 Sap Se Conversation graphical user interface (GUI)
CN103838489A (en) * 2012-11-27 2014-06-04 联想(北京)有限公司 Display method and electronic equipment
US10025378B2 (en) * 2013-06-25 2018-07-17 Microsoft Technology Licensing, Llc Selecting user interface elements via position signal
TWI598808B (en) * 2013-06-26 2017-09-11 宏碁股份有限公司 Electronic apparatus controlling method and electronic apparatus
US9612732B2 (en) * 2014-11-13 2017-04-04 Microsoft Technology Licensing, Llc Content transfer to non-running targets
US10101880B2 (en) * 2015-11-17 2018-10-16 Sap Se Tools on-demand

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428736A (en) * 1991-11-15 1995-06-27 International Business Machines Corporation Method and apparatus for entering and editing data of a data icon in an enlarged and minimized size
US5530865A (en) * 1993-03-03 1996-06-25 Apple Computer, Inc. Method and apparatus for improved application program switching on a computer-controlled display system
US5544302A (en) * 1993-06-03 1996-08-06 Taligent, Inc. Object-oriented framework for creating and using container objects with built-in properties
US5598524A (en) * 1993-03-03 1997-01-28 Apple Computer, Inc. Method and apparatus for improved manipulation of data between an application program and the files system on a computer-controlled display system
US5621878A (en) * 1993-03-03 1997-04-15 Apple Computer, Inc. Method and apparatus or manipulating data from a suspended application program on a computer-controlled display system
US5625818A (en) * 1994-09-30 1997-04-29 Apple Computer, Inc. System for managing local database updates published to different online information services in different formats from a central platform
US5630080A (en) * 1991-11-19 1997-05-13 Microsoft Corporation Method and system for the direct manipulation of information, including non-default drag and drop operation
US5638505A (en) * 1991-08-16 1997-06-10 Sun Microsystems, Inc. Apparatus and methods for moving/copying objects using destination and/or source bins
US5684984A (en) * 1994-09-29 1997-11-04 Apple Computer, Inc. Synchronization and replication of object databases
US5689664A (en) * 1995-04-14 1997-11-18 Microsoft Corporation Interface sharing between objects
US5694563A (en) * 1994-12-13 1997-12-02 Microsoft Corporation Method and system for transferring data to common destinations using a common destination list
US5696915A (en) * 1993-03-03 1997-12-09 Apple Computer, Inc. Method and apparatus for linking routines for different contexts
US5706454A (en) * 1995-04-26 1998-01-06 International Business Machines Corporation Changeable live icon with visual state indicator option
US5742284A (en) * 1990-07-31 1998-04-21 Hewlett-Packard Company Object based system comprising weak links
US5754178A (en) * 1993-03-03 1998-05-19 Apple Computer, Inc. Method and apparatus for improved feedback during manipulation of data on a computer controlled display system
US5982350A (en) * 1991-10-07 1999-11-09 Eastman Kodak Company Compositer interface for arranging the components of special effects for a motion picture production
US6061058A (en) * 1993-03-03 2000-05-09 Apple Computer, Inc. Method and apparatus for transferring data by type according to data types available

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742284A (en) * 1990-07-31 1998-04-21 Hewlett-Packard Company Object based system comprising weak links
US5638505A (en) * 1991-08-16 1997-06-10 Sun Microsystems, Inc. Apparatus and methods for moving/copying objects using destination and/or source bins
US5982350A (en) * 1991-10-07 1999-11-09 Eastman Kodak Company Compositer interface for arranging the components of special effects for a motion picture production
US5428736A (en) * 1991-11-15 1995-06-27 International Business Machines Corporation Method and apparatus for entering and editing data of a data icon in an enlarged and minimized size
US5630080A (en) * 1991-11-19 1997-05-13 Microsoft Corporation Method and system for the direct manipulation of information, including non-default drag and drop operation
US5867144A (en) * 1991-11-19 1999-02-02 Microsoft Corporation Method and system for the direct manipulation of information, including non-default drag and drop operation
US6061058A (en) * 1993-03-03 2000-05-09 Apple Computer, Inc. Method and apparatus for transferring data by type according to data types available
US5621878A (en) * 1993-03-03 1997-04-15 Apple Computer, Inc. Method and apparatus or manipulating data from a suspended application program on a computer-controlled display system
US5598524A (en) * 1993-03-03 1997-01-28 Apple Computer, Inc. Method and apparatus for improved manipulation of data between an application program and the files system on a computer-controlled display system
US5530865A (en) * 1993-03-03 1996-06-25 Apple Computer, Inc. Method and apparatus for improved application program switching on a computer-controlled display system
US5696915A (en) * 1993-03-03 1997-12-09 Apple Computer, Inc. Method and apparatus for linking routines for different contexts
US5754178A (en) * 1993-03-03 1998-05-19 Apple Computer, Inc. Method and apparatus for improved feedback during manipulation of data on a computer controlled display system
US5544302A (en) * 1993-06-03 1996-08-06 Taligent, Inc. Object-oriented framework for creating and using container objects with built-in properties
US5684984A (en) * 1994-09-29 1997-11-04 Apple Computer, Inc. Synchronization and replication of object databases
US5625818A (en) * 1994-09-30 1997-04-29 Apple Computer, Inc. System for managing local database updates published to different online information services in different formats from a central platform
US5694563A (en) * 1994-12-13 1997-12-02 Microsoft Corporation Method and system for transferring data to common destinations using a common destination list
US5689664A (en) * 1995-04-14 1997-11-18 Microsoft Corporation Interface sharing between objects
US5706454A (en) * 1995-04-26 1998-01-06 International Business Machines Corporation Changeable live icon with visual state indicator option

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040210824A1 (en) * 1996-03-29 2004-10-21 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US8108899B2 (en) 1996-03-29 2012-01-31 Microsoft Corporation Interactive entertainment system for presenting supplemental interactive content together with continuous video programs
US20050278741A1 (en) * 1997-03-31 2005-12-15 Microsoft Corporation Query-based electronic program guide
US8051450B2 (en) * 1997-03-31 2011-11-01 Microsoft Corporation Query-based electronic program guide
US20020008719A1 (en) * 2000-06-28 2002-01-24 Dai Miyawaki Internet database
US6803929B2 (en) * 2001-07-05 2004-10-12 International Business Machines Corporation Method, apparatus and computer program product for moving or copying information
US20030093466A1 (en) * 2001-11-15 2003-05-15 Jarman James D. Drag and drop technology for remote control tool
US9361312B2 (en) 2003-03-27 2016-06-07 Microsoft Technology Licensing, Llc System and method for filtering and organizing items based on metadata
US20050283476A1 (en) * 2003-03-27 2005-12-22 Microsoft Corporation System and method for filtering and organizing items based on common elements
US9361313B2 (en) 2003-03-27 2016-06-07 Microsoft Technology Licensing, Llc System and method for filtering and organizing items based on common elements
US10489044B2 (en) 2005-07-13 2019-11-26 Microsoft Technology Licensing, Llc Rich drag drop user interface
US20100017734A1 (en) * 2005-07-13 2010-01-21 Microsoft Corporation Rich drag drop user interface
US9354800B2 (en) * 2005-07-13 2016-05-31 Microsoft Technology Licensing, Llc Rich drag drop user interface
US20070050726A1 (en) * 2005-08-26 2007-03-01 Masanori Wakai Information processing apparatus and processing method of drag object on the apparatus
US20070198561A1 (en) * 2006-02-10 2007-08-23 Samsung Electronics Co., Ltd. Method and apparatus for merging data objects
US20080235609A1 (en) * 2007-03-19 2008-09-25 Carraher Theodore R Function switching during drag-and-drop
US20080313568A1 (en) * 2007-06-12 2008-12-18 Samsung Electronics Co., Ltd. Digital multimedia playback apparatus and control method thereof
US20120140102A1 (en) * 2007-06-12 2012-06-07 Samsung Electronics Co., Ltd. Digital multimedia playback apparatus and control method thereof
US8793606B2 (en) 2009-08-04 2014-07-29 Lg Electronics Inc. Mobile terminal and icon collision controlling method thereof
US20110035691A1 (en) * 2009-08-04 2011-02-10 Lg Electronics Inc. Mobile terminal and icon collision controlling method thereof
EP2284674A3 (en) * 2009-08-04 2011-04-06 LG Electronics Mobile terminal and icon collision controlling method thereof
US9928309B2 (en) * 2010-06-28 2018-03-27 Nokia Technologies Oy Handling content associated with content identifiers
US20110320746A1 (en) * 2010-06-28 2011-12-29 Nokia Corporation Handling content associated with content identifiers
WO2012001167A1 (en) * 2010-07-01 2012-01-05 Visto Corporation Method and device for editing workspace data objects
US9558476B2 (en) 2010-07-01 2017-01-31 Good Technology Holdings Limited Method and device for editing workspace data objects
CN103109256A (en) * 2010-07-19 2013-05-15 瑞典爱立信有限公司 Method for text input, apparatus, and computer program
EP2410413A1 (en) * 2010-07-19 2012-01-25 Telefonaktiebolaget L M Ericsson (Publ) Method for text input, apparatus, and computer program
US10235023B2 (en) 2010-07-19 2019-03-19 Telefonaktiebolaget Lm Ericsson (Publ) Method for text input, apparatus, and computer program
WO2012010535A1 (en) * 2010-07-19 2012-01-26 Telefonaktiebolaget L M Ericsson (Publ) Method for text input, apparatus, and computer program
EP2680119A3 (en) * 2012-06-28 2015-04-22 Orange Enhanced user interface to suspend a drag and drop operation
US20150100988A1 (en) * 2013-10-08 2015-04-09 Infopower Corporation Method of Selection and Management of Resources
WO2019078961A1 (en) * 2017-10-17 2019-04-25 Microsoft Technology Licensing, Llc Drag and drop of objects to create new composites
US10592091B2 (en) 2017-10-17 2020-03-17 Microsoft Technology Licensing, Llc Drag and drop of objects to create new composites

Also Published As

Publication number Publication date
US6535230B1 (en) 2003-03-18

Similar Documents

Publication Publication Date Title
US6535230B1 (en) Graphical user interface providing consistent behavior for the dragging and dropping of content objects
US7600197B2 (en) Graphical user interface having contextual menus
US5140677A (en) Computer user interface with window title bar mini-icons
US8316321B2 (en) Dynamically changing appearances for user interface elements during drag-and-drop operations
US9910569B2 (en) Address bar user interface control
US7559033B2 (en) Method and system for improving selection capability for user interface
US5801693A (en) "Clear" extension to a paste command for a clipboard function in a computer system
US6606101B1 (en) Information pointers
US5781192A (en) Data transfer system
US6452607B1 (en) Context sensitive user interface help feature
US5630080A (en) Method and system for the direct manipulation of information, including non-default drag and drop operation
US6330007B1 (en) Graphical user interface (GUI) prototyping and specification tool
US8707209B2 (en) Save preview representation of files being created
US5500936A (en) Multi-media slide presentation system with a moveable, tracked popup menu with button and title bars
US5847707A (en) Icon menu display devices and methods
US5621875A (en) Method and system for automatic formatting of user selected text
US20030222915A1 (en) Data processor controlled display system with drag and drop movement of displayed items from source to destination screen positions and interactive modification of dragged items during the movement
US20010018715A1 (en) Method and apparatus for improved interaction with an application program according to data types and actions performed by the application program
US5896491A (en) System and method for executing functions associated with function icons
US20100313198A1 (en) User interface for assisting in the installation of an asset
Jelen Microsoft Excel 2010 in depth
EP4254153A1 (en) Information processing system, information processing method, and program
JPH0876953A (en) Data processing system
EP0452692B1 (en) Conditional look ahead valid option determination
JP3471224B2 (en) File operating device, file operating method, and recording medium recording file operating program

Legal Events

Date Code Title Description
AS Assignment

Owner name: APPLE INC.,CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:APPLE COMPUTER, INC.;REEL/FRAME:019235/0583

Effective date: 20070109

Owner name: APPLE INC., CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:APPLE COMPUTER, INC.;REEL/FRAME:019235/0583

Effective date: 20070109

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION