throbber
United States Patent
`
`[19]
`
`[11] Patent Number:
`
`5,263,134
`
`
`Peal et a1.
`[45] Date of Patent:
`Nov. 16, 1993
`
`||||1|l|||||l|||1||||||||||||||||l||||||||l|||||l||||l|||l|||||||l||||ll||l
`U80052631 34A
`
`[54] METHOD AND APPARATUS FOR
`CONTROLLING COMPUTER DISPLAYS BY
`USING A TWO DIMENSIONAL SCROLL
`pm
`
`[56]
`
`[75}
`
`Inventors: Adam F. P1131. Stanford; William J.
`Fernandez, Fremont. both of Calif.
`
`[73] Assignee: Apple Computer, Inc, Chpertino,
`Calif.
`
`[21] App]. No: 922.644
`
`[22] Filed:
`
`Jul. 30, 1992
`
`Related [1.5. Application Data
`
`[63}
`
`Continuation of Ser. No. 426.872. Oct. 25, 1939. aban-
`doned'
`
`{51]
`[52]
`
`Int. Cl.5
`11.5. (:1.
`
`GOéF 3/14
`395/158; 395/157;
`395/155
`[53] Field of Search ............... 395/155. 156, 157. 158,
`395/706. 721. 724. “1'47. 750
`
`References Cited
`USI PATENT DOCUMENTS
`364/300
`4,553,413 12/1985 Schmidt 21 a1.
`-3154/513
`4.735.303 4/1933 Heckel
`
`.. 364/521
`4.352.019
`1/1959 Vinberg ml.
`
`340/106
`4.899.136 2/1990 Beard et a].
`..
`
`4.930.014 5/ 1990 McCarthy
`Sod/410
`
`4,975,690 12/1990 Torres
`340/721
`
`Primary Exomt‘ner—Phu K- Nguyen
`Attorney. Agent. or Firm—Blakely. Sokoloff, Taylor &
`Zafman
`'
`
`ABSTRACI
`{57]
`A computer program provides for the display of win-
`dow regions on a display screen whereby the content
`and size of one window region is controllable in two
`dimensions using means provided in another window
`region. A cursor device and a signal generation means is
`used to select the two-dimensional scrolling or resizing
`ofa window region. Controls are also proVided to move
`and terminate window regions. Upon termination. the
`configuration of window regions is saved on a data
`storage means for use when the window regions are
`re-displayed. Cursor movement can be restricted to the
`horizontal or vertical directions only.
`
`'
`
`48 Clsils, 9 Drawing Sheets
`
`
`
`0001
`0001
`
`TDA 1018
`TDA 1018
`CBM of U.S. Patent No. 7,676,411
`CBM of US. Patent No. 7,676,411
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 1 of 9
`
`5,263,134
`
`
`
`
`
`
`
`
`Style
`File
`Edit
`G (a
`Font
`
`First Card
`
`
`
`Figure
`
`1
`
`2 Display Screen
`
`1 Two-dimensional Scroll Palette
`
`3 Active Window
`
`Figure
`
`2
`
`0002
`0002
`
`

`

