WO1996035163A1 - Systems and methods for positioning a drawer title bar on a graphical user interface - Google Patents

Systems and methods for positioning a drawer title bar on a graphical user interface Download PDF

Info

Publication number
WO1996035163A1
WO1996035163A1 PCT/US1996/006309 US9606309W WO9635163A1 WO 1996035163 A1 WO1996035163 A1 WO 1996035163A1 US 9606309 W US9606309 W US 9606309W WO 9635163 A1 WO9635163 A1 WO 9635163A1
Authority
WO
WIPO (PCT)
Prior art keywords
space
edge
display
user interface
graphical user
Prior art date
Application number
PCT/US1996/006309
Other languages
French (fr)
Inventor
Max Mcfarland
Original Assignee
Apple Computer, Inc.
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 Apple Computer, Inc. filed Critical Apple Computer, Inc.
Priority to AU57268/96A priority Critical patent/AU5726896A/en
Priority to EP96915507A priority patent/EP0769168B1/en
Priority to DE69622492T priority patent/DE69622492T2/en
Publication of WO1996035163A1 publication Critical patent/WO1996035163A1/en

Links

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/0481Interaction 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

Definitions

  • the present invention relates generally to graphical user interfaces for computer systems. More particularly, the present invention relates to methods and systems for placing and sizing title bars on graphical user interfaces.
  • GUI graphical user interface
  • GUI is based on a visual metaphor which uses a monitor screen as a work surface called a "desktop” where documents are presented in relocatable regions termed “windows".
  • the user interacts with the computer by, for example, moving objects on the desktop, choosing commands from menus, and manipulating window controls, such as checkboxes and scroll bars.
  • An exemplary desktop screen is reproduced as Figure 1.
  • Windows, filing cabinets, folders and documents are several examples of conventional desktop objects.
  • a new desktop object called a "drawer" has been introduced, an example of which is shown in Figure 2.
  • the drawer 8 shown in Figure 2 is depicted in its opened state wherein the window extends from an edge 10 of the display space.
  • drawer 8 has a title bar 12.
  • the drawer 8 In its closed state, the drawer 8 might appear as illustrated in Figure 3.
  • the title bar 12 appears above the display space edge 10 while the rest of the drawer 8 is hidden from view.
  • many issues arise as to how, for example, the title bars 12 are to be drawn along the display space edge 10.
  • a user can create a drawer at an edge of a display space by dragging an object to a desired location using a pointing device.
  • Graphical user interfaces according to the present invention determine if, where and how to draw a title bar based upon the desired location relative to the placement of existing drawers along that edge of the display space.
  • drawers can be created and title bars placed on an edge of a display space without the provision of position information by a user.
  • Graphical user interfaces according to these exemplary embodiments first attempt to place a full length title bar along the edge of the display space. If no full length spaces are available between title bars of already existing drawers, then a compressed version of the title bar can be drawn in a largest available space.
  • Figure 1 shows a conventional desktop screen
  • Figure 2 illustrates an exemplary drawer object in its opened state
  • Figure 3 illustrates the drawer object of Figure 2 in its closed state
  • Figure 4(a) illustrates an exemplary computer system which can be used to implement the present invention
  • Figure 4(b) is a block diagram illustrating various exemplary functional units of the computer system of Figure 4(a);
  • Figure 5 depicts dragging a window toward an edge of a display space to place the window as a drawer
  • Figures 6(a) and 6(b) are used to describe placement of a title bar of a drawer between two existing title bars;
  • Figure 7 is a flowchart describing a technique for positioning a drawer title bar according to an exemplary embodiment of the present invention.
  • Figure 8 is a flowchart illustrating another technique for positioning a drawer title bar according to another exemplary embodiment of the present invention.
  • FIG. 4(a) a block diagram of Figure 4(b)
  • FIG. 4(b) a block diagram of Figure 4(b)
  • FIG. 4(b) a block diagram of Figure 4(b)
  • FIG. 4(b) a block diagram of Figure 4(b)
  • FIG. 4(b) a block diagram of Figure 4(b)
  • FIG. 4(b) a block diagram of Figure 4(b)
  • FIG. 4(b) illustrates the block diagram of Figure 4(b)
  • RAM 30, ROM 32, processor 34, and I/O 36 are all interconnected via system bus 38.
  • FIG. 4(a) is simply an example of one type of computer system in which graphical user interfaces according to the present invention may be implemented.
  • the display space 24 of the system depicted in Figure 4(a) consists of that provided by monitor 22, those skilled in the art will recognize that additional display devices could be arranged proximate monitor 22 to create a display space bridging several monitors.
  • additional display devices could be arranged proximate monitor 22 to create a display space bridging several monitors.
  • drawer objects can be created and drawn in a display space in one of two ways. The first technique is initiated by dragging a window object to an edge of a display space at which a drawer can legally be created in its closed state.
  • the bottom edge and both side edges may be available for drawer creation with the top edge being reserved for a status for menu bar. If a second monitor was disposed to the right of monitor 22 and configured to become part of the display space for personal computer 16, then the right edge of display 24 might no longer be a valid area for the creation of a drawer.
  • the outline of that window changes to become the outline of a drawer when the pointer reaches a position within a certain number of pixels of that edge.
  • the shaded region 28 graphically represents the region within which the graphical user interface will interpret a completed drag to be a request to transform window 26 into a drawer object.
  • the number of pixels can be selected to be equal to the height of title bar 12, for example, 23 pixels from the display space edge 10.
  • a drawer will be created if the drag ends while the drawer outline is still seen on the display, e.g., if the user releases the pointer while in the shaded region of Figure 5.
  • the operation of graphical user interfaces according to this exemplary embodiment of the present invention can handle a variety of cases which may be presented when the user drags and releases a window in the active region proximate the edge of a display space.
  • a drawer is not created if the pointer is disposed over a title bar 12 of an existing drawer when the pointer is released. If this occurs, the user can be alerted that no drawer can be created at the desired location and the window which was dragged toward the edge of the display space will return to its original, pre-drag position.
  • exemplary embodiments of the present invention handle drawer placement differently depending on the size of the space in which the user wishes to place a drawer.
  • the space may be too small for a drawer, may be large enough for a drawer but not large enough for a full length title bar 12, or may be large enough for both a drawer and for a full length title bar 12. 5
  • the space may be too small for a drawer, may be large enough for a drawer but not large enough for a full length title bar 12, or may be large enough for both a drawer and for a full length title bar 12. 5
  • Figure 6(a) shows the case where a user has dragged a window to the position indicated by the dotted outline of the title bar 30 and the cursor arrow 32.
  • the space chosen by the user for placement of the drawer i.e., that 0 having dimension Y, is smaller than the full length 't' of the title bar 30. If Y is less than some predetermined threshold, for example 27 pixels, the outline 30 zooms back to the original, pre-drag window location and no drawer is created in much the same way as if the user had placed the cursor 32 directly over a title bar of an existing drawer on display space edge 10.
  • the 5 measurements of open spaces between existing drawer title bars can be performed using stored coordinate values which identify the position of existing title bar objects on an edge of a display.
  • a data structure can be created which stores coordinates identifying positions of the left and /or right corners of 0 existing title bar objects. Coordinates of adjacent title bar objects can be used in various ways apparent to those skilled in the art to arrive at the dimension 'x' of any open space on an edge of a display.
  • dimension Y is greater than whatever predetermined threshold has been selected, but still less than the 5 length necessary to place the full length 't' of the title bar 30 in the space selected by the user.
  • Exemplary interfaces according to the present invention will center the title bar 30 in the space selected by the user and compress it to fit within the space pointed to by the cursor 32 having dimension Y.
  • the title bar 30 may be compressed to a size which is 'x' minus four 0 pixels in length leaving a two pixel gap to either side of the compressed title bar 30 drawn on the display. The gaps provide a visual separation of adjacent title bars.
  • the first drawer to the left of the cursor's location is identified at step 42. Then the process goes through a series of decision steps in order to determine if the cursor has been placed at a location at which creation of a drawer is permissible.
  • the length of the space pointed to by the cursor is compared with a minimum length for drawing the title bar. If not, then the flow proceeds to block 46 where the outline of the drawer zooms back to its original window location. Otherwise, the process then checks to see if the cursor location is disposed on an existing title bar at decision block 48. If so, then the flow also proceeds to block 46 where the potential drawer zooms back to its original window location. Otherwise, the flow continues to block 50 wherein it is ascertained whether or not the cursor position is otherwise a legal position for drawer placement. For example, it may be desirable to not allow drawers to overlap between devices. Similarly, if multiple devices support the display space, then some edges of each device which normally would support drawer placement may not support drawers in a multiple device environment.
  • the space indicated by the pointer is evaluated as described above with respect to Figure 6(a) to determine if the drawer title bar needs to be compressed and/or simply shifted to the left or right of an existing title bar.
  • the title bar is then drawn on the display at the appropriate length and centering.
  • user indication of a preferred location for a drawer along an edge of a display space is not necessary.
  • the user indicates that an object, e.g., an open folder window, should be changed into a drawer object. This can be accomplished, for example, by using a menu command which turns an active window into a drawer. Since the user has not indicated a preferred location for the extended portion of the title bar of the drawer, this exemplary embodiment attempts to place the drawer at the first available location that is large enough to draw a full length version of the extended portion of the title bar starting at a bottom lefthand corner of the display space.
  • the user interface examines each space between existing drawers (if any) from left to right until a space is found which is large enough to accept a full length extended portion of the title bar for the drawer to be created. During this traversal of the display space edge, each space which is less than a full length is measured and the location of the largest space less than a full length is stored. In this way, if the right corner of the device is reached without having identified a space which will accept a full length extended portion of the title bar, then the drawer is placed at the location of the stored largest space and the extended portion 14 is compressed as described above.
  • the space between the corner of the device and the nearest existing title bar is measured at block 54.
  • the flow then proceeds to block 56 wherein this measured space is compared with the full length of the title bar to be drawn. If the space is large enough to draw the full length title bar, then the flow proceeds to block 58 wherein the drawer is placed and the title bar portion appears on the display. For example, if there are no existing drawers on the display device, then the space X will be measured to be the length of the display device and the graphical user interface will draw the title bar at its full length beginning in the lefthand corner of the display device.
  • the flow proceeds to block 60 wherein the length of the space X is compared with the largest space measured thus far. For the first iteration, the space X will inherently be the largest measured and thus the flow will move to block 62 where the identity of this space is stored as the largest measured space which is not sufficient to draw a full length title bar. For subsequent iterations (if any), however, the identity of this space will only be stored if it is larger than the currently stored, largest, measured space. Next, the flow will proceed to block 64 wherein it is determined whether the right end of the device has been reached.
  • the present invention is described herein by way of exemplary, illustrative embodiments, some of which refer to graphical user interfaces implemented using the Macintosh® computer system as a reference for explaining the present invention. Those wishing additional information with respect to the Macintosh® system are referred to Inside Macintosh, Vols. 1-6. However, those skilled in the art will readily appreciate that systems and methods according to the present invention can be applied to any type of display system having a user interface. Further, while window objects are used to illustrate how exemplary embodiments of the present invention effect the placement, sizing and drawing of drawer objects and drawer title bars, those skilled in the art will recognize that the present invention can be used to control the appearance and of drawer objects created in any manner and from any type of container object. Moreover, the principles of the present invention can be applied to any type of object being placed upon the edge of a display and is not limited to title bars, generally, or drawer title bars, specifically.

