U.S. patent application number 11/673671 was filed with the patent office on 2007-08-16 for graphic user interface control object stylization.
This patent application is currently assigned to FREEDOM SCIENTIFIC, INC.. Invention is credited to Ralph Ernest Ocampo, Garald L. Voorhees.
Application Number | 20070192718 11/673671 |
Document ID | / |
Family ID | 38372097 |
Filed Date | 2007-08-16 |
United States Patent
Application |
20070192718 |
Kind Code |
A1 |
Voorhees; Garald L. ; et
al. |
August 16, 2007 |
Graphic User Interface Control Object Stylization
Abstract
A method of modifying individual graphic user interface controls
according to predefined settings including the steps of identifying
at least one graphic user interface control object with a plurality
of states and/or event handlers, assigning a user-selectable visual
modification to the control object, associating the visual
modification with a state of the control object, saving the
assignment to a configuration file and applying the visual
modification to the control object upon display of the control
object in the associated state or upon firing of the associated
event handler.
Inventors: |
Voorhees; Garald L.; (St.
Petersburg, FL) ; Ocampo; Ralph Ernest; (St.
Petersburg, FL) |
Correspondence
Address: |
SMITH HOPEN, PA
180 PINE AVENUE NORTH
OLDSMAR
FL
34677
US
|
Assignee: |
FREEDOM SCIENTIFIC, INC.
St. Petersburg
FL
|
Family ID: |
38372097 |
Appl. No.: |
11/673671 |
Filed: |
February 12, 2007 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60766782 |
Feb 10, 2006 |
|
|
|
Current U.S.
Class: |
715/765 |
Current CPC
Class: |
G06F 9/451 20180201;
G06F 3/0481 20130101; G06F 40/109 20200101; G06F 40/103
20200101 |
Class at
Publication: |
715/765 |
International
Class: |
G06F 3/048 20060101
G06F003/048 |
Claims
1. A method of modifying individual graphic user interface controls
according to predefined settings comprising the steps of:
identifying at least one graphic user interface control object with
a plurality of states; exposing substantially all of the control
object's visual properties; assigning a user-selectable visual
modification to the control object's visual properties; associating
the visual modification with a state of the control object; saving
the assignment to a default configuration file; and applying the
visual modification to the control object upon display of the
control object in the associated state.
2. The method of claim 1 further comprising the step of toggling
the visual modification on and off responsive to user
preference.
3. The method of claim 1 wherein the graphic user interface control
object is selected from the group consisting of textboxes, buttons,
dropdown lists, list boxes, combo boxes, checkboxes, checkbox
lists, radio buttons, and radio button lists.
4. The method of claim 1 wherein the state of the control object is
selected from the group consisting of checked, unchecked, selected,
enabled, disabled, visible, and invisible.
5. The method of claim 1 wherein the visual modification is applied
to control object properties selected from the group consisting of
font size, font stylization, font name, font color, foreground
color, background color, border color, border thickness, border
style and text alignment.
6. The method of claim 1 further comprising the steps of:
identifying a software application that displays at least one
control object; and saving the assignment to an
application-specific configuration file associated with the
identified software application; applying the application-specific
configuration file for an associated executed software application;
and defaulting to the default configuration file for a software
application lacking an associated application-specific
configuration file.
7. A method of modifying individual graphic user interface controls
according to predefined settings comprising the steps of:
identifying at least one graphic user interface control object;
assigning a user-selectable visual modification to the control
object; associating the visual modification with an event handler;
saving the assignment to a default configuration file; and applying
the visual modification to the control object responsive to the
firing of the associated event.
8. The method of claim 7 further comprising the step of toggling
the visual modification on and off responsive to user
preference.
9. The method of claim 7 wherein the graphic user interface control
object is selected from the group consisting of textboxes, buttons,
dropdown lists, list boxes, combo boxes, checkboxes, checkbox
lists, radio buttons, and radio button lists.
10. The method of claim 7 wherein the visual modification is
applied to control object properties selected from the group
consisting of font size, font stylization, font name, font color,
foreground color, background color, border color, border thickness,
border style and text alignment.
11. The method of claim 7 further comprising the steps of:
identifying a software application that displays at least one
control object; and saving the assignment to an
application-specific configuration file associated with the
identified software application; applying the application-specific
configuration file for an associated executed software application;
and defaulting to the default configuration file for a software
application lacking an associated application-specific
configuration file.
12. A method of applying visual indicia to individual graphic user
interface controls comprising the steps of: identifying at least
one graphic user interface control object with a plurality of
states; assigning a user-selectable visual overlay to the control
object; associating the visual overlay with a state of the control
object; saving the assignment to a default configuration file; and
applying the visual overlay to the control object upon display of
the control object in the associated state.
13. The method of claim 12 further comprising the step of toggling
the visual overlay on and off responsive to user preference.
14. The method of claim 12 wherein the graphic user interface
control object is selected from the group consisting of textboxes,
buttons, dropdown lists, list boxes, combo boxes, checkboxes,
checkbox lists, radio buttons, and radio button lists.
15. The method of claim 12 wherein the state of the control object
is selected from the group consisting of checked, unchecked,
selected, enabled, disabled, visible, and invisible.
16. The method of claim 12 wherein the visual overlay is applied to
the control object is selected from the group consisting of
vector-based predefined geometric shapes and bitmap images.
17. The method of claim 16 wherein the visual overlay is composted
with its background according to a predetermined algorithm.
18. The method of 16 wherein the visual overlay further comprises
user-adjustable properties selected from the group consisting of
shape, dimensions, relative position, opacity, hue, saturation,
contrast, brightness, midtone, tint, animation and bitmap
image.
19. The method of claim 12 further comprising the steps of:
identifying a software application that displays at least one
control object; and saving the assignment to an
application-specific configuration file associated with the
identified software application; applying the application-specific
configuration file for an associated executed software application;
and defaulting to the default configuration file for a software
application lacking an associated application-specific
configuration file.
20. A method of applying visual indicia to individual graphic user
interface controls comprising the steps of: identifying at least
one graphic user interface control object with a plurality of
states; assigning a user-selectable visual overlay to the control
object; associating the visual overlay with an event handler;
saving the assignment to a default configuration file; and applying
the visual overlay to the control object responsive to the firing
of the associated event.
21. The method of claim 20 further comprising the step of toggling
the visual overlay on and off responsive to user preference.
22. The method of claim 20 wherein the graphic user interface
control object is selected from the group consisting of textboxes,
buttons, dropdown lists, list boxes, combo boxes, checkboxes,
checkbox lists, radio buttons, and radio button lists.
23. The method of claim 20 wherein the visual overlay is applied to
the control object is selected from the group consisting of
vector-based predefined geometric shapes and bitmap images.
24. The method of claim 23 wherein the visual overlay is composted
with its background according to a predetermined algorithm.
25. The method of 23 wherein the visual overlay further comprises
user-adjustable properties selected from the group consisting of
shape, dimensions, relative position, opacity, hue, saturation,
contrast, brightness, midtone, tint, animation and bitmap
image.
26. The method of claim 20 further comprising the steps of:
identifying a software application that displays at least one
control object; and saving the assignment to an
application-specific configuration file associated with the
identified software application; applying the application-specific
configuration file for an associated executed software application;
and defaulting to the default configuration file for a software
application lacking an associated application-specific
configuration file.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Patent
Application No. 60/766,782, entitled: "Low Vision Graphic User
Interface Enhancement," filed by the same inventors on Feb. 10,
2006.
FIELD OF INVENTION
[0002] This invention relates to visual enhancements for graphic
user interfaces.
BACKGROUND OF THE INVENTION
[0003] Screen magnification software such as that sold under the
brand name MAGic.RTM. by Freedom Scientific, Inc. is suited for
computer users with low vision, or anyone who spends extended
periods of time in front of a computer screen. Screen magnification
software enables a user to magnify the computer screen from 1 to
many times its usual size. A user can choose from a number of
different adjustable views that let the user see both a magnified
and unmagnified portion of the screen at the same time.
[0004] Speech features are often used in conjunction with the
magnification in processing the information on your screen. The
software may read text that is typed or pointed to with the mouse.
The software moves the magnified area of the screen so the user
will always see the text being read and highlights words and lines
as they are spoken.
[0005] Mouse and cursor enhancements help the user track the
location of the mouse pointer and cursor on the screen. The user
can choose from a wide variety of enhancement styles. The software
lets the user change the color of these enhancements, apply
transparency effects, adjust their size, and more.
[0006] Other features track elements of the screen, such as the
mouse pointer, dialog boxes, and so on. A locator feature provides
the user with a way to quickly find and move to different areas of
the screen. A multi-directional panning system gives the user
complete control with adjustable speed, direction, stop and start,
and screen navigation controls.
[0007] Color enhancements let the user change how colors display on
the screen. The user can create rules that replace one color with
another or switch two colors. The user can also apply color
tinting, make the screen monochrome, and invert the brightness and
colors of the display.
[0008] One of the most difficult problems for a low-vision computer
user is to find, read and invoke user controls such as checkboxes,
radio buttons, dropdown lists and the like. A long-felt but
heretofore unfulfilled need exists for a method to apply specific
user preferences to these controls across individual software
programs as well as system-wide.
SUMMARY OF INVENTION
[0009] The present invention relates to providing an enhanced and
customizable visual appearance to user control objects. These
control objects include, but are not limited to textboxes, buttons,
dropdown lists, list boxes, combo boxes, checkboxes, checkbox
lists, radio buttons, and radio button lists. In addition, similar
controls may be inherited into subclasses that provide enhanced
functionality according to common programming methods and
architectures.
[0010] An embodiment of the invention is a method of modifying
individual graphic user interface controls according to predefined
settings. These settings or more likely an array of settings may be
preloaded by the software provider but may also be user-defined.
The steps of the method include identifying at least one graphic
user interface control object with a plurality of states. These
states may include, but are not limited to, checked, unchecked,
selected, enabled, disabled, visible and invisible. A
user-selectable visual modification to the control object is
assigned. Available control object properties may vary according to
the type of control and may include, but are not necessarily
limited to, font size, font stylization, font name, font color,
foreground color, background color, border color, border thickness,
border style and text alignment. This visual modification is then
associated with a state of the object. For example, when a checkbox
is in the "checked" state then highlight the foreground of the
control in yellow. The association of the visual modification with
the state of the object is saved to a default configuration file
that is applied system-wide to all software applications that will
call and display the control object.
[0011] In addition to an object's state, the modification of the
control object's visual properties may also be applied responsive
to an event handler. Control objects may have hundreds of different
event handlers, but common events include key up, key down, mouse
up, mouse down, mouse over, on-focus, mouse move and the like.
Furthermore, the event handler that modifies the control object's
visual properties may be fired from a different control. For
example, if a parent window to a control comes in focus, that
on-focus event handler may invoke the modification of the child
control object's visual properties. The user may define that the
modifications be invoked at all times, when the parent window is in
focus, when the object control itself is in focus or when a
mouse-over the object control event is fired, when the user invokes
a keyboard command. By giving the user this level of granularity, a
user may avoid being overwhelmed by excessive visual modifications
of standard controls.
[0012] In another embodiment of the invention, a user's control
object settings may be customized for unique software applications.
This may be necessary when a software application renames similar
object controls. For example, a control normally named PasswordEdit
has a functional equivalent in Microsoft Corporation's Internet
Explorer web browser called PasswordWndClass. Thus, in this
embodiment of the invention, a software application that displays
at least one control object is identified (in this example,
Internet Explorer). The visual modifications applied to the
PasswordEdit control object responsive to events or state in the
default configuration file are now associated with PasswordWndClass
when Internet Explorer is used. If a software-specific
configuration file is not found for a particular software
application, then the default configuration file is used.
[0013] In addition to modifying the visual properties of the
control object, a visual overlay may be applied to the control
object. The visual overlay may comprise vector-based predefined
geometric shapes and/or bitmap images. The overlay be composted
with its background according to a predetermined algorithm.
User-adjustable properties for the visual overlay may include, but
are not limited to, shape, dimensions, relative position, opacity,
hue, saturation, contrast, brightness, midtone, tint, animation and
bitmap imaging. For example, the user may specify that a particular
bitmap image overlay the control in a 50% opacity responsive to an
event or a state of the control object. Alternatively, a vector
based rectangle may cycle through colors when a mouse-over event is
fired. The combinations of control object modifications, overlays
and adjustments thereto are nearly limitless which is particularly
accommodating to low-vision users whose visual preferences vary
greatly.
[0014] The visual modification and/or the visual overlay be toggled
on and off according to user preference. For example, the user may
initiate a keystroke combination that displays or hides the visual
modification. In addition, a keystroke combination may cycle
through a plurality of predefined visual modification and visual
overlay schemes to determine which type work best for the user's
needs.
BRIEF DESCRIPTION OF THE DRAWINGS
[0015] For a fuller understanding of the invention, reference
should be made to the following detailed description, taken in
connection with the accompanying drawings, in which:
[0016] FIG. 1 is a screen shot of a dialog box of control display
customization according to the prior art.
[0017] FIG. 2 is a diagrammatic view of an embodiment of the
invention for modifying a control object's visual properties
responsive to its state.
[0018] FIG. 3 is a diagrammatic view of an embodiment of the
invention for modifying a control object responsive an event
handler.
[0019] FIG. 4 is a diagrammatic view of an embodiment of the
invention for applying a visual overlay to a control object
responsive to its state.
[0020] FIG. 5 is a diagrammatic view of an embodiment of the
invention for modifying a control object's visual properties and
applying a visual overlay responsive to the control object's
state.
[0021] FIG. 6 is a diagrammatic view of an embodiment of the
invention for modifying a control object's visual properties
responsive to its state and saving the settings to a configuration
file specific to a unique software application.
[0022] FIG. 7 is a diagrammatic view of an embodiment of the
invention showing application execution where a software-specific
configuration file may or may not exist.
[0023] FIGS. 8-9 are screen shots of an embodiment of the invention
applying both visual overlay and modifying a control object's
properties responsive to state and events.
DETAILED DESCRIPTION
[0024] FIG. 1 shows an example of the prior art in control object
customization. The dialog box is presented in various editions of
the Microsoft Windows operating system to modify colors, font name
and font sizes of a highly limited array of objects and object
properties. There is a long-felt, but unfulfilled need to access
substantially all of the visual properties of a control object and
the associated states these objects may have.
[0025] In FIG. 2, a graphic user interface control object is
identified 20. These may be selected from control group 25
including exemplary controls such as textbox, list box, dropdown
list, checkbox and radio button. Visual modification 30 is selected
from object properties modification group 35 with includes
exemplary properties such as font, color, border and alignment of
text. Finally, the modification of these properties is invoked
responsive to state of control object 40 selected from state array
45 (checked, unchecked, selected, enabled/disabled). The
association between control object 20, modification 30 and state 40
is saved to default configuration file 50.
[0026] In FIG. 3, event handler 60 having event array 65 is
associated with control object 20 and modification 30. Responsive
to events such as key up/down, mouse up/down, mouse hover, mouse
move, on-focus and the like, modification 30 is invoked against
control object 20.
[0027] In FIG. 4, visual overlay 70 selected from visual overlay
group 75 is applied to control object 20 responsive to state 40. In
FIG. 5, both visual modification 30 and visual overlay 70 are
applied concurrently responsive to state 40 of control object
20.
[0028] In FIG. 6, an application identity 80 is established to
apply visual modification 30 to control object 20 responsive to
state 40. In FIG. 7, upon application execution 100, file exists
method 110 is invoked to determine is application specific
configuration file 90 exists. If so, then it is applied.
Alternatively, default configuration file 50 is applied.
[0029] FIGS. 8-9 show a common dialog box 120 with a plurality of
control objects. In FIG. 8, the focus in on a selected radio button
labeled "Inches". Visual overlay 130 is a 5-point thick dashed
rectangle positioned about the Cartesian coordinates of the
selected radio button. Also in FIG. 8, checkbox control object 140
is modified to overlay a bitmap check and to enlarge the font size
of the control object's text property for the associated label.
Upon the checkbox control coming into focus in FIG. 9, the onfocus
event fires and causes rectangle 135 to overlay the checkbox
control's perimeter as it did the radio button in FIG. 8. Also in
FIG. 9, check bitmap overlay 145 is enlarged and the checkbox
control text is also enlarged and bolded.
[0030] It will be seen that the advantages set forth above, and
those made apparent from the foregoing description, are efficiently
attained and since certain changes may be made in the above
construction without departing from the scope of the invention, it
is intended that all matters contained in the foregoing description
or shown in the accompanying drawings shall be interpreted as
illustrative and not in a limiting sense.
[0031] It is also to be understood that the following claims are
intended to cover all of the generic and specific features of the
invention herein described, and all statements of the scope of the
invention which, as a matter of language, might be said to fall
there between. Now that the invention has been described,
* * * * *