`U.S. Patent
`
`Nov. 16, 1993
`
`Sheet 2 of 9
`
`5,263,134
`
`4 Terminate Palette Area
`
`5 Move Palette Area
`
`10 Special function areas 6 Palette working area
`
`— 1
`
`2D Scroll Palette
`
`Figure
`
`3
`
`
`
`7 View Area
`
`VII/IIIIIIIIIIJIIII
`
`
`
`I.
`
`2rf
`
`iIIIIIIIIIIIIIIIIIIA
`
`
`8 Scrolling Area
`
`
`
`9 Corner regions
`
`V“‘5.I
`
`
` \\
`
`Figure 4
`
`0003
`0003
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 3 of 9
`
`5,263,134
`
`Ira-o-
`
`Figure 5
`
`0004
`0004
`
`
`I.‘~U
`
`:I'UD «I
`
`I.
`
`e f 9 h
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 4 of 9
`
`5,263,134
`
`Figure 7
`
`Start 20 Scroll
`Palette function.
`701
`
`Get Active Window and
`available iniorrnation
`dimensions. Get Location
`and status ot 2D Scroll
`Palette. Compute shape
`and configuration at
`palette.
`702
`
`703
`
`Display 2D Scroll
`Palette at saved
`location.
`
`Zoom window?
`70 4
`
`Zoom active
`
`wind me.
`7 o 5
`
`
`
`
`
`
`
`
`Get Cursor
`Move Palette?
`
`706
`
`
`position.
`710
`
`( :)
`
`Nihs
`
`Terminate
`Palette '?
`7 0 7
`
`Move Palette.
`71 1
`
`No 716
`
`Yes 717
`
`Special iunction
`selected? 71 B
`
`Process
`
`
`
`special
`function. 721
`
`Save location and status
`of 20 Scroll Palette.
`708
`
`709
`
`Remove 20 Palette
`trom display.
`
`0005
`0005
`
`

`

`Scrolling
`selected?
`8 D 8
`
`Yes 823
`
`No 316
`
`Constrained X
`
`selected? 809
`
`Yes 82?
`
`
`
`
`
`
`
`
`
`
`Yes 323
`
`Cursor in View
`area?
`803
`
`
`Yes 81?
`
`Cursor in
`scrolling
`area?
`8041
`
`Yes 819
`
`Scrolling area
`lull size?
`B D 5
`
`YES
`320
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Nov. 16,1993
`
`Sheet 5 of 9
`
`5,263,134
`
`Figure B
`
`Get Cursor position. 801
`
`
`
`Cursor in Palette?
`802
`
`No 815 G
`
`No 82"
`
`Constrain x
`coordinate.
`
`Constrein Y
`coordinlto.
`312
`
`No 826
`
`
`81 1
`
`Constrained Y
`selected?
`81 0
`
`
`
`
`
`
`Apply new origin to
`active window.
`8 14
`
`
` Display
`C
`"'5”
`
`1 . BOGsymbol
`
`
`
`Apply now posilioa to
`View area.
`
`813
`
`
`
`0006
`0006
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 6 of 9
`
`5,263,134
`
`Figure 9
`
`Yes
`932
`
`
`
`Heslze select? 918
`
`Yes
`954
`
`. m 9‘5
`
`
`
`Display
`
`Cursor
`Resize select? 91?
`
`
`symbol 4.
`
`9 09
`No 947
`
`Yes
`955
`
`Resize upper.
`924.
`
`Resize right.
`92 5
`
`Yes
`936
`
`
`Display
`Cursor
`.
`
`symbol 5.
`Reszze select? 913
`910
`
`No 9&3
`
`Yes
`933
`
`
`Resize ste'lect'!I 919
`
`
`No 949
`
`Yes
`956
`
`Rosita upper
`right.
`923
`
`Yes
`95?
`
`Resize lower.
`92 7
`
`940
`
`
` Yes
`'
`1:
`
`Resrze select. 92:)
`
`No 950
`
`Display
`Cursor
`symbol ?.
`9 1 2
`
`Yes
`958
`
`Resize lower
`rig ht.
`928
`
`'
`
`Upper only? 901
`
`No 933
`
`
`Right only? 902
`No 935
`
`Upper Flight? 903
`
`
`
`
`"a 93?
`
`Lower only? 904
`
`
`
`
`ND 939
`
`
`
`right?
`Lower
`905
`
`No 941
`
`Left only? 906
`
`No 943
`
`Upper left? 90‘?
`
`Yes
`942
`
`
`
`Flesize select? 92‘:
`
`No 951
`
`Yes
`959
`
`Resize left.
`92 9
`
`
`,
`
`Reslze select? B22
`
`No 952
`
`Yes
`960
`
`Resin upper
`tell.
`930
`
`No 945
`
`Display Cursor
`
`
`
`symbol in [lower
`.
`7
`
`
`Flesrze select. 923
`lolt].
`915
`
`No 953
`
`
`Y”
`951
`
`Resize lower
`In H.
`931
`
`0007
`0007
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 7 of 9
`
`5,263,134
`
`
`
`ax/pw - cx/iw
`ay/ph - cy/ih
`hx/pw II
`dX/IW
`by/ph - dy/ih
`
`Figure 10
`
`0008
`0008
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 8 of 9
`
`5,263,134
`
`
`
` DataStorage
`Processor
`Device
`
`
`101
`104
`
`
`
`Bus
`1 00
`
`
`
`Alphanumeric
`Cursor
`Signal
`
`Input Device
`Control
`Generation
`Device
`Device
`1 06
`107
`1 08
`
`
`Figure
`
`1 1
`
`0009
`0009
`
`