Abstract

Systems and methods provide a user with increased flexibility and control over the appearance of objects on a user interface. Drawer objects can be created in at least two different ways. A graphical user interface can automatically place and size an extended portion of a drawer title bar when an active window is selected for conversion into a drawer. Alternatively, a user can drag a window toward an edge of a display space where a drawer will be created. Sizing and placement of the extended portion of the drawer title bar are accomplished according to various rules described herein.

Description

SYSTEMS AND METHODS FOR POSITIONING A DRAWER TITLE BAR ON A GRAPHICAL USER INTERFACE
BACKGROUND The present invention relates generally to graphical user interfaces for computer systems. More particularly, the present invention relates to methods and systems for placing and sizing title bars on graphical user interfaces.
The evolution of the computer industry is arguably unparalleled in its rate of growth and complexity. Personal computers, for example, which began as little more than feeble calculators with limited memory, tape-driven input and monochrome displays are now able to tackle almost any data processing task. While this meteoric increase in power was almost sufficient to satisfy the demand of application programmers and end users alike, the corresponding increase in complexity created an ease-of-use problem which the industry was somewhat slower in solving. Thus, designers were faced with a new challenge: to harness this computing power in a form usable by even those with relatively little computer training to smooth the transition of other industries into a computer-based information paradigm.
As a result, in the early to mid-1980's many new I/O philosophies, such as "user friendly", "WYSIWYG" and "menu driven" came to the forefront of the industry. These concepts 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 previously feared and mistrusted computers. An important aspect of computers which employ these concepts was, and continues to be, the interface which allows the user to input commands and data and receive results, which is commonly referred to as a graphical user interface (GUI).
One type of GUI is based on a visual metaphor which uses a monitor screen as a work surface called a "desktop" where documents are presented in relocatable regions termed "windows". The user interacts with the computer by, for example, moving objects on the desktop, choosing commands from menus, and manipulating window controls, such as checkboxes and scroll bars. An exemplary desktop screen is reproduced as Figure 1.
The success of this type of interface is evident from the number of companies which have emulated the desktop environment. Even successful concepts, however, must continually be improved in order to keep pace with the rapid growth in this industry. The advent of multimedia, especially CD- ROM devices, has provided vast quantities of secondary storage which have been used to provide video capabilities, e.g., live animation and video clips, as regular components of application displays. With these new resources at their disposal, application designers, and others, desire more and more control over the appearance of the display, including the desktop environment and, in particular, objects on the desktop.
Windows, filing cabinets, folders and documents are several examples of conventional desktop objects. As a further extension of the desktop visual metaphor, a new desktop object called a "drawer" has been introduced, an example of which is shown in Figure 2. The drawer 8 shown in Figure 2 is depicted in its opened state wherein the window extends from an edge 10 of the display space. Note that drawer 8 has a title bar 12. In its closed state, the drawer 8 might appear as illustrated in Figure 3. Therein, note that the title bar 12 appears above the display space edge 10 while the rest of the drawer 8 is hidden from view. As a user creates and closes multiple drawers, many issues arise as to how, for example, the title bars 12 are to be drawn along the display space edge 10.
SUMMARY
These and other concerns and issues regarding the placement, sizing and drawing of drawer objects on a display are resolved according to exemplary embodiments of the present invention. For example, according to an exemplary embodiment of the present invention, a user can create a drawer at an edge of a display space by dragging an object to a desired location using a pointing device. Graphical user interfaces according to the present invention determine if, where and how to draw a title bar based upon the desired location relative to the placement of existing drawers along that edge of the display space.
According to other exemplary embodiments, drawers can be created and title bars placed on an edge of a display space without the provision of position information by a user. Graphical user interfaces according to these exemplary embodiments first attempt to place a full length title bar along the edge of the display space. If no full length spaces are available between title bars of already existing drawers, then a compressed version of the title bar can be drawn in a largest available space. BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing, and other, objects, features and advantages of the present invention will be more readily understood by those skilled in the art upon reading the following detailed description in conjunction with the drawings in which:
Figure 1 shows a conventional desktop screen;
Figure 2 illustrates an exemplary drawer object in its opened state;
Figure 3 illustrates the drawer object of Figure 2 in its closed state;
Figure 4(a) illustrates an exemplary computer system which can be used to implement the present invention;
Figure 4(b) is a block diagram illustrating various exemplary functional units of the computer system of Figure 4(a);
Figure 5 depicts dragging a window toward an edge of a display space to place the window as a drawer; Figures 6(a) and 6(b) are used to describe placement of a title bar of a drawer between two existing title bars;
Figure 7 is a flowchart describing a technique for positioning a drawer title bar according to an exemplary embodiment of the present invention; and
Figure 8 is a flowchart illustrating another technique for positioning a drawer title bar according to another exemplary embodiment of the present invention.
DETAILED DESCRIPTION
Exemplary embodiments of the present invention will be described in terms of various visual aspects created or drawn in a display space controlled by a graphical user interface. Those skilled in the art will appreciate that such an interface can, for example, be used in conjunction with a computer such as that illustrated in Figure 4(a). Therein, a personal computer is illustrated as having a box 16 which contains, among other elements, circuit boards associated with the computer's functions, a keyboard 18, a pointing device 20 and a monitor 22 having a display space 24. The circuit boards included in box 16 can include boards which accomodate functional units such as those illustrated by the block diagram of Figure 4(b). Therein RAM 30, ROM 32, processor 34, and I/O 36 are all interconnected via system bus 38. Of course the personal computer illustrated in Figure 4(a) is simply an example of one type of computer system in which graphical user interfaces according to the present invention may be implemented. For example, although the display space 24 of the system depicted in Figure 4(a) consists of that provided by monitor 22, those skilled in the art will recognize that additional display devices could be arranged proximate monitor 22 to create a display space bridging several monitors. Returning now to the discussion of drawer objects, according to exemplary embodiments of the present invention a drawer can be created and drawn in a display space in one of two ways. The first technique is initiated by dragging a window object to an edge of a display space at which a drawer can legally be created in its closed state. For example, in the display space 24 of the system shown in Figure 4(a), the bottom edge and both side edges may be available for drawer creation with the top edge being reserved for a status for menu bar. If a second monitor was disposed to the right of monitor 22 and configured to become part of the display space for personal computer 16, then the right edge of display 24 might no longer be a valid area for the creation of a drawer.
In any event, as a user drags a window toward an edge of a display space, the outline of that window changes to become the outline of a drawer when the pointer reaches a position within a certain number of pixels of that edge. This is illustrated in Figure 5 where window 26 is dragged down to the cursor position (indicated by the arrow) to become outline 27. Therein, the shaded region 28 graphically represents the region within which the graphical user interface will interpret a completed drag to be a request to transform window 26 into a drawer object. The number of pixels can be selected to be equal to the height of title bar 12, for example, 23 pixels from the display space edge 10. A drawer will be created if the drag ends while the drawer outline is still seen on the display, e.g., if the user releases the pointer while in the shaded region of Figure 5. The operation of graphical user interfaces according to this exemplary embodiment of the present invention can handle a variety of cases which may be presented when the user drags and releases a window in the active region proximate the edge of a display space.
For example, a drawer is not created if the pointer is disposed over a title bar 12 of an existing drawer when the pointer is released. If this occurs, the user can be alerted that no drawer can be created at the desired location and the window which was dragged toward the edge of the display space will return to its original, pre-drag position.
In addition to not allowing the placement of drawers on. top of one another, exemplary embodiments of the present invention handle drawer placement differently depending on the size of the space in which the user wishes to place a drawer. For example, the space may be too small for a drawer, may be large enough for a drawer but not large enough for a full length title bar 12, or may be large enough for both a drawer and for a full length title bar 12. 5 Each of these cases will be described below with reference to Figures 6(a) and
• 6(b).
Figure 6(a) shows the case where a user has dragged a window to the position indicated by the dotted outline of the title bar 30 and the cursor arrow 32. Note that the space chosen by the user for placement of the drawer, i.e., that 0 having dimension Y, is smaller than the full length 't' of the title bar 30. If Y is less than some predetermined threshold, for example 27 pixels, the outline 30 zooms back to the original, pre-drag window location and no drawer is created in much the same way as if the user had placed the cursor 32 directly over a title bar of an existing drawer on display space edge 10. The 5 measurements of open spaces between existing drawer title bars (or between an existing drawer title bar and an end of the display) can be performed using stored coordinate values which identify the position of existing title bar objects on an edge of a display. For example, a data structure can be created which stores coordinates identifying positions of the left and /or right corners of 0 existing title bar objects. Coordinates of adjacent title bar objects can be used in various ways apparent to those skilled in the art to arrive at the dimension 'x' of any open space on an edge of a display.
In this case, however, suppose that dimension Y is greater than whatever predetermined threshold has been selected, but still less than the 5 length necessary to place the full length 't' of the title bar 30 in the space selected by the user. Exemplary interfaces according to the present invention will center the title bar 30 in the space selected by the user and compress it to fit within the space pointed to by the cursor 32 having dimension Y. For example, the title bar 30 may be compressed to a size which is 'x' minus four 0 pixels in length leaving a two pixel gap to either side of the compressed title bar 30 drawn on the display. The gaps provide a visual separation of adjacent title bars. This case is depicted in Figure 6(b) where the title bar 34 actually drawn on the display at edge 10 is a compressed version of the outline 30 in Figure 6(a) from which it originated. 5 A third situation, not illustrated in the Figures, occurs when the dimension Y of the space selected by the user is sufficient to draw the entire title bar 30. In such a case, the full length title bar will then be drawn either (1) centered about the cursor position or, if a centered version of the title bar would overlap with existing title bars, then (2) drawing an edge of the title bar 30 proximate a nearest existing title bar. For example, in Figure 6(a), assuming now that the dimension 'x' was sufficient to draw a full length title bar 30, then that title bar would be drawn by the graphical user interface to appear with a left edge proximate the right edge of the "Clippings" drawer since the cursor 32 was released closer to this drawer than the "App Aliases" drawer.
Having described various principles for title bar placement and drawing according to an exemplary embodiment of the present invention, these principles will now be brought together in the exemplary method described in the flowchart of Figure 7. First, at block 40, a determination is made as to which physical device is handling the display space location at which the user has indicated a desired placement of a drawer. Of course, this step need not be performed for display spaces which are handled by only one device. Next, if there are existing drawers drawn on this device, the first drawer to the left of the cursor's location is identified at step 42. Then the process goes through a series of decision steps in order to determine if the cursor has been placed at a location at which creation of a drawer is permissible. For example, at block 44 the length of the space pointed to by the cursor is compared with a minimum length for drawing the title bar. If not, then the flow proceeds to block 46 where the outline of the drawer zooms back to its original window location. Otherwise, the process then checks to see if the cursor location is disposed on an existing title bar at decision block 48. If so, then the flow also proceeds to block 46 where the potential drawer zooms back to its original window location. Otherwise, the flow continues to block 50 wherein it is ascertained whether or not the cursor position is otherwise a legal position for drawer placement. For example, it may be desirable to not allow drawers to overlap between devices. Similarly, if multiple devices support the display space, then some edges of each device which normally would support drawer placement may not support drawers in a multiple device environment. If the region is appropriate for drawer placement, then the space indicated by the pointer is evaluated as described above with respect to Figure 6(a) to determine if the drawer title bar needs to be compressed and/or simply shifted to the left or right of an existing title bar. The title bar is then drawn on the display at the appropriate length and centering.
According to another exemplary embodiment of the present invention, user indication of a preferred location for a drawer along an edge of a display space is not necessary. In this exemplary embodiment, the user indicates that an object, e.g., an open folder window, should be changed into a drawer object. This can be accomplished, for example, by using a menu command which turns an active window into a drawer. Since the user has not indicated a preferred location for the extended portion of the title bar of the drawer, this exemplary embodiment attempts to place the drawer at the first available location that is large enough to draw a full length version of the extended portion of the title bar starting at a bottom lefthand corner of the display space. The user interface examines each space between existing drawers (if any) from left to right until a space is found which is large enough to accept a full length extended portion of the title bar for the drawer to be created. During this traversal of the display space edge, each space which is less than a full length is measured and the location of the largest space less than a full length is stored. In this way, if the right corner of the device is reached without having identified a space which will accept a full length extended portion of the title bar, then the drawer is placed at the location of the stored largest space and the extended portion 14 is compressed as described above. These principles will now be described with respect to the flowchart of Figure 8.
Beginning at the lefthand corner of the display device, the space between the corner of the device and the nearest existing title bar is measured at block 54. The flow then proceeds to block 56 wherein this measured space is compared with the full length of the title bar to be drawn. If the space is large enough to draw the full length title bar, then the flow proceeds to block 58 wherein the drawer is placed and the title bar portion appears on the display. For example, if there are no existing drawers on the display device, then the space X will be measured to be the length of the display device and the graphical user interface will draw the title bar at its full length beginning in the lefthand corner of the display device.
If, on the other hand, the space X is not large enough to draw a full length title bar, then the flow proceeds to block 60 wherein the length of the space X is compared with the largest space measured thus far. For the first iteration, the space X will inherently be the largest measured and thus the flow will move to block 62 where the identity of this space is stored as the largest measured space which is not sufficient to draw a full length title bar. For subsequent iterations (if any), however, the identity of this space will only be stored if it is larger than the currently stored, largest, measured space. Next, the flow will proceed to block 64 wherein it is determined whether the right end of the device has been reached. If so, then the process is unable to find a space which was sufficient to draw a full length title bar portion and, instead, draws a compressed portion of the drawer title bar at the largest space identified by the stored indicator at block 66. If the end of the device has not been reached the flow moves from block 64 to block 68 where the next available space is identified for processing and the flow branches back to block 54 for another iteration.
The present invention is described herein by way of exemplary, illustrative embodiments, some of which refer to graphical user interfaces implemented using the Macintosh® computer system as a reference for explaining the present invention. Those wishing additional information with respect to the Macintosh® system are referred to Inside Macintosh, Vols. 1-6. However, those skilled in the art will readily appreciate that systems and methods according to the present invention can be applied to any type of display system having a user interface. Further, while window objects are used to illustrate how exemplary embodiments of the present invention effect the placement, sizing and drawing of drawer objects and drawer title bars, those skilled in the art will recognize that the present invention can be used to control the appearance and of drawer objects created in any manner and from any type of container object. Moreover, the principles of the present invention can be applied to any type of object being placed upon the edge of a display and is not limited to title bars, generally, or drawer title bars, specifically.
The above-described exemplary embodiments are intended to be illustrative in all respects, rather than restrictive, of the present invention. Thus the present invention is capable of many variations in detailed implementation that can be derived from the description contained herein by a person skilled in the art. All such variations and modifications are considered to be within the scope and spirit of the present invention as defined by the following claims.

Claims

WHAT IS CLAIMED IS:
1. A method for drawing an object between existing objects on an edge of a display comprising the steps of: determining if a space exists on said edge in which said object can be drawn on said edge at full length; if so, drawing said object in said space at said full length; otherwise, identifying a largest space between said existing objects; compressing said object to fit into said largest space; and drawing said compressed object in said largest space.
2. The method of claim 1, wherein said object is a title bar of a drawer object.
3. The method of claim 1, further comprising the steps of: determining if said largest space between existing objects is less than a predetermined threshold; and if so, indicating to a user that said object cannot be drawn on said edge of said display.
4. A method for drawing an object between existing objects on an edge of a display comprising the steps of: measuring a length of an open space on said edge of said display; comparing said measured length with a full length of said object; drawing, if said measured length exceeds said full length, said object in said open space; and drawing, if said measured length is less than said full length, a compressed version of said object bar in said open space.
5. The method of claim 4, further comprising the steps of: drawing said object centered about a cursor position unless a centered object bar would overlap with one of said existing objects; and shifting said object away from said centered position if said centered object would overlap with one of said existing objects.
6. The method of claim 4, wherein said object is a title bar of a drawer object.
7. The method of claim 4, further comprising the steps of: determining if said measured space is less than a predetermined threshold; and if so, indicating to a user that said object cannot be drawn in said open space on said edge of said display.
8. The method of claim 4, further comprising the step of: pointing, by a user, to said open space using a pointing device.
9. In a computer having a display, a system for drawing an object between existing objects on an edge of said display, comprising: a data structure for storing position information of existing objects; a graphical user interface for receiving and generating signals associated with said display, including a signal indicating that said object is to be drawn on said edge of said display; and a processor for receiving said signal and determining at least one of a location and a size of said object to be drawn on said edge of said display using said position information stored in said data structure, wherein at least one of said location and said size are transmitted to said graphical user interface which renders said object in accordance therewith.
10. The system of claim 9, further comprising: a pointing device for generating a cursor signal to said graphical user interface which indicates a space on said edge of said display device in which said object is to be drawn and said graphical user interface generates said signal based upon said cursor signal; wherein said processor determines that a dimension of said space is sufficient to render said object at a full size and said processor transmits coordinate information and an indication that said object is to be rendered at said full size to said graphical user interface.
11. The system of claim 9, further comprising: a pointing device for generating a cursor signal to said graphical user interface which indicates a space on said edge of said display device in which said object is to be drawn and said graphical user interface generates said signal based upon said cursor signal; wherein said processor determines that a dimension of said space is sufficient to render said object at a compressed size and said processor transmits coordinate information and an indication that said object is to be rendered at said compressed size to said graphical user interface.
12. The system of claim 9, further comprising: a pointing device for generating a cursor signal to said graphical user interface which indicates a space on said edge of said display device in which said object is to be drawn and said graphical user interface generates said signal based upon said cursor signal; wherein said processor determines that a dimension of said space is insufficient to render said object in said space and said processor transmits an indication that said object cannot be rendered in said space to said graphical user interface.
13. The system of claim 9, wherein said graphical user interface further comprises: an interface portion which can be actuated by a user to generate said signal which also identifies an active object that is to be redrawn as said object; wherein said processor identifies said location for said object on said edge of said display and said size for said object based upon said signal and said position information stored in said data structure.
PCT/US1996/006309 1995-05-05 1996-05-03 Systems and methods for positioning a drawer title bar on a graphical user interface WO1996035163A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
AU57268/96A AU5726896A (en) 1995-05-05 1996-05-03 Systems and methods for positioning a drawer title bar on a graphical user interface
EP96915507A EP0769168B1 (en) 1995-05-05 1996-05-03 Systems and methods for positioning a drawer title bar on a graphical user interface
DE69622492T DE69622492T2 (en) 1995-05-05 1996-05-03 SYSTEMS AND METHODS FOR POSITIONING A DRAWER TITLE BAR ON A GRAPHIC USER INTERFACE

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/435,376 1995-05-05
US08/435,376 US5627954A (en) 1995-05-05 1995-05-05 Systems and methods for positioning a drawer title bar on a graphical user interface

Publications (1)

Publication Number Publication Date
WO1996035163A1 true WO1996035163A1 (en) 1996-11-07

Family

ID=23728134

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1996/006309 WO1996035163A1 (en) 1995-05-05 1996-05-03 Systems and methods for positioning a drawer title bar on a graphical user interface

Country Status (5)

Country Link
US (1) US5627954A (en)
EP (1) EP0769168B1 (en)
AU (1) AU5726896A (en)
DE (1) DE69622492T2 (en)
WO (1) WO1996035163A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998044407A1 (en) * 1997-03-28 1998-10-08 Sun Microsystems, Inc. Method and apparatus for configuring sliding panels

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5790122A (en) * 1994-11-15 1998-08-04 Libera, Inc. Method for providing maximum screen real estate in computer controlled display systems during software application navigation
USD423485S (en) * 1995-05-05 2000-04-25 Apple Computer, Inc. Computer display screen with a computer generated menu design
US5767850A (en) * 1996-06-24 1998-06-16 Intel Corporatoin Relocatable menu icon for accessing an application in a graphical user interface
USD406122S (en) * 1997-06-18 1999-02-23 Apple Computer, Inc. Set of windows for a computer display screen
USD419542S (en) * 1997-06-18 2000-01-25 Apple Computer, Inc. Utility window for a computer display screen
USD406123S (en) * 1997-06-18 1999-02-23 Apple Computer, Inc. Scroll bar design for a window for a computer display screen
USD423483S (en) * 1997-06-18 2000-04-25 Apple Computer, Inc. Modal window for a computer display screen
US6121965A (en) * 1997-10-17 2000-09-19 Lucent Technologies Inc. User interface for graphical application tool
USD427576S (en) * 1998-05-01 2000-07-04 Apple Computer, Inc. Menu design for a computer display screen
USD426525S (en) * 1998-05-01 2000-06-13 Apple Computer, Inc. Window for a computer display screen
USD430885S (en) * 1998-05-04 2000-09-12 Apple Computer, Inc. Composite desktop for a computer display screen
USD431038S (en) * 1998-05-04 2000-09-19 Apple Computer, Inc. Window for a computer display screen
USD426207S (en) * 1998-05-07 2000-06-06 Apple Computer, Inc. Window for a computer display screen
USD428398S (en) * 1998-05-07 2000-07-18 Apple Computer, Inc. Menu design for a computer display screen
US6377284B1 (en) 1998-12-10 2002-04-23 International Business Machines Corporation Method of geometrically expanding vertically compressed lists of data
USD424542S (en) * 1998-12-18 2000-05-09 Apple Computer, Inc. Composite desktop for a computer display screen
USD424038S (en) * 1998-12-18 2000-05-02 Apple Computer, Inc. Composite desktop for a computer display screen
USD424543S (en) * 1999-01-20 2000-05-09 Apple Computer, Inc. Scroll bar design for a window for a computer display screen
USD423486S (en) * 1999-01-20 2000-04-25 Apple Computer, Inc. Window for a computer display screen
USD424039S (en) * 1999-01-20 2000-05-02 Apple Computer, Inc. Window for a computer display screen
USD422982S (en) * 1999-01-20 2000-04-18 Apple Computer, Inc. Scroll bar design for a window for a computer display screen
USD426208S (en) * 1999-01-20 2000-06-06 Apple Computer, Inc. Window for a computer display screen
USD426209S (en) * 1999-01-20 2000-06-06 Apple Computer, Inc. Window for a computer display screen
USD427980S (en) * 1999-01-20 2000-07-11 Apple Computer, Inc. Scroll bar design for a window for a computer display screen
USD424040S (en) * 1999-01-20 2000-05-02 Apple Computer, Inc. Window for a computer display screen
USD425038S (en) * 1999-03-04 2000-05-16 Apple Computer, Inc. Window for a computer display screen
USD433392S (en) * 1999-03-04 2000-11-07 Apple Computer, Inc. Window for a computer display screen
USD757052S1 (en) 2000-01-04 2016-05-24 Apple Inc. Computer display screen with graphical user interface
US6686935B1 (en) 2000-05-24 2004-02-03 International Business Machines Corporation Method and apparatus for object kerning
US20100333017A1 (en) * 2007-11-27 2010-12-30 David J. Ortiz Computer graphic user interface and display system
USD668674S1 (en) 2010-07-26 2012-10-09 Apple Inc. Display screen or portion thereof with icon
USD667843S1 (en) 2010-10-20 2012-09-25 Apple Inc. Display screen or portion thereof with icon
AU350323S (en) * 2013-01-04 2013-08-23 Samsung Electronics Co Ltd Display Screen For An Electronic Device
US8775965B1 (en) * 2013-06-27 2014-07-08 Google Inc. Immersive mode for a web browser
USD755848S1 (en) 2014-06-01 2016-05-10 Apple Inc. Display screen or portion thereof with icon
USD810094S1 (en) 2014-08-19 2018-02-13 Sony Corporation Display panel or screen with an icon or graphical user interface
USD783677S1 (en) * 2015-07-27 2017-04-11 Microsoft Corporation Display screen with icon
US10318125B2 (en) * 2016-08-29 2019-06-11 Sap Se Graphical user interface magnetic panel
USD905713S1 (en) 2017-04-28 2020-12-22 Oshkosh Defense, Llc Display screen or portion thereof with graphical user interface
USD846594S1 (en) 2017-07-10 2019-04-23 Apple Inc. Display screen or portion thereof with icon
USD909410S1 (en) 2017-08-13 2021-02-02 Apple Inc. Display screen or portion thereof with icon having a three-dimensional appearance
USD846567S1 (en) 2017-10-06 2019-04-23 Apple Inc. Electronic device with graphical user interface
USD940200S1 (en) * 2020-07-20 2022-01-04 Beijing Kongming Technology Co., Ltd. Display screen or portion thereof with a graphical user interface

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0443357A2 (en) * 1990-02-22 1991-08-28 Fujitsu Limited Method for displaying amount of documents
US5305435A (en) * 1990-07-17 1994-04-19 Hewlett-Packard Company Computer windows management system and method for simulating off-screen document storage and retrieval
WO1994029793A1 (en) * 1993-06-11 1994-12-22 Apple Computer, Inc. Computer system with graphical user interface including drawer-like windows

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5001697A (en) * 1988-02-10 1991-03-19 Ibm Corp. Method to automatically vary displayed object size with variations in window size
US5450538A (en) * 1991-11-08 1995-09-12 International Business Machines Corporation Graphical user interface control for expansion and re-sizing of data fields in forms

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0443357A2 (en) * 1990-02-22 1991-08-28 Fujitsu Limited Method for displaying amount of documents
US5305435A (en) * 1990-07-17 1994-04-19 Hewlett-Packard Company Computer windows management system and method for simulating off-screen document storage and retrieval
WO1994029793A1 (en) * 1993-06-11 1994-12-22 Apple Computer, Inc. Computer system with graphical user interface including drawer-like windows

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"AUTOMATIC NOTEBOOK TAB DIMENSION ALGORITHM", IBM TECHNICAL DISCLOSURE BULLETIN, vol. 38, no. 5, 1 May 1995 (1995-05-01), pages 365, XP000519611 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998044407A1 (en) * 1997-03-28 1998-10-08 Sun Microsystems, Inc. Method and apparatus for configuring sliding panels
US6664983B2 (en) 1997-03-28 2003-12-16 Sun Microsystems, Inc. Method and apparatus for configuring sliding panels

Also Published As

Publication number Publication date
EP0769168B1 (en) 2002-07-24
AU5726896A (en) 1996-11-21
EP0769168A1 (en) 1997-04-23
US5627954A (en) 1997-05-06
DE69622492D1 (en) 2002-08-29
DE69622492T2 (en) 2003-02-13

Similar Documents

Publication Publication Date Title
US5627954A (en) Systems and methods for positioning a drawer title bar on a graphical user interface
US6072488A (en) Systems and methods for replacing open windows in a graphical user interface
CN106662964B (en) Dynamic joint divider of application windows
US7302648B1 (en) Method and apparatus for resizing buffered windows
US6356281B1 (en) Method and apparatus for displaying translucent overlapping graphical objects on a computer monitor
KR102372570B1 (en) Assisted presentation of application windows
US7017118B1 (en) Method and apparatus for reordering data items
US7536410B2 (en) Dynamic multi-dimensional scrolling
US8127239B2 (en) Object transitions
KR100636184B1 (en) Location control method and apparatus therefor of display window displayed in display screen of information processing device
JP4602487B2 (en) Method and computer controlled graphic display system for creating and manipulating groups of graphic objects
KR101608183B1 (en) Arranging display areas utilizing enhanced window states
US8701030B2 (en) Method and apparatus for managing windows
US20030197739A1 (en) Distribution of application windows in a computing device display
US20030107604A1 (en) Method and system for automatic window resizing in a graphical user interface
US6727929B1 (en) Automatic determination of nearest window controller having a function consistent with motion of cursor
US5680561A (en) Effectively locating an object within a compound document using an elevator
US5757370A (en) Method, memory, and apparatus for effectively locating an object within a compound document
US6232985B1 (en) Interactive, dynamic, automatic dimension arrangement generator for computer-aided drafting programs
WO2002029538A1 (en) A combined menu-list control element in a graphical user interface
US20130067393A1 (en) Interaction with Lists
CN113721808A (en) Control method and device
CN113268182A (en) Application icon management method and electronic equipment
CN113093961B (en) Window switching method, storage medium and related equipment
JP3635853B2 (en) Icon display control apparatus and method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG UZ VN AM AZ BY KG KZ MD RU TJ TM

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML

WWE Wipo information: entry into national phase

Ref document number: 1996915507

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1996915507

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA

WWG Wipo information: grant in national office

Ref document number: 1996915507

Country of ref document: EP