Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20100251108 A1
Publication typeApplication
Application numberUS 12/795,615
Publication date30 Sep 2010
Filing date7 Jun 2010
Priority date15 Mar 2002
Also published asUS7117450, US7735020, US20070016874
Publication number12795615, 795615, US 2010/0251108 A1, US 2010/251108 A1, US 20100251108 A1, US 20100251108A1, US 2010251108 A1, US 2010251108A1, US-A1-20100251108, US-A1-2010251108, US2010/0251108A1, US2010/251108A1, US20100251108 A1, US20100251108A1, US2010251108 A1, US2010251108A1
InventorsImran Chaudhri
Original AssigneeImran Chaudhri
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Method and apparatus for determining font attributes
US 20100251108 A1
Abstract
Methods and apparatuses for text formatting. In one exemplary embodiment of the present invention, a method to determine a font attribute includes: determining a first number and a second number; receiving input resulting from a sliding (or other repositioning method) of a thumb of a slider to a position; and determining a value for the font attribute from the position relative to the slider and the first and second numbers. In one example according to this aspect, the font attribute is one of: a) font size; b) boldness; c) italic angle; d) baseline offset; e) line spacing; and f) character spacing. At least one of the first number and the second number is adjusted in one example, when the thumb is pushed against one end of the slider. In another example according to this aspect, at least one of the first number and the second number is updated when a first input is received (e.g., selecting a value from a list, typing in a value; or pushing a thumb against one end of a slider), which determines the at least one of the first and second number.
Images(9)
Previous page
Next page
Claims(22)
1. A machine implemented method to determine a parameter, the method comprising:
displaying a user interface in a first mode in which a representation of a command is displayed, the representation of the command, when activated, causing the display of a list from which a parameter is selected, the list having at least a first parameter and a second parameter;
receiving an input to switch from either the first mode to a second mode or to switch from the second mode to the first mode;
displaying a user interface in a second mode in which a slider replaces the list displayed in the first mode, wherein the slider is displayed with a unitary thumb having a position along the slider between a position for a maximum parameter and a position for a minimum parameter, the thumb being movable relative to the slider in response to a user input to select a parameter, the position of the thumb determining a selection of a parameter from the list which includes the first parameter and the second parameter.
2. The method as in claim 1 wherein the input to switch comprises resizing a window.
3. The method as in claim 1 wherein the list further comprises one of a font attribute.
4. The method as in claim 3 wherein the font attribute is one of:
font size, boldness, italic angle, baseline offset, line spacing and character spacing.
5. The method as in claim 1 wherein the representation of the command is one of: a combination box, a pop-up menu, and a selection list.
6. A machine readable medium containing executable computer program instructions which when executed by a data processing system cause the system to perform a method comprising:
displaying a user interface in a first mode in which a representation of a command is displayed, the representation of the command, when activated, causing the display of a list from which a parameter is selected, the list having at least a first parameter and a second parameter;
receiving an input to switch from either the first mode to a second mode or to switch from the second mode to the first mode;
displaying a user interface in a second mode in which a slider replaces the list displayed in the first mode, wherein the slider is displayed with a unitary thumb having a position along the slider between a position for a maximum parameter and a position for a minimum parameter, the thumb being movable relative to the slider in response to a user input to select a parameter, the position of the thumb determining a selection of a parameter from the list which includes the first parameter and the second parameter.
7. The medium as in claim 6 wherein the input to switch comprises resizing a window.
8. The medium as in claim 6 wherein the list further comprises one of a font attribute.
9. The medium as in claim 8 wherein the font attribute is one of: font size, boldness, italic angle, baseline offset, line spacing and character spacing.
10. The medium as in claim 6 wherein the representation of the command is one of: a combination box, a pop-up menu, and a selection list.
11. A method for switching a device from a first mode to a second mode, the method comprising:
displaying multiple lists of parameters that are independent of each other;
receiving input to switch from the first mode to the second mode or to switch from the second mode to the first mode for one of the multiple lists of parameters;
replacing, in response to the receiving of the input, the first mode comprising a representation of a command which when activated causes the display of a list which allows selection of a value in the one of the multiple lists of parameters, with a second mode comprising a slider displaying a unitary thumb at a position along the slider that replaces the list displayed in the first mode, the slider having a position for a maximum value and a position for a minimum value, and the thumb being positionable along the slider in response to a user input in order to select a parameter in the one of the multiple lists of parameters;
wherein the position of the thumb selects a value for the one of the multiple lists of parameters.
12. The method as in claim 11 further comprising:
selecting one of the multiple lists of parameters, when a list of parameters is selected, an intermediate mode is displayed; the intermediate mode further comprising,
a slider with a thumb positioned along the slider with a maximum value of the list of parameters on one end of the slider and a minimum value of the list of parameters on another end, and
a mode selector to the first mode or the second mode, and
selecting one of the first mode or the second mode.
13. The method as in claim 11 further comprising resizing a window.
14. The method as in claim 11 wherein the list of parameters further comprises a font attribute.
15. The method as in claim 14 wherein the font attribute comprises one of: font size, boldness, italic angle, baseline offset, line spacing and character spacing.
16. The method as in claim 11 wherein the representation of the command comprises one of: a combination box, a pop-up menu, and a selection list.
17. A machine readable medium containing executable computer program instructions which when executed by a digital processing system cause the system to perform a method to determine a parameter, the method comprising:
displaying multiple lists of parameters that are independent of each other;
receiving input to switch from a first mode to a second mode or to switch from the second mode to the first mode for one of the multiple lists of parameters;
replacing, in response to the receiving of the input, the first mode comprising a representation of a command which when activated causes the display of a list which allows selection of a value in the one of the multiple lists of parameters, with a second mode comprising a slider displaying a unitary thumb at a position along the slider that replaces the list displayed in the first mode, the slider having a position for a maximum value and a position for a minimum value, and the thumb being positionable along the slider in response to a user input in order to select a parameter in one of the multiple lists of parameters;
wherein the position of the thumb selects a value for the one of the multiple lists of parameters.
18. The machine readable medium as in claim 17 further comprising:
selecting one of the multiple lists of parameters, when a list of parameters is selected, an intermediate mode is displayed; the intermediate mode further comprising,
a slider with a thumb positioned along the slider with a maximum value of the list of parameters on one end of the slider and a minimum value of the list of parameters on another end, and
a mode selector to the first mode or the second mode, and
selecting one of the first mode or the second mode.
19. The machine readable medium as in claim 17 further comprising resizing a window.
20. The machine readable medium as in claim 17 wherein the list of parameters further comprises one of a font attribute.
21. The machine readable medium as in claim 20 wherein the font attribute is comprises one of: font size, boldness, italic angle, baseline offset, line spacing and character spacing.
22. The machine readable medium as in claim 17 wherein the representation of the command comprises one of: a combination box, a pop-up menu, and a selection list.
Description
  • [0001]
    This application is a continuation of co-pending U.S. patent application Ser. No. 11/524,623, filed on Sep. 20, 2006, which is a continuation of U.S. patent application Ser. No. 10/100,878, filed on Mar. 18, 2002, now issued as U.S. Pat. No. 7,117,450, and also claims the benefit of the filing date of U.S. Provisional Application No. 60/364,974, filed on Mar. 15, 2002, entitled “Method and Apparatus for Determining Font Attributes” by the inventor Imran Chaudhri.
  • FIELD OF THE INVENTION
  • [0002]
    The invention relates to Graphical User Interfaces (GUI), and more particularly to a GUI for determining font attributes.
  • BACKGROUND OF THE INVENTION
  • [0003]
    Many software applications (e.g., a word processor, a drawing application, or others) can be used to manipulate text information. Graphical User Interfaces (GUI) help users to select various parameters in formatting text. Typically, a font panel or a text format tool bar is provided by a software application so that a user can interactively select or specify font attributes (e.g., font size, line spacing) in formatting text.
  • [0004]
    FIGS. 2-3 show a prior art method to adjust font attributes. In FIG. 2, font panel 200 is a movable window with title bar 201 and main panel 203. The main panel contains a number of standard GUI components, such as pop-up menu 205, combination box 209, option list 211 with checkboxes 221-223, and push buttons 231-233. Pop-up menu 205, when activated (e.g., by selecting with cursor, pointing the cursor at the menu and pressing a button such as a mouse's button, or by using a shortcut key, or by other means), shows a list of available fonts in a pop-up window, from which a user can select one by a conventional point and click method. Combination box (or combo box) 209 allows a user to type in a value to specify the size for the selected font, or activating a pop-up menu to select one value from a list of predetermined options. Checkboxes 221-223 are provide for the user to select a font style (e.g., bold, italic, underline, or combinations of bold, italic and underline). Once the user is satisfied with the selection, push button 231 can be pressed to apply the new values to the corresponding font attributes; or push button 232 can be pressed to apply the new values and dismiss the font panel; or push button 233 can be pressed to discard the selection and dismiss the font panel.
  • [0005]
    Once arrow 207 of combo box 209 is pressed by cursor 301 (e.g., clicking a button of a mouse while the cursor is on the arrow), pop-up window 303 appears, as shown in FIG. 3. A user can then point the cursor to a desired font size on the list and click on it to select the size. The predetermined list in pop-up window 303 provides a limited choice. When a desired font size is not available from the list, a user must type in the size in combo box 209.
  • [0006]
    While these methods provide convenient interfaces for selecting parameters to format text, more user friendly and effective methods are desirable, since formatting text is a frequently performed task for many, many users.
  • SUMMARY OF THE DESCRIPTION
  • [0007]
    Methods and apparatuses for text formatting are described here.
  • [0008]
    In one aspect of the present invention, a method to determine a font attribute includes: determining a first number and a second number; receiving input resulting from a sliding of a thumb of a slider to a position; and determining a value for the font attribute from the position relative to the slider and the first and second numbers. In one example according to this aspect, the font attribute is one of: a) font size; b) boldness; c) italic angle; d) baseline offset; e) line spacing; and f) character spacing. At least one of the first number and the second number is adjusted in one exemplary embodiment, when the thumb is pushed against one end of the slider. In another example according to this aspect, at least one of the first number and the second number is updated when a first input is received (e.g., selecting a value from a list, typing in a value; or pushing a thumb against one end of a slider), which determines the at least one of the first and second number. When an input for switching from a first mode to a second mode is received, the slider is replaced with a representation of a command (e.g., a combination box, a pop-up menu, a selection list, or others), which when activated allows selection of a value from a list (or entry of text in a text field).
  • [0009]
    The present invention includes apparatuses which perform these methods, including data processing systems which perform these methods and computer readable media which when executed on data processing systems cause the systems to perform these methods.
  • [0010]
    Other features of the present invention will be apparent from the accompanying drawings and from the detailed description which follow.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0011]
    The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings in which like references indicate similar elements.
  • [0012]
    FIG. 1 shows a block diagram example of a data processing system which may be used with the present invention.
  • [0013]
    FIGS. 2-3 show a prior art method to adjust font attributes.
  • [0014]
    FIGS. 4-7 show examples of methods to adjust font attributes according to one embodiment of the present invention.
  • [0015]
    FIGS. 8-9 show alternative methods to adjust font attributes according to alternative embodiments of the present invention.
  • [0016]
    FIGS. 10-11 show methods to set maximum and minimum values for a slider in one embodiment of the invention.
  • [0017]
    FIG. 12 shows an example of scaling a slider according to one embodiment of the present invention.
  • [0018]
    FIGS. 13-14 show methods to format text according to embodiments of the present invention.
  • [0019]
    FIG. 15 shows a flow chart of a method to adjust font attributes according to one embodiment of the present invention.
  • [0020]
    FIG. 16 shows a detailed flow chart of a method to adjust font attributes according to one embodiment of the present invention.
  • DETAILED DESCRIPTION
  • [0021]
    The following description and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of the present invention. However, in certain instances, well known or conventional details are not described in order to avoid obscuring the description of the present invention.
  • [0022]
    FIG. 1 shows one example of a typical computer system which may be used with the present invention. Note that while FIG. 1 illustrates various components of a computer system, it is not intended to represent any particular architecture or manner of interconnecting the components as such details are not germane to the present invention. It will also be appreciated that network computers and other data processing systems which have fewer components or perhaps more components may also be used with the present invention. The computer system of FIG. 1 may, for example, be an Apple Macintosh computer.
  • [0023]
    As shown in FIG. 1, the computer system 101, which is a form of a data processing system, includes a bus 102 which is coupled to a microprocessor 103 and a ROM 107 and volatile RAM 105 and a non-volatile memory 106. The microprocessor 103, which may be a G3 or G4 microprocessor from Motorola, Inc. or IBM is coupled to cache memory 104 as shown in the example of FIG. 1. The bus 102 interconnects these various components together and also interconnects these components 103, 107, 105, and 106 to a display controller and display device 108 and to peripheral devices such as input/output (I/O) devices which may be mice, keyboards, modems, network interfaces, printers, scanners, video cameras and other devices which are well known in the art. Typically, the input/output devices 110 are coupled to the system through input/output controllers 109. The volatile RAM 105 is typically implemented as dynamic RAM (DRAM) which requires power continually in order to refresh or maintain the data in the memory. The non-volatile memory 106 is typically a magnetic hard drive or a magnetic optical drive or an optical drive or a DVD RAM or other type of memory systems which maintain data even after power is removed from the system. Typically, the non-volatile memory will also be a random access memory although this is not required. While FIG. 1 shows that the non-volatile memory is a local device coupled directly to the rest of the components in the data processing system, it will be appreciated that the present invention may utilize a non-volatile memory which is remote from the system, such as a network storage device which is coupled to the data processing system through a network interface such as a modem or Ethernet interface. The bus 102 may include one or more buses connected to each other through various bridges, controllers and/or adapters as is well known in the art. In one embodiment the I/O controller 109 includes a USB (Universal Serial Bus) adapter for controlling USB peripherals.
  • [0024]
    It will be apparent from this description that aspects of the present invention may be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other data processing system in response to its processor, such as a microprocessor, executing sequences of instructions contained in a memory, such as ROM 107, volatile RAM 105, non-volatile memory 106, cache 104 or a remote storage device. In various embodiments, hardwired circuitry may be used in combination with software instructions to implement the present invention. Thus, the techniques are not limited to any specific combination of hardware circuitry and software nor to any particular source for the instructions executed by the data processing system. In addition, throughout this description, various functions and operations are described as being performed by or caused by software code to simplify description. However, those skilled in the art will recognize what is meant by such expressions is that the functions result from execution of the code by a processor, such as the microprocessor 103.
  • [0025]
    At least one embodiment of the present invention seeks to utilize sliders to set various font attributes for formatting text.
  • [0026]
    FIGS. 4-7 show examples of methods to adjust font attributes according to one embodiment of the present invention. Window 400 in FIG. 4 contains title bar 401 and main panel 411. Title bar 401 contains in one exemplary embodiment icon buttons 402, 403 and 404 for closing the window, minimizing the window, and maximizing the window. Main panel 411 contains labels 441-444, showing the font attributes that can be changed using the selection lists below them. Selection lists 451-454 shows available options for the corresponding font attributes. Some of the option lists (e.g., list 452, 453, or 454) contain more items than that can be simultaneously made visible in the corresponding display areas. Thus, the scroll bar (e.g., scroll bar 461) is provided so that a user can scroll to see different parts of the list in the displayed area (e.g., 454). For example, a user may pull down thumb 465 to reveal available font sizes other than those currently displayed in area 454. The user may pull down thumb 465 by, for example, placing a cursor over the thumb, selecting the thumb (by pressing down on a mouse button while the cursor is over the thumb) and “dragging” the thumb down (by moving the mouse while keeping the mouse button pressed). The size of selected text may be changed dynamically and interactively when the user repositions thumb 465. Thus the user can see the result, on the selected text, of changing the position of the thumb as the user causes the thumb to be moved. Note that such scrollable list may be scrolled by means other than a scroll bar. For example, a scrollable list may be scrolled by arrow icons, or by arrow keys, or by placing a cursor near the boundary of the display area.
  • [0027]
    Pop-down menu 413, when activated by cursor 415, brings up menu list 421 for further options. When menu item “Edit Font Size . . . ” is selected, dialog window 500 as shown in FIG. 5 appears.
  • [0028]
    Window 500 contains radio buttons 503 and 505 for selecting whether to display the font size options as a fixed list (505) or an adjustable slider (503). When radio button 503 is pressed, the font size option is displayed as slider 515. Text entries 511 and 513 show the maximum and minimum font sizes corresponding to the sizes selected when the thumb 517 is at the top and the bottom of slider 515 respectively. A user can type in customized limits for the maximum and minimum font sizes in text entries 511 and 513. Alternatively, combo boxes can be used in the places of text entries 511 and 513 so that a user can simply select customized limits from predetermined lists. In another embodiment of the present invention, the maximum and minimum font size can be changed by pressing thumb 517 against one end of the slider. More details on this aspect are described below with FIGS. 10 and 11. When thumb 517 is moved to one position on slider 515, a selected font sized is computed from the position. In one embodiment of the present invention, a linear interpolation is used to determine the selected font size from the position of the thumb relative to the ends of the slider using the maximum and minimum font sizes, which correspond to the font sizes when the thumb is at the ends of the slider. In another embodiment of the present invention, the maximum and minimum sizes determine a list of option values; and the position of thumb 517 is used to select one from the list. When the user uses the maximum and the minimum to define a smaller range of font size, the selected font size changes smoothly as the thumb moves; when the user uses the maximum and minimum to define a larger range of font size, the slider can provide size options in a wider range with a lower resolution.
  • [0029]
    When the user is satisfied with the setting, push button 501 can be pressed to activate the setting and dismiss window 500. Since option 503 is selected to display font size as an adjustable slider, window 400 in FIG. 4 becomes window 600 in FIG. 6. Font size selection list 454 is converted into font size selection slider 603. Text entry 601 displays the currently selected font size, as determined from the position of thumb 605 and the maximum and minimum sizes specified previously in text entries 511 and 513 (in FIG. 5). Note that, a combo box (which includes a list of selectable items and a text entry field into which a user may enter text) may be used in the place of text entry 601 to allow a user to select from a pop-up menu; or, a label may be used in the place of text entry 601 to prevent the user from typing in a value.
  • [0030]
    Corner 463 of window 600 in FIG. 6 (or corner 463 of window 400 in FIG. 4) can be dragged by a cursor to resize the window. When window 600 (or window 400) is enlarged, larger display areas are available to the selections lists (e.g., lists 451, 452, and 454) and slider 603. Thus, more options can be shown in the displayed area simultaneously. Since the slider is longer, it is easier to control the movement of thumb 605. When window 600 (or window 400) is reduced to a smaller height, the selection list and the slider can be resized to use smaller display areas. When the height of the window is smaller than a predetermined value, selection lists (e.g., lists 451-453) and the slider are not effective in displaying options. Thus, they can be converted into pop-up menus and a combo box, as shown in FIG. 7. Alternatively, a button (e.g., icon button 405) can be used to switch from window 600 in a normal mode to window 700 in a mini mode in FIG. 7. Similarly, an optional button 701 on window 700 in FIG. 7 can be pressed to switching window 700 in the mini mode back to window 600 in the normal mode; or, cursor 703 can drag the corner of window 700 to enlarge the window to the normal mode.
  • [0031]
    Window 700 in FIG. 7 has pop-up menus 751-753 for accessing selection lists 451-453. When activated, combo box 754 can bring up a scrollable selection list in a popup window, or a slider in a dialog window (e.g., window 500 or 800).
  • [0032]
    FIGS. 8-9 show alternative methods to adjust font attributes according to alternative embodiments of the present invention. In addition to slider 803, window 800 in FIG. 8 contains arrows 807 and 809. Arrows 807 and 809 are used to scroll thumb 805 in the directions of the arrows. In one embodiment of the present invention, small changes of predetermined amount can be applied to the current selected value by clicking the arrows, providing a way to fine tune the selected value. Label 801 follows the movement of thumb 805 to display the current selected value.
  • [0033]
    Similarly, window 900 in FIG. 9 shows both the maximum and minimum values in text entries 913 and 911. Slider 901 and scroll arrows 907 and 905 are provided for selecting a value. The position of thumb 903 of slider 901 and the maximum and minimum values, as shown in text entries 911 and 913, determine the current value of the font size.
  • [0034]
    FIGS. 10-11 show methods, which may be used in some embodiments, to set maximum and minimum values for a slider. FIG. 10 shows examples of adjusting the minimum value using the thumb of a slider. When thumb 1009 is pressed against the lower end of slider 1005 by cursor 1007 (e.g., attempting to pull thumb below the lower end of the slider, or pressing down and holding one button of a mouse when the cursor is on the thumb and the thumb is at the lower end of the slider), the minimum value of the slider starts to decrease, as shown in entry 1013. When cursor 1017 continues to press thumb 1019 against the lower end of slider 1015, the minimum value continues to decrease, at shown in entry 1023. In one embodiment of the present invention, the minimum value pushed to by the thumb can be brought back to a predetermined value by some input, such as “double clicking”, on the thumb, while the thumb is at the lower end of the slider. For example, after cursor 1027 double clicks (e.g., rapidly pressing a mouse's button twice in succession) thumb 1029 while thumb 1029 is at the lower end of the slider, the minimum value in entry 1023 is brought back to the default value in entry 1003. An alternative input, such as a keystroke (e.g., “d” for default) may be used to restore the default value. In one embodiment of the present invention, when the thumb is pressed against the lower end of the slider to reduce the minimum value, the maximum value is not changed, as shown by entries 1001, 1011, and 1021. In anther embodiment of the present invention, when the thumb is pressed against the lower end of the slider, the slider adjusts the maximum value automatically to avoid an excessively large size range. When the size range is limited, the selected value changes smoothly when the position of the thumb changes, which makes it easier to select a desirable value.
  • [0035]
    Similarly, FIG. 11 shows examples of adjusting the maximum value of a slider using the thumb of the slider. When thumb 1109 is moved between the upper and lower ends of slider 1105, the maximum and the minimum values in entries 1101 and 1103 are not changed. When thumb 1119 is moved to the upper end of slider 1115, the maximum and the minimum values remain the same. When the thumb is pressed against the upper end of the slider, the maximum value increases, as shown in entry 1121. To avoid an accidental change in the maximum value, it may be required that the thumb presses the upper end “hard” enough to start a change (e.g., pressing longer than a threshold time, or moving a mouse for a significant distance while pressing the upper end). Similar to adjusting the minimum value, the pushed-up value may be relaxed by an input (e.g., double clicking) to the thumb; and, the minimum value may be automatically adjusted to limit the range when the maximum value is pushed up.
  • [0036]
    FIG. 12 shows an example of scaling a slider according to one embodiment of the present invention. View 1201 displays labels (or text entries) 1207 and 1209, slider 1203. The value displayed in label 1207 (or 1209) corresponds to the minimum (or the maximum) value for the slider when the thumb is at the top (or the bottom) position of the slider. From the position of thumb 1202 and the maximum and minimum values displayed on labels 1207 and 1209, the slider determines the current value for display on label 1205. Thumb 1202 can be pulled along slider 1203 to change the current value. When view 1201 is resized to view 1211, slider 1213 and thumb 1212 are resized so that all components are visible within view 1211. When view 1211 is further resized to view 1221, the sizes of slider 1223 and thumb 1222 are further reduced. When view 1221 is further resized to view 1231, the size of slider 1233 is reduced; and no thumb is visible. In view 1231 (as well as in views 1201, 1211, 1221), scroll arrows (1237 and 1239) can be use to scroll and to select a value.
  • [0037]
    FIGS. 13-14 show methods to format text according to embodiments of the present invention. FIG. 13 shows a format window containing sliders 1311-1316 for adjusting font size, boldness, italic angle, character spacing, position (baseline offset) and line spacing, as indicated by the corresponding labels 1301-1306. Character spacing (inter-item spacing) may be adjusted according to a percentage of a normal spacing (or according to a fixed dimension). Similarly, line spacing may be adjusted according to a percentage of a normal spacing, or according to a specified dimension. The baseline of a character may be increased to raise the character to a superscript position or higher, or be decreased to lower it to a subscript position or lower. Further, a slider may be used to push one or more characters forward or backward from a normal position to form special effects. In one embodiment of the present invention, a user can interactively and dynamically change a font attribute (e.g., font size, boldness, italic angle, line spacing, baseline offset, character spacing) of selected text using a slider.
  • [0038]
    FIG. 14 shows another type of slider for a format window according to one embodiment of the present invention. Text entries (or combo boxes) 1421-1426 are used to receive type-in values and to display the currently selected values. Sliders 1411-1416 can be used to adjust the font attributes by moving the corresponding thumbs. Further, the maximum and minimum values of the sliders can be changed accordingly when the thumbs are pressed against the ends of the sliders, as described above with FIGS. 10-11.
  • [0039]
    FIG. 15 shows a flow chart of a method to adjust font attributes according to one embodiment of the present invention. Operation 1501 determines default values for a first number and a second number (e.g., the maximum and minimum values of a range). Operation 1503 receives input (e.g., typing a value, selecting one from a list, pushing a thumb against one end of a slider) to change the first number. Operation 1505 receives input (e.g., typing a value, selecting one from a list, pushing a thumb against one end of a slider) to change the second number. Operation 1507 receives input resulting from sliding a thumb of a slider to a position; and operation 1509 determines a font attribute (e.g., font size, boldness, italic angle, line spacing, baseline offset, character spacing) from the position of the thumb of the slider and the first and second numbers.
  • [0040]
    FIG. 16 shows a detailed flow chart of a method to adjust font attributes according to one embodiment of the present invention. Operation 1601 receives input (e.g., resizing a window, pushing a button, selecting an option) selecting a mode to control a font attribute (e.g., font size, boldness, italic angle, line spacing, baseline offset, character spacing). When operation 1603 determines that a slider mode is selected, operation 1611 displays a slider with a maximum and minimum associated with the slider. Optionally, operation 1613 receives input for new values for the maximum and the minimum. After operation 1615 receives input resulting from a sliding of the thumb of the slider, operation 1617 determines a value for the font attribute according to the position of the thumb and the maximum and the minimum. When operation 1603 determines that a slider mode is not selected, operation 1605 displays a predetermined list. After operation 1607 receives input selecting an item from the predetermined list, operation 1609 determines a value for the font attribute according to the selected item. It will be appreciated that sliding the movable thumb (e.g., by dragging the thumb) along the slider control is one of several different ways of repositioning the thumb (sometimes also referred to as a scroller) along the line of the slider control. Other ways to reposition the thumb include pressing at least one key (e.g., the up or down arrow key) on a keyboard or selecting, with a cursor and a mouse button, a position along the linear region. These alternative ways to reposition the thumb may be used instead of, or in addition to, the sliding of operation 1615 or 1507 and may be used with the various different embodiments shown and described herein. It will also be understood that dragging the thumb involves positioning a cursor (e.g., through a mouse) over (or near) the thumb and selecting the thumb (pressing a button such as a mouse's button while the cursor is over the thumb to select the thumb) and maintaining the selection (e.g., by keeping the button pressed) while moving the cursor to thereby cause the thumb to move (usually with the cursor) along the slider's line. The thumb may also be moved by selecting a position on the slider's line; this may involve pointing the cursor to a new position on the line and pressing a button (e.g., a mouse's button), thereby causing the thumb to move to the new position.
  • [0041]
    In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of the invention as set forth in the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.
Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US4464652 *19 Jul 19827 Aug 1984Apple Computer, Inc.Cursor control device for use with display systems
US4555775 *7 Oct 198226 Nov 1985At&T Bell LaboratoriesDynamic generation and overlaying of graphic windows for multiple active program storage areas
US4653020 *17 Oct 198324 Mar 1987International Business Machines CorporationDisplay of multiple data windows in a multi-tasking system
US4688167 *27 Sep 198418 Aug 1987Wang Laboratories, Inc.Screen manager for data processing system
US4689737 *27 Apr 198425 Aug 1987Grant Richard BIntegrated environment computer system control structure with natural language interface
US4712191 *22 Jul 19838 Dec 1987U.S. Philips CorporationDisplay system with nested information display
US4769636 *12 Aug 19866 Sep 1988Hitachi, Ltd.Display control method for multi-window system
US4780709 *10 Feb 198625 Oct 1988Intel CorporationDisplay processor
US4783648 *27 Jun 19868 Nov 1988Hitachi, Ltd.Display control system for multiwindow
US4819189 *21 May 19874 Apr 1989Kabushiki Kaisha ToshibaComputer system with multiwindow presentation manager
US4831556 *15 Jul 198716 May 1989Kabushiki Kaisha ToshibaDevice capable of displaying window size and position
US4862389 *25 Sep 198729 Aug 1989Kabushiki Kaisha ToshibaInformation processor with multi-window display function
US4899136 *28 Apr 19866 Feb 1990Xerox CorporationData processor having a user interface display with metaphoric objects
US5008853 *2 Dec 198716 Apr 1991Xerox CorporationRepresentation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
US5040131 *3 Nov 198913 Aug 1991International Business Machines CorporationGraphical processing
US5060170 *9 Aug 198922 Oct 1991International Business Machines Corp.Space allocation and positioning method for screen display regions in a variable windowing system
US5107443 *7 Sep 198821 Apr 1992Xerox CorporationPrivate regions within a shared workspace
US5140677 *11 May 199018 Aug 1992International Business Machines CorporationComputer user interface with window title bar mini-icons
US5140678 *4 May 199018 Aug 1992International Business Machines CorporationComputer user interface with window title bar icons
US5146556 *27 Feb 19918 Sep 1992Next Computer, Inc.System and method for managing graphic images
US5202828 *15 May 199113 Apr 1993Apple Computer, Inc.User interface system having programmable user interface elements
US5293476 *12 Mar 19918 Mar 1994Hewlett-Packard Co.System for entering and modifying variable names for terminals of icons in an iconic programming system
US5305435 *7 May 199319 Apr 1994Hewlett-Packard CompanyComputer windows management system and method for simulating off-screen document storage and retrieval
US5313575 *14 May 199317 May 1994Hewlett-Packard CompanyProcessing method for an iconic programming system
US5325481 *12 Apr 199128 Jun 1994Hewlett-Packard CompanyMethod for creating dynamic user panels in an iconic programming system
US5343409 *29 Aug 199130 Aug 1994Hewlett-Packard CompanySystem and method for probing object resources in a window server environment
US5345550 *23 Dec 19926 Sep 1994International Business Machines CorporationUser-modifiable popup menus for object oriented behavior
US5347628 *18 Jan 199013 Sep 1994International Business Machines CorporationMethod of graphically accessing electronic data
US5347678 *14 Oct 199320 Sep 1994Williams William HHead assembly for a vacuum cleaning apparatus having dual-individually floating heads
US5371844 *20 Mar 19926 Dec 1994International Business Machines CorporationPalette manager in a graphical user interface computer system
US5371846 *16 Oct 19916 Dec 1994International Business Machines CorporationNon-linear scroll bar
US5384911 *10 May 199424 Jan 1995International Business Machines CorporationMethod of transferring programs from action oriented GUI paradigm to object oriented GUI paradigm
US5386564 *24 Feb 199331 Jan 1995Hewlett-Packard CompanyConversion of data and objects across classes in an object management system
US5412776 *23 Dec 19922 May 1995International Business Machines CorporationMethod of generating a hierarchical window list in a graphical user interface
US5414838 *11 Jun 19929 May 1995Logical Information MachineSystem for extracting historical market information with condition and attributed windows
US5422993 *17 Dec 19916 Jun 1995International Business Machines CorporationMethod and system for performing direct manipulation operations in a computer system
US5488685 *27 Jan 199330 Jan 1996Apple Computer, Inc.Method and apparatus for providing visual cues in a graphic user interface
US5504917 *14 Jan 19942 Apr 1996National Instruments CorporationMethod and apparatus for providing picture generation and control features in a graphical data flow environment
US5533180 *7 Apr 19942 Jul 1996Top Computech Co. Ltd.Method of manipulating fonts containing large numbers of characters
US5572647 *4 Nov 19945 Nov 1996International Business Machines CorporationVisibility seeking scroll bars and other control constructs
US5579469 *19 Oct 199526 Nov 1996Lucent Technologies Inc.Global user interface
US5583984 *11 Jun 199310 Dec 1996Apple Computer, Inc.Computer system with graphical user interface including automated enclosures
US5615347 *5 May 199525 Mar 1997Apple Computer, Inc.Method and apparatus for linking images of sliders on a computer display
US5657049 *7 Jun 199512 Aug 1997Apple Computer, Inc.Desk drawer user interface
US5680562 *7 Jun 199521 Oct 1997Apple Computer, Inc.Computer system with graphical user interface including automated enclosures
US5706448 *29 Dec 19946 Jan 1998International Business Machines CorporationMethod and system for manipulating data through a graphic user interface within a data processing system
US5710899 *10 Feb 199520 Jan 1998Lucent Technologies Inc.Interactive selectors for selecting subsets of a set of values
US5714971 *30 Nov 19943 Feb 1998Apple Computer, Inc.Split bar and input/output window control icons for interactive user interface
US5721847 *3 Feb 199724 Feb 1998Microsoft CorporationMethod and system for linking controls with cells of a spreadsheet
US5737737 *19 May 19937 Apr 1998Canon Kabushiki KaishaData management method and apparatus
US5745096 *18 Oct 199628 Apr 1998Apple Computer, Inc.Desk drawer user interface
US5751285 *17 Oct 199512 May 1998Sharp Kabushiki KaishaParameter processing device for setting a parameter value using a movable slide operator and including means for fine-adjusting the parameter value
US5754174 *4 Nov 199619 May 1998Starfish Software, Inc.User interface with individually configurable panel interfaces for use in a computer system
US5767834 *19 Mar 199716 Jun 1998Binar Graphics, Inc.Method of resetting a computer video display mode
US5790820 *7 Jun 19954 Aug 1998Vayda; MarkRadial graphical menuing system
US5790855 *31 Jan 19974 Aug 1998Sun Microsystems, Inc.System, method and article of manufacture for type checking appropriateness of port connection and variable type matching in connection with multiport object-oriented components
US5825348 *8 Jan 199720 Oct 1998Apple Computer, Inc.Desk drawer user interface
US5828370 *1 Jul 199627 Oct 1998Thompson Consumer Electronics Inc.Video delivery system and method for displaying indexing slider bar on the subscriber video screen
US5828374 *14 Mar 199727 Oct 1998Apple Computer, Inc.Method and apparatus for selecting characters along a scroll bar with a slider
US5847706 *30 Nov 19958 Dec 1998Hewlett Packard CompanySizeable window for tabular and graphical representation of data
US5859644 *30 Sep 199412 Jan 1999Apple Computer, Inc.System for providing switchable color paradigms in computers
US5883623 *21 Apr 199716 Mar 1999Borland International, Inc.System and methods for building spreadsheet applications
US5953733 *21 Jun 199614 Sep 1999Cybergraphic Systems Ltd.Electronic publishing system
US6037939 *27 Sep 199614 Mar 2000Sharp Kabushiki KaishaMethod for enabling interactive manipulation of data retained in computer system, and a computer system for implementing the method
US6061061 *8 Jul 19979 May 2000Apple Computer, Inc.Computer system with graphical user interface including spring-loaded enclosures
US6069623 *19 Sep 199730 May 2000International Business Machines CorporationMethod and system for the dynamic customization of graphical user interface elements
US6104398 *13 Feb 199815 Aug 2000International Business Machines CorporationFast and efficient means for grouped object selection and deselection
US6147674 *25 Apr 199714 Nov 2000Immersion CorporationMethod and apparatus for designing force sensations in force feedback computer applications
US6204846 *16 Feb 199920 Mar 2001International Business Machines CorporationData set user interface control for use in accessing information in a computer
US6222541 *20 Jan 199824 Apr 2001International Business Machines CorporationMethod and apparatus for fast-path location and selection of links
US6232972 *17 Jun 199815 May 2001Microsoft CorporationMethod for dynamically displaying controls in a toolbar display based on control usage
US6288720 *30 Jun 199711 Sep 2001Microsoft CorporationMethod and system for adding application defined properties and application defined property sheet pages
US6300967 *25 Apr 20009 Oct 2001Sun Microsystems, Inc.Method and apparatus for providing feedback while scrolling
US6307545 *5 May 200023 Oct 2001Apple Computer, Inc.Computer system with graphical user interface including spring-loaded enclosures
US6317739 *19 Nov 199813 Nov 2001Sharp Kabushiki KaishaMethod and apparatus for data retrieval and modification utilizing graphical drag-and-drop iconic interface
US6348936 *28 May 199819 Feb 2002Sun Microsystems, Inc.Method and apparatus for graphical selection of data
US6425120 *14 Jan 200023 Jul 2002Softwire Technology LlcRepeating program object for use with a graphical program-development system
US6448985 *5 Aug 199910 Sep 2002International Business Machines CorporationDirectory tree user interface having scrollable subsections
US6473104 *4 Aug 199929 Oct 2002International Business Machines CorporationSlider control
US6512531 *9 Apr 199928 Jan 2003Adobe Systems IncorporatedFont navigation tool
US6538665 *15 Apr 199925 Mar 2003Apple Computer, Inc.User interface for presenting media information
US6546397 *2 Dec 19998 Apr 2003Steven H. RempellBrowser based web site generation tool and run time engine
US6597378 *18 Jan 200022 Jul 2003Seiko Epson CorporationDisplay device, portable information processing apparatus, information storage medium, and electronic apparatus
US6601057 *30 Oct 200029 Jul 2003Decentrix Inc.Method and apparatus for generating and modifying multiple instances of an element of a web site
US6621508 *18 Jan 200016 Sep 2003Seiko Epson CorporationInformation processing system
US6642944 *3 Aug 19994 Nov 2003Apple Computer, Inc.Computer system with graphical user interface including drawer-like windows
US6734882 *29 Sep 200011 May 2004Apple Computer, Inc.Combined menu-list control element in a graphical user interface
US6747678 *15 Jun 20008 Jun 2004Yamaha CorporationAudio system, its control method and storage medium
US6785676 *7 Feb 200131 Aug 2004International Business Machines CorporationCustomer self service subsystem for response set ordering and annotation
US6867764 *22 Mar 200115 Mar 2005Sony CorporationData entry user interface
US6922816 *24 Aug 200026 Jul 2005International Business Machines CorporationMethod and system for adjusting settings with slider controls having variable sensitivity
US6928621 *25 Sep 20019 Aug 2005Apple Computer, Inc.System with graphical user interface including automatic enclosures
US6957366 *28 Sep 200118 Oct 2005Bellsouth Intellectual Property CorporationSystem and method for an interactive web-based data catalog for tracking software bugs
US6957395 *4 Jan 200018 Oct 2005Apple Computer, Inc.Computer interface having a single window mode of operation
US7080324 *11 Oct 200018 Jul 2006Agilent Technologies, Inc.Control for a graphical user interface supporting coupled variables and method of operation thereof
US7103851 *1 Jul 20025 Sep 2006Denny JaegerScroll bar for computer display
US7222308 *31 Jul 200222 May 2007Sap AktiengesellschaftSlider bar scaling in a graphical user interface
US7380216 *30 Nov 200027 May 2008International Business Machines CorporationZoom-capable scrollbar
US7549126 *21 Jul 200516 Jun 2009Apple Inc.Computer system with graphical user interface including spring-loaded enclosures
US8302127 *24 Sep 200130 Oct 2012Thomson LicensingSystem and method for personalized TV
US20010040553 *10 Jul 200115 Nov 2001Immersion CorporationIsometric haptic feedback interface
US20020010816 *18 Dec 199724 Jan 2002Patrick H. TomosonComputer peripheral switching device
US20020057263 *23 Mar 200116 May 2002Keely Leroy B.Simulating gestures of a pointing device using a stylus and providing feedback thereto
US20020149619 *12 Feb 200117 Oct 2002Perot Systems CorporationSystem and method for constructing a graphical user interface
US20020154173 *18 Apr 200124 Oct 2002Etgen Michael P.Graphical user interface for direct control of display of data
US20030063130 *6 Sep 20013 Apr 2003Mauro BarbieriReproducing apparatus providing a colored slider bar
US20030128229 *8 Jan 200210 Jul 2003International Business Machines CorporationAllowing a user to determine whether to view web content based on cost
US20030171877 *12 Feb 200211 Sep 2003Adeyinka AdedejiMethod, system, storage medium, and data signal for supplying a multi-component composition
US20100005420 *7 Jul 20087 Jan 2010International Business Machines CorporationNotched slider control for a graphical user interface
USRE32632 *20 Dec 198529 Mar 1988Apple Computer, Inc.Display system
JPH08160627A * Title not available
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US8918732 *9 Aug 200823 Dec 2014Hewlett-Packard Development Company, L.P.Program object properties defined by object space
US922577517 Nov 200829 Dec 2015Brocade Communications Systems, Inc.Global server load balancing
US20110126140 *9 Aug 200826 May 2011Oleg Vladimirovich DanilovProgram Object Properties Defined By Object Space
US20140229897 *14 Feb 201314 Aug 2014Honeywell International Inc.Slider control for graphical user interface and method for use thereof
Classifications
U.S. Classification715/269, 715/800, 715/833
International ClassificationG06F17/00, G06F3/048
Cooperative ClassificationG06F3/04847
European ClassificationG06F3/0484P