`

`US. Patent
`
`Nov. 16, 1993
`
`Sheet 9 of 9
`
`5,263,134
`
`Cursor Symbol
`
`1
`
`Cursor Symbol 2
`
`Cursor Symbol 3
`
`Cursor Symbol 4
`
`Cursor Symbol 5
`
`Cursor Symbol 6
`
`Cursor Symbol 7
`
`Cursor Symbol 8
`
`Cursor Symbol 9
`
`/
`
`Cursor Symbol 10
`
`Illlllllsi
`
`cursor outside view and
`scrollino area
`
`cursor InSI-e scro my area
`
`cursor InSI-e new area an: near
`
`upper border
`cursor insane mew area an- near
`
`right border
`cursor insine View area an- near
`
`upper and right border
`cursor InSI-e VIew area ano near
`
`lower border
`cursor insr-e View area an- near
`
`_
`
`lower and right border
`
`cursor inSI-e new area an- near _
`left border
`
`cursor insi-e View area an near
`
`upper and left border
`cursor insi-e VIeW area an near
`lower and left border
`
`Figure
`
`12
`
`0010
`0010
`
`

`

`1
`
`5,263,134
`
`MOD AND APPARATUS FOR CONTROLIJNG
`COMPUTER DISPLAYS BY USING A TWO
`DIMENSIONAL SCROLL PALE'ITE
`
`This is a continuation of application Ser. No.
`07/426,812, filed Oct. 25, I989, now abandoned.
`
`BACKGROUND OF THE INVENTION
`
`(l) Field of the Invention
`This invention relates to the two-dimensional selec-
`tion of portions of a computer diaplay area and the
`two-dimensional selection of the portions of informa-
`tion to display within the selected display area. Specifi-
`cally, the field is that of interactive computer display
`control devices where a selected portion of the avail-
`able information is viewable in a selected portion of the
`display area.
`(2) Prior Art
`Information management systems are placing increas-
`ing demands on the physical resources available for
`displaying information to the user. Currently, the art in
`computer display management provides the capability
`of displaying data in rectangular portions (commonly
`referred to as windows) of a display screen. The closest
`art know to the applicant is the Finder TM interface of
`the Apple Macintosh TM computer, manufactured by
`Apple Computer, Inc. of Cupertino, Calif. Controls are
`typically provided to resize and move windows within
`the confines of the physical display boundaries. Addi—
`tional controls are also provided to shift the viewable
`ponion of information within the limits of the previ-
`ously defined window boundaries. This shifting of the
`viewable portion of the information is known as scroll-
`ing. One control means is typically provided to scroll
`the information horizontally; another control means is
`provided to scroll the data vertically. The prior art does
`not provide a means for scrolling the viewable portion
`of the information simultaneously in two dimensions
`without manipulating the display area directly. Current
`scrolling methods require the user to position the cursor
`inside of the window containing the information and to
`set the viewable region by movement of the cursor.
`This method may create problems if the information
`window is not completely viewable or the information
`for display is voluminous. Prior art also does not pro-
`vide the capability for dynamic feedback as the view-
`able portion of the data is being selected. Current win-
`dowing capabilities do not provide the means for dis-
`playing, in a separate area of the display screen, a
`graphic two-dimensional representation of the position
`and size of the portion of the available information that
`is presently viewable. Prior art typically does not allow
`windows to be sized or moved beyond the physical
`boundaries of the display area. Windows usually need to
`be within view and not hidden in order to be manipu-
`lated by the devices available in the prior art. These
`capabilities are significh for the efficient use of a lim-
`ited display area. The present invention provides these
`display management advances.
`SUMMARY OF THE INVENTION
`
`5
`
`10
`
`IS
`
`20
`
`25
`
`30
`
`35
`
`45
`
`50
`
`55
`
`This invention provides a method of and a means for
`selecting a portion of available information for display
`in a selected area of a diaplay screen. The present inven-
`tion comprises an interactive computer-controlled dis-
`play system including a bus for interconnecting system
`components, processor. a random access memory, a
`
`65
`
`0011
`0011
`
`2
`read only memory, a data storage means for storing
`data, a display device including a display screen, an
`alphanumeric input device, a cursor control device for
`interactively positioning a cursor on a display screen,
`and a signal generation device. This invention provides
`a method and means for displaying window regions on
`the display screen whereby the content and size of one
`window region ("first window region") is controlled by
`the two dimensional movement of the cursor and the
`activation of the signal generation means within another
`window region(“second window region"). The second
`window region contains predetermined areas associated
`with dilferent functions that operate upon the first win-
`dow region. As the cursor is positioned within one of
`the predetermined areas, the cursor symbol changes to
`indicate the availability of a function for resizing or
`scrolling the first window region. Another implementa-
`tion may indicate the availability of functions by chang-
`ing the diSplay of the predetermined area instead of the
`cursor symbol as the cursor moves into the predeter-
`mined area. Predetermined areas are also provided to
`move or terminate the second window region. Prede-
`termined areas can also be provided to activate special
`functions, such as a function for zooming or expanding
`the first window region or the viewable area to full size,
`a function for causing the configuration of the palette
`and the first window region to revert back to the con-
`figuration prior to the last modification, a function for
`causing the configuration of the palette and the first
`window region to be configured in a default condition
`(e.g. located in the upper left corner), or a function to
`cause the configuration of the palette and the first win-
`dow region to be set to a configuration set up and saved
`at an earlier time. As the window regions are removed
`from the display. the position and configuration of the
`window regions is saved on the data storage means in
`order to restore the window regions to the saved cori-
`figuration when redisplayed. The shape and size of the
`palette and its predetermined areas can also be com-
`puted when the palette is first activated based upon the
`size and shape of the first window region. Controls are
`also provided to constrain the movement of the cursor
`in either the horizontal or vertical direction.
`This invention provides a method and means for
`overcoming the failure of prior display systems of being
`able to manage the display area simultaneously in two
`dimensions.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. I is an illustration of a means for activating the
`two-dimensional seroll palette using a menu.
`FIG. 2 is an illustration of a display screen after the
`scroll palette has been activated.
`FIG. 3 is an illustration of the two-dimensional pal-
`ette in its initial configuration before the view area has
`been mired.
`FIG. 4 is an illustration of the palette showing the
`view and scrolling areas and the corner regions after the
`view area has been resized.
`FIG. 5 is an illustration of the palette during a two
`dimensional scrolling operation.
`FIG. 6 is an illustration of the palette during a two
`dimensional resizing operation.
`FIGS. 7, 8 and 9 are flowcharts of the representative
`computer program that implements this scheme.
`FIG. 10 is an illustration of the palette and the active
`window showing the computation of the size and posi-
`tion of the view area within the palette related to the
`
`

`

`3
`size and position of the active window within the avail»
`able data buffer.
`FIG. 11 is an illustration of the computer system
`architecture.
`FIG. 12 is a chart which shows the association be-
`tween the cursor symbol displayed and the position of
`the cursor within the palette.
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`This invention concerns two-dimensional selection
`and display of a portion of information in a portion of
`the available display area in a computer or information
`management system. The following detailed description
`describes a two-dimensional (2 D) scroll palette as a
`means for managing the available display area in this
`manner.
`
`The preferred embodiment of the present invention is
`implemented on an Apple Macintosh TM computer
`system. It is obvious to one of ordinary skill in the 811.
`however. that alternative systems may be employed. In
`general. such systems as illustrated by FIG. 11 comprise
`a bus 100 for communicating information, a processor
`101 coupled with said bus for prooessing information, a
`random access memory 102 coupled with said bus 100
`for storing information and instructions for said proces-
`sor 101, a read only memory 103 coupled with said bus
`100 for storing static information and instructions for
`said processor 101. a data storage device 104 such as a
`magnetic disk and disk drive coupled with said bus 100
`for storing information and instructions, a display de-
`vice 105 coupled to said bus 100 for displaying informa-
`tion to the computer user. an alphanumeric input device
`106 including alphanumeric and function keys coupled
`to said bus 100 for communicating informatiOn and
`command selections to said processor 101. a cursor
`control device 107 coupled to said bus for communicat-
`ing information and command selections to said proces-
`sor 101. a signal generation device 108 coupled to said
`bus 100 for communicating command selections to said
`processor 101.
`The display device 105 may be a liquid crystal device,
`cathode ray tube. or other suitable display device. The
`cursor control device 107 allows the computer user to
`dynamically signal the two dimensional movement of a
`visible symbol on a display screen of said display device
`105. Many implementations of the cursor control device
`are known in the art including trackball, mouse. joy-
`stick. or special keys on the alphanumeric input device
`106 capable of signaling movement in a given direction.
`A. 2 D scroll palette provides additional controls and
`enhancements for these windowing and cursor systems.
`These features of the present invention are described
`below. The general operation of windows or cursors is
`described only where necessary to provide a thorough
`understanding of the present
`invention since these
`methods are known to those of ordinary skill in the art.
`
`Operation of the Present Invention
`A window regiOn (window) usually is a rectangular
`portion of a computer display screen in which informa—
`tion is displayed to the user. Window regions may have
`different shapes including circular, trapezoidal. or tri-
`angular. The information may be in the form of textual.
`numerical, or graphical data. A window, for example,
`may be used to represent a single notecard within a
`stack of cards. The data displayed within the window
`represents the information written on the notecard. One
`
`5,263,134
`
`4
`well-known system for displaying such notecards is the
`Hypercard TM system distributed by Apple Computer.
`Inc. A window management system provides controls
`with which the user is able to select the size and loca-
`tion of the window within the physical boundaries of
`the display. The windowing system also provides con-
`trols for scrolling or selecting the portion of data view-
`able within the window. In the present invention, an
`additional control processing means is provided to acti-
`vate the 2 D scroll palette. That is. a processing means
`generates and displays a window region which func-
`tions as the 2 D scroll palette. Once activated. the 2 D
`scroll palette allows the user to manipulate the selected
`window and the display of information therein.
`In FIG. 1, a menu for activating a process of the
`present invention is illustrated. Menus are windows in
`which the user is presented with a list of command
`options. The user selects an option by positioning a
`cursor symbol on the desired command line 12 within
`the desired command column 11 or within the desired
`command area using a mouse, joystick, or other two-di»
`mensional cursor control device. After the cursor is
`positioned, the command is selected by the activation of
`a function key or keys associated with the cursor con-
`trol device. 135. Pat. No. 4.464,652 reissued as No.
`32,632 on Mar. 29. 1938 to inventor, William Atkinson
`and assigned to the assignee of the present application
`discloses a device suitable for use as a cursor control
`device andrneans for implementing the described menu
`control. This method of command or function selection
`is used throughout the description of the present inven-
`tion. Many other means of command activation may
`also be employed such as the entry of a special code or
`command sequence from the keyboard or numeric key—
`pad or an icon selection. An icon is small graphical
`symbol displayed to the user and identifiable as per-
`fanning some function when selected. An icon repre-
`senting the 2 D scroll palette may be selected causing
`the present invention to be initiated. The present inven-
`tion may also be activated through a software interface
`with the computer‘s operating system software or other
`application software. Using this method, the activation '
`of the 2 D scroll palette can be independent of direct
`user action.
`Upon activation, the 2 D scroll palette 1 is presented
`to the user on the display screen 2 as shown in FIG. 2.
`The palette represents a scaled-down replica of the
`entire available data area which may or may not corre-
`spond to the actual dimensions of the viewable area.
`For example. the available data represented by the pal-
`ette may consist of the information contained on a single
`notecard which is completely displayable on the display
`screen. The available data may also consist of a com-
`plete document or graphical artwork only a portion of
`which is displayable on the display screen at one time."
`The dimensions of the available data are known quanti-
`ties based on the maximum number of characters or
`pixels in the horizontal and vertical directions for the
`displayable information. These dimensions are depicted
`in FIG. 10. The width of the available data is shown as
`iw (informatiou width). The height of the available data
`is shown as iii (information height). The method for
`associating the 2 D scroll palette to the available infor-
`mation is described in the sections below.
`The palette itself may be displayed as a window. It
`may be moved to any area of the display using controls
`provided by the palette itself. The palette is usually
`displayed at the top layer of the group of nested win-
`
`5
`
`‘10
`
`15
`
`20
`
`25
`
`3D
`
`35
`
`45
`
`50
`
`55
`
`65
`
`0012
`0012
`
`

`

`5
`dows that may occupy the display screen when the
`palette is activated. If the palette is displayed at the top
`layer, it will hide whatever information is displayed at
`the same or lower window layers.
`The 2 D scroll palette is designed to operate in con-
`junction With an associated active window. Although
`many windows or data areas may be displayed on the
`display screen at one time, at least one or more windows
`are identified as the active window(s) for the purpose of
`manipulation using the 2 D scroll palette. The active
`window is used to display to the user a portion of the
`data or information available for display. Since the
`window can be resized, a portion of the information
`may not fit within the border boundaries of the active
`window; thus, a portion of the information available for
`display may not always be displayed. The dimensions
`for the available information {iw,ih described above),
`may not be the same dimensions as these for the active
`window. However, the dimensions for the active win-
`dow are also initially known values, since the active
`window exists prior to the initiation of the scroll palette
`function. Most windowing systems known in the art
`provide an association between the information avail-
`able for display and the portion of the information cur-
`rently or actively displayed in the active window. One
`method for associating displayable information to infor-
`mation currently viewable in an active window is to
`_ compute the positions of two corners of the viewable
`information within the available information. This asso-
`ciation is depicted in FIG. 10. The upper left position of 3D
`the viewable portion of information is defined by the
`offsets (cx,cy). The lower right position of the viewable
`portion of information is defined by the offsets (dx,dy).
`The size and shape of the viewable information rectan-
`gle delineated by (cx,cy) and (dx,dy) is identical to the
`size and shape of the active window. Since the dimen-
`sions of the available information and the dimensions of
`the active window are initially known values, the posi-
`tion of the viewable portion of information (cx,cy) and
`(dandy) is also a known value.
`The active window or windows may be identified by
`positioning the cursor within the window and activat-
`ing the cursor function key, by activating a special func—
`tion key, by identifying the window using its name or
`number, or other means such as a signal generation
`means. An example of a cursor function ltey or signal
`generation means in the present embodiment is a button
`located on the mouse which is pressed down to set the
`function key active. The active Window 3 is shown in
`FIG. 2. The active window is not required to be dis-
`played at the top window layer in order to be manipu-
`lated by the scroll palette. The active window may be
`hidden, displayed off-screen, or not currently displayed,
`yet still be the object of action by the scroll palette. The
`palette may also be attached to an active window such
`that movement of the active window causes corren
`
`IO
`
`15
`
`20
`
`25
`
`35
`
`45
`
`SD
`
`55
`
`5,263,134
`
`6
`ette horizontal dimension (pw in FIG. 10) is set to a
`predetermined constant value representing the maxi-
`mum size of the palette. The palette vertical dimension
`(ph in FIG. 10) is set to a value equivalent to the prede»
`termined constant value multiplied by the prOportion of
`the displayable information vertical dimension divided
`by the displayable information horizontal dimension.
`The palette initial dimension computation for a display-
`able information area with a larger horizontal dimen-
`sion is described by the following equation:
`iw=Displayable information horizontal dimension
`ih=Displayable information vertical dimension
`c= constant value representing maximum dimension
`of palette
`
`pits—flattfiw} where:
`
`ph is the computed vertical dimension of palette.
`If the displayable information vertical dimension (ih)
`is larger than the displayable information horizontal
`dimension (iw), the roles of the horizontal and vertical
`components in the above equation are reversed. Once
`this computation is completed. the dimensions of the
`palette (pw and ph) are known values retained for as
`long as the scroll palette is displayed.
`Although the scroll palette represents the available
`data area, the available data is not necessarily displayed
`within the border of the palette. The operation of the 2
`D scroll palette is not dependent upon the presence of
`any of the available data within the palette. This em-
`bodiment of the present invention is described as a pal-
`ette not containing any of the available display data;
`thus, as shown in FIG. 2, the palette I does not contain
`any of the data displayed in the active window 2. Other
`embodiments. however are conceivable. The palette
`may be displayed with a reduced scale replica of the
`viewable data displayed within the palette. A method
`for generating the reduced scale data is already well
`known in the prior art. The HypercardTM system dis»
`tributed by Apple Computer, Inc. contains the func-
`tions capable of producing a window displaying a re-
`duced scale replica of information displayable in full
`size in another window. This technology could be in-
`corporated into the present inventiou without signifi-
`cant difficulty.
`The 2 D scroll palette is comprised of several differ-
`ent regions or predetermined areas within the palette
`bounds as shown in FIGS. 3 and 6. The shaded region
`5 at the top of the palette is used to activate the function
`of moving the palette as described below. Similarly,
`controls are provided to terminate the 2 D scroll palette
`function. The palette itself provides a means for termi-
`nating the function. A small area II- at the top left-hand
`side of the palette is provided for this purpose.
`Predetermined areas 10 can also be provnled to acti-
`vate special functions, such as a function for zooming or
`expanding the first window region or the viewable area
`to full size, a function for causing the configuration of
`the palette and the first window region to revert back to
`the configuration prior to the last modification, a func-
`tion for causing the configuration of the palette and the
`first window region to be configured in a default cendi-
`tion (cg. located in the upper left corner), or a function
`to cause the configuration of the palette and the first
`window region to be set to a cenfiguration set up and
`saved at an earlier time. These special predetermined
`areas 10 are located within the 2 D scroll palette as
`depicted in FIG. 3.
`
`spending movement of the palette.
`The initial dimensions of the 2 D scroll palette as
`displayed on the display screen are computed from the
`dimensions of the displayable information to which the
`scroll palette is associated. This feature allows the shape
`of the palette to appear similar to the dimensions of the
`information that the palette represents. The computa-
`tion of initial palette dimension starts by testing for the
`larger dimension of the displayable information (iw or
`ih shown in FIG. 10). If the diaplayable information-
`horizontal dimension (iw) is larger than the displayable
`information vertical dimension (Hi), the 2 D scroll pal-
`
`60
`
`65
`
`0013
`0013
`
`

`

`7
`As shown in FIG. 4, two other regions are defined for
`function activation within the palette working area 6:
`the view area 7 used to resize the active window and the
`scrolling area 8 used to scroll the information viewable
`in the active window. Both of these regions are prede-
`termined areas. The view area is always contained
`within the working area. The view area may be resized
`to dimensions less than or equal to the dimensions of the
`working area. On initial activation, the view area is
`sized by default to the same scaled-down dimensions as
`the active window as shown in HQ ll]. The dimensions
`of the working area (pw,ph) represent the scaled-down
`dimensions of the entire set of displayable information
`computed as shown above. The dimensions of the view
`area (defined by corners (az,ay) and (bx,by)) represent
`the scaled-down dimensions of the active window.
`Thus, initially, the view area is sized to the equivalent
`dimensions of the full-size scaled dimensions of the
`active window (defined by corners (cx.cy) and (dx,dy)).
`As described above, the dimensions for the available
`information (iw,ih), the dimensions for the active win-
`dow (defined by corners (cx.cy} and (dx,dy)). and the
`dimensions for the palette working area are known or
`computed values. The view area dimensions (art,ay) and
`(baby) are computed using the equations shown below
`and depicted in FIG. 10:
`
`ex =33 W‘(cxx’t'w)
`
`uy=ph'(ry/ih)
`
`but =pu-‘Idx/t'w)
`
`by =Ph‘(dJ'/l'hl
`
`Once the above computation is completeI the dimen-
`sions of the view area are known; thus, the borders or
`outline of the view area can be diSplayed within the
`working area of the palette. 0n initial activation of the
`2 D scroll palette, the outline of the view area may not
`be visible, since it may overlay the border of the work—
`ing area as shown in FIG. 2. As the view area is reduced
`in size, the active window is reduced in an equivalent
`manner and the view area outline becomes visible as
`shown in FIGS. 5 and 6. The outline overlays the
`boundary of the view area. If the palette is terminated.
`the position and size of the view area and the position of
`the palette are saved in computer memory. If the posi-
`tion and size of the view area is changed, even while the
`palette is closed or hidden, the saved position and size
`are updated in memory such that the saved parameters
`always represent the actual position and size of the view
`area. When the palette is subsequently re-activated. the
`palette and the view area are displayed at the saved
`location and size. The size and shape of the palette can
`be computed on reactivation from the size and shape of
`the active window as described earlier.
`The scrolling area 8 is always contained within the
`view area. The size of the scrolling area is defined by
`the size of the view area less a scaled length in both the
`horizontal and vertical dimensions. A portion of the
`view area is always visible around all of its four borders.
`As the view area is resized, the scrolling area is resized
`by a like amount. The view area is not allowed to be
`reduced to such a small dimension that the scrolling
`area disappears. Initially, the scrolling area is sized to
`the dimension of the working area less the same scaled
`length in both the horizontal and vertical dimensions.
`There is no outline displayed for the scrolling area. thus,
`
`5,263 ,1 34
`
`8
`in FIG. 4. neither the shaded area nor the border of the
`scrolling area is actually displayed.
`Four corner regions 9, which are also predetermined
`areas. also exist within the view area. These regions are
`located within the view area, but outside of the scroll-
`ing area. Two adjacent borders of the corner regions
`are defined by the borders of the view area. The other
`two adjacent borders of the corner regions are defined
`by extending the scrolling area borders to meet the view
`area borders. The size and shape of the corner regions
`can also be defined as a fixed size or scaled rectangular
`area centered on the corner of the scrolling area. This
`allows the corner region to remain large enough to use
`even though the scrolling area is reduced to a small size.
`Once the 2 D scroll palette is activated, the functions
`that it provides become responsive to the movement of
`the cursor within the palette and responsive to the acti-
`vation of the cursor function key or signal generation
`means. The function performed depends upon the posi-
`tion of the cursor at the time the cursor function key is
`activated. The function selected remains active, regard-
`less of where the cursor is moved on the display screen.
`until the cursor function key is deactivated. In other
`embodiments,
`the selected function is automatically
`deselected if the cursor is moved outside of the palette.
`In this manner, the user may prevent a function from
`disturbing the configuration of information on the
`screen. This is especially useful in embodiments where
`the function selected is not actually performed until the
`cursor function key is deactivated.
`Various cursor symbols are provided to identify
`which function is selectable. When the cursor is posi-
`tioned outside of the 2 D scroll palette and the cursor
`function key was not activated within the palette, the
`cursor symbol displayed is defined by the operating
`system or other application software. In this situation,
`the control of the cursor is not under the direction of
`the present invention. If the cursor function key was
`activated within the palette,
`the cursor symbol dis-
`played is determined by the function selected and con-
`trolled by the scroll palette as long as the cursor func-
`tion key is active. This is true even if the cursor is posi-
`tioned outside of the palette after function activation.
`Within the bounds of the 2 D scroll palette,

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket