US20040237051A1 - Dynamic menu reordering - Google Patents
Dynamic menu reordering Download PDFInfo
- Publication number
- US20040237051A1 US20040237051A1 US10/444,630 US44463003A US2004237051A1 US 20040237051 A1 US20040237051 A1 US 20040237051A1 US 44463003 A US44463003 A US 44463003A US 2004237051 A1 US2004237051 A1 US 2004237051A1
- Authority
- US
- United States
- Prior art keywords
- menu
- option
- user
- reordering
- options
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Definitions
- the invention relates generally to computer systems and, more particularly, to the design and operation of menus that may be included in, for example, a graphical user interface.
- GUI graphical user interface
- PCs handheld personal computers
- desktop PCs desktop PCs
- workstations workstations
- network servers for example.
- a user When running an application in a Windows OS, a user is frequently presented with a sequence of screen displays that in turn may incorporate one or more windows. Frequently a screen, or a window, presents a user with a number of menus that are identifiable by textual labels or by icons. Commonly, menus are arranged in a menu bar that comprises a plurality of related menus. Menus may be selected by a user with, for example, a mouse or a keyboard. When a menu is selected, the Windows OS responds by presenting a set of menu options that constitute the user-selected menu. The menu options may be presented in the form of a drop-down menu that emanates from a selected menu. The drop-down menu in turn comprises a plurality of menu options, usually arranged in a vertical stack. Menu options remain available for so long as the user holds the menu open.
- GUI As an example of the use of a menu-driven GUI, assume that a PC user is running a word-processing application.
- the application menu bar likely includes, among other menus, a File menu. Selection of the File menu by the user results in the presentation of a drop-down menu that includes menu options (commands) such as Cut, Copy, Paste and Replace. Selection by the user of one the aforementioned menu options causes the PC to perform a corresponding word-processing operation.
- GUIs In addition to the notable contribution made by menu-driven GUIs to the use of application programs, GUIs have also found widespread relevance in the design of application development systems. GUIs render the application development process significantly more tractable and, for at least this reason, have become an essential feature of many visual programming languages.
- menu bars and menu options suffers from a degree of immutability. That is to say, once a software application is programmed, the arrangement of menus in a drop-down menu is not susceptible to customization by a user. Each menu option occupies a fixed, or static, position in the drop-down menu. Rather than merely representing a failure to satisfy a particular user's idiosyncratic preferences, the imposition of static menu-option positions may constitute a significant operational shortcoming. As a case in point, consider the plight, not entirely hypothetical, of a software developer working in the Visual C++ Integrated Development Environment (IDE).
- IDE Visual C++ Integrated Development Environment
- FIG. 1 is a graphical depiction of screen, or window, that may be encountered while running an application in a Windows OS.
- FIG. 2A is a graphical depiction of a screen that results when a menu selection results in the presentation of a static drop-down menu that comprises a plurality of menu options.
- FIG. 2B is a graphical depiction of a screen in which menu-option positions have been reordered in accordance with an embodiment of the invention.
- FIG. 3 is a system block diagram of a computer system in accordance with an embodiment of the present invention.
- FIG. 4 is a flow diagram of a technique for effecting dynamic menu reordering in accordance with the subject invention.
- a technique for dynamically reordering positions occupied by respective menu options that may be included in a drop-down menu format.
- a computer system incorporates a menu-driven GUI that receives from a user menu-option reordering information.
- the PC system reorders at least one menu option from its respective static position to a dynamic user-defined position.
- User-defined dynamic position information may be saved in a configuration file so that a subsequent selection of the menu causes the drop-down menu to be presented with menu-option positions that conform to user preferences.
- the menu-driven GUI may be an attribute of a software application that is run on a Windows OS.
- screen display 10 which may be representative of a screen display encountered as a software application is opened or operated, for example, comprises a work space 11 , title bar 12 , menu bar 13 , status bar 14 and task bar 15 .
- title bar 12 occupies a horizontal space at the top of a window and contains the name (title) of the window.
- Title bar 12 may also contain boxes or buttons (not shown) for closing and resizing the window.
- Status bar 14 occupies a horizontal space at the bottom of a window that contains a text message pertinent to the prevailing condition of the then-executing program. More relevant for purposes here, menu bar 13 may assume the form of a horizontal rectangular box positioned on the window immediately below title bar 12 .
- Menu bar 13 may comprise a plurality of menus 131 , 132 , . . . , 13 n etc. that may be selected by a user with, for example, a mouse or a keyboard.
- the Windows OS responds by presenting a set of static menu options that constitute the user-selected menu.
- the menu options may be presented in the form of a drop-down menu 20 , such as is depicted in FIG. 2A, that emanates from a selected menu.
- Drop-down menu 20 comprises a plurality of menu options 201 , 202 , . . . , 20 n that remain available for so long as the user holds the menu open.
- the menu options appear in a vertical sequence as Option 1 , Option 2 , and Option 3 .
- drop-down menu 20 may comprise greater or fewer than three menu options, and three menu options are shown in a manner intended to be illustrative and to promote brevity and clarity.
- the menu-options positions of FIG. 2A are “static” in the sense that those positions reflect a priori design and programming of the GUI and are not necessarily coincide with a user's preferred positions for one or more of the menu options.
- FIG. 2B depicts a dynamic (i.e., user-reordered) menu 21 in which the menu-option positions have been reordered by the user, or in response to user-provided information, in a manner that reflects a user's preferences or predispositions.
- Option 3 which had occupied the bottom position in the static menu, is reordered so as to occupy the top position in the dynamic menu 21 of FIG. 2B. That is, Option 3 occupies position 211 in menu 21 ; and Option 2 and Option 3 are pushed down to reordered positions 212 and 21 n, respectively.
- computer system 300 is seen to include a processor 310 , which may include a general-purpose or special-purpose processor.
- Processor 310 may be realized as a microprocessor, microcontroller, ASIC, a programmable gate array (PGA), and the like.
- the term “computer system” may refer to any type of processor-based system, such as a mainframe computer, a desktop computer, a server computer, a laptop computer, an appliance, a set-top box, or the like.
- processor 310 may be coupled over a host bus 315 to a memory hub 320 , which, in turn, may be coupled to a system memory 330 via a memory bus 325 .
- Memory hub 320 may also be coupled over an Advanced Graphics Port (AGP) bus 333 to a video controller 335 , which may be coupled to a display 337 .
- AGP Advanced Graphics Port
- the AGP bus 333 may conform to the Accelerated Graphics Port Interface Specification, Revision 2.0, published May 4, 1998, by Intel Corporation, Santa Clara, Calif.
- Memory hub 320 may also be coupled (via a hub link 338 ) to an input/output (I/O) hub 340 that is coupled to a input/output (I/O) expansion bus 342 and to a Peripheral Component Interconnect (PCI) bus 344 , as defined by the PCI Local Bus Specification, Production Version, Revision 2.1 dated in June 1995.
- the I/O expansion bus 342 may be coupled to an I/O controller 346 that controls access to one or more I/O devices. As shown in FIG. 3, these devices may include in one embodiment storage devices, such as a floppy disk drive 350 and input devices, such as keyboard 352 and mouse 354 .
- I/O hub 340 may also be coupled to, for example, hard disk drive 356 and compact disc (CD) drive 358 , as shown in FIG. 3. It is to be understood that other storage media may also be included in computer system 300 .
- the I/O controller 346 may be integrated into the I/O hub 340 , as may other control functions.
- PCI bus 344 may also be coupled to various components including, for example, a network controller 360 that is coupled to a network port (not shown).
- Additional devices may be coupled to the I/O expansion bus 342 and to PCI bus 344 .
- Such devices include an input/output control circuit coupled to a parallel port, serial port, a non-volatile memory, and the like.
- a host bridge controller and system bridge controller may provide functions that are equivalent to the functions provided by memory hub 320 and I/O hub 340 .
- any of a number of bus protocols may be implemented.
- FIG. 4 constitutes a flow diagram that illustrates an example of the manner in which dynamic reordering of menu options may be realized in accordance with one embodiment of the invention.
- GUI-based application which may correspond, for example, to the opening of the application
- the user initiates an action that, at 402 , causes the presentation of a menu bar that comprises several menus.
- a menu selection by the user is awaited.
- User-defined menu-position reordering information may be conveniently stored, for example, in a configuration file. The menu options that constitute the user-selected menu are then presented to the user in reordered positions on a screen display. If the subject menu had not been the target of an antecedent user-defined reordering, then at 405 the static menu-option order is presented to the user.
- menu-option reordering is conveyed by the user in the form of transmission of menu-reordering information.
- menu-reordering information is conveyed by the user by dragging the menu option in question from its then-existing position (which may be a either a static position or a previously reordered position) in the hierarchy of menu-option positions to a position that conforms to the user's preferences. For example, with allusion to the hypothetical postulated above, an application developer might move the “compile” option to the first or other prominent position in the drop-down menu.
- a drag-and-drop protocol for menu-option reordering is deemed favorable inasmuch as most operating system implementations associate a drag-and-drop property with menu options and, accordingly, include software logic to service a drag-and-drop user input.
- menu-reordering information may be provided by the user in any manner now known or hereafter developed.
- feedback may be provided to the user that the menu-reordering request is being processed by the computer system.
- the menu option is highlighted.
- a phantom depiction of the selected menu appears as the menu is dragged across the screen until the option is positioned at the intended reordered position.
- the selected menu option is properly in position, the corresponding textual label or icon appears at the reordered position.
- the mouse click is released, the menu option to be reordered appears at the new position, and the respective positions of other menu options are relocated.
- the menu options may simply be pushed down in the vertical stack of menu options.
- menu option reordering information may be retained by saving the user's preferred order in a configuration file.
- the user's preferences may be instantiated through the operation of self-modifying software. However, the invention is not confined to a particular technique used for the retention of user menu-option order preferences. Subsequently, again at 409 , a selected menu option is executed.
- the capability, as disclosed herein, to dynamically reorder menu options represents an undeniable benefit to users of GUI-based software applications for work processing, spreadsheet, database, presentation, and other familiar purposes.
- dynamic menu reordering is at least equally beneficial to presumably more sophisticated classes of computer users, such as application software developers.
- application developers have plied their trade through manipulation of high-level text-based programming languages such as BASIC, C, FORTRAN, Pascal, COBOL and the like.
- visual programming languages have supplanted text-based languages in application development, largely because visual programming languages eliminate a level of abstraction between the programming task at hand and an applicable software solution. Because state-of-the-art visual programming languages are inherently menu-driven, the availability of a user-defined menu-option reordering capability is likewise propitious in this environment.
- the invention has, for convenience, been here described largely in the context of Windows OS.
- the dynamic menu reordering technique described here in compatible with numerous operating systems, now existing or hereafter developed.
- the invention may be applied to menu formats other than the drop-down menu format.
- menu-reordering information may be supplied by the user in a form other that a mouse click or keyboard entry; and reordering information need not be provided contemporaneously with the user's operation of the software in question.
Abstract
In one embodiment, dynamic menu reordering of a menu is effected by presenting a plurality of menus; receiving a menu selection; in response to the menu selection, presenting a plurality of menu options, each of which menu options occupies a respective menu position; receiving reordering information; and in response to the reordering information, reordering at least one menu position occupied by a respective memory option. In an additional embodiment, menu-option position information is retained in accordance with reordering information; and upon a subsequent menu selection, menu options are presented so that at least one menu option occupies a user-defined position.
Description
- The invention relates generally to computer systems and, more particularly, to the design and operation of menus that may be included in, for example, a graphical user interface.
- A graphical user interface (GUI) is a familiar and salutary attribute of many contemporary computer operating systems, such as a Windows®-based operating system (Windows OS). Windows OSs run on a number of hardware platforms, including handheld personal computers (PCs), desktop PCs, workstations, and network servers, for example.
- When running an application in a Windows OS, a user is frequently presented with a sequence of screen displays that in turn may incorporate one or more windows. Frequently a screen, or a window, presents a user with a number of menus that are identifiable by textual labels or by icons. Commonly, menus are arranged in a menu bar that comprises a plurality of related menus. Menus may be selected by a user with, for example, a mouse or a keyboard. When a menu is selected, the Windows OS responds by presenting a set of menu options that constitute the user-selected menu. The menu options may be presented in the form of a drop-down menu that emanates from a selected menu. The drop-down menu in turn comprises a plurality of menu options, usually arranged in a vertical stack. Menu options remain available for so long as the user holds the menu open.
- As an example of the use of a menu-driven GUI, assume that a PC user is running a word-processing application. The application menu bar likely includes, among other menus, a File menu. Selection of the File menu by the user results in the presentation of a drop-down menu that includes menu options (commands) such as Cut, Copy, Paste and Replace. Selection by the user of one the aforementioned menu options causes the PC to perform a corresponding word-processing operation.
- In addition to the notable contribution made by menu-driven GUIs to the use of application programs, GUIs have also found widespread relevance in the design of application development systems. GUIs render the application development process significantly more tractable and, for at least this reason, have become an essential feature of many visual programming languages.
- However, regardless the context, the use of menu bars and menu options, as heretofore available, suffers from a degree of immutability. That is to say, once a software application is programmed, the arrangement of menus in a drop-down menu is not susceptible to customization by a user. Each menu option occupies a fixed, or static, position in the drop-down menu. Rather than merely representing a failure to satisfy a particular user's idiosyncratic preferences, the imposition of static menu-option positions may constitute a significant operational shortcoming. As a case in point, consider the plight, not entirely hypothetical, of a software developer working in the Visual C++ Integrated Development Environment (IDE). When the developer selects the Visual C++ IDE “Compile” menu, he is presented with a static arrangement of menu options that include the “Compile” and “Recompile All” options in static menu-option positions. Selection of the “Recompile All” option causes all source code in an entire application to be converted to object files. In addition, requisite links between object files are established so that a complete executable is created. Conversely, the “Compile” option results in the compilation (or recompilation) into object code of only the specific code then under development or modification. The static sequence of menu options has been found to occasionally predispose the developer to the inadvertent selection of the “Recompile All” option, even though the “Compile” option was in fact intended. As a consequence of the unintended menu selection, a full recompile is precipitated that consumes an inordinate amount of processing time (in one situation, up to a half hour), even though the developer's objective was simply to build an executable of only the code then under development.
- Accordingly, a technique is required that circumvents the opportunity for inadvertent or unintended selection by a user of menu options.
- The subject dynamic menu reordering technique may be better understood by, and it many features, advantages and capabilities made apparent to, those skilled in the art with reference to the Drawings that are briefly described immediately below and attached hereto, in the several Figures of which identical reference numerals (if any) refer to identical or similar elements, and wherein:
- FIG. 1 is a graphical depiction of screen, or window, that may be encountered while running an application in a Windows OS.
- FIG. 2A is a graphical depiction of a screen that results when a menu selection results in the presentation of a static drop-down menu that comprises a plurality of menu options.
- FIG. 2B is a graphical depiction of a screen in which menu-option positions have been reordered in accordance with an embodiment of the invention.
- FIG. 3 is a system block diagram of a computer system in accordance with an embodiment of the present invention.
- FIG. 4 is a flow diagram of a technique for effecting dynamic menu reordering in accordance with the subject invention.
- Skilled artisans appreciate that elements in Drawings are illustrated for simplicity and clarity and have not (unless so stated in the Description) necessarily been drawn to scale. For example, the dimensions of some elements in the Drawings may be exaggerated relative to other elements to promote and improve understanding of embodiments of the invention.
- In one embodiment, a technique is provided for dynamically reordering positions occupied by respective menu options that may be included in a drop-down menu format. For example, a computer system incorporates a menu-driven GUI that receives from a user menu-option reordering information. In response to the menu-option reordering information, the PC system reorders at least one menu option from its respective static position to a dynamic user-defined position. User-defined dynamic position information may be saved in a configuration file so that a subsequent selection of the menu causes the drop-down menu to be presented with menu-option positions that conform to user preferences.
- In one embodiment, the menu-driven GUI may be an attribute of a software application that is run on a Windows OS. When running such an application, a user is frequently presented with a sequence of screen displays that are similar to
screen display 10 depicted in FIG. 1. In canonical form,screen display 10, which may be representative of a screen display encountered as a software application is opened or operated, for example, comprises awork space 11,title bar 12,menu bar 13,status bar 14 andtask bar 15. As is well known,title bar 12 occupies a horizontal space at the top of a window and contains the name (title) of the window.Title bar 12 may also contain boxes or buttons (not shown) for closing and resizing the window.Status bar 14 occupies a horizontal space at the bottom of a window that contains a text message pertinent to the prevailing condition of the then-executing program. More relevant for purposes here,menu bar 13 may assume the form of a horizontal rectangular box positioned on the window immediately belowtitle bar 12. -
Menu bar 13 may comprise a plurality ofmenus down menu 20, such as is depicted in FIG. 2A, that emanates from a selected menu. Drop-downmenu 20 comprises a plurality ofmenu options Option 1,Option 2, andOption 3. Of course drop-downmenu 20 may comprise greater or fewer than three menu options, and three menu options are shown in a manner intended to be illustrative and to promote brevity and clarity. The menu-options positions of FIG. 2A are “static” in the sense that those positions reflect a priori design and programming of the GUI and are not necessarily coincide with a user's preferred positions for one or more of the menu options. - Conversely, FIG. 2B depicts a dynamic (i.e., user-reordered)
menu 21 in which the menu-option positions have been reordered by the user, or in response to user-provided information, in a manner that reflects a user's preferences or predispositions. Note that in the menu of FIG. 2B,Option 3, which had occupied the bottom position in the static menu, is reordered so as to occupy the top position in thedynamic menu 21 of FIG. 2B. That is,Option 3 occupiesposition 211 inmenu 21; andOption 2 andOption 3 are pushed down to reorderedpositions - The capability to dynamically reorder menu-option positions is considered to represent a valuable enhancement to many types of computer systems, including but not limited to the computer system depicted in FIG. 3.
- With specific reference now to FIG. 3, in one embodiment,
computer system 300 is seen to include aprocessor 310, which may include a general-purpose or special-purpose processor.Processor 310 may be realized as a microprocessor, microcontroller, ASIC, a programmable gate array (PGA), and the like. As used herein, the term “computer system” may refer to any type of processor-based system, such as a mainframe computer, a desktop computer, a server computer, a laptop computer, an appliance, a set-top box, or the like. - In one embodiment,
processor 310 may be coupled over ahost bus 315 to amemory hub 320, which, in turn, may be coupled to asystem memory 330 via amemory bus 325.Memory hub 320 may also be coupled over an Advanced Graphics Port (AGP)bus 333 to avideo controller 335, which may be coupled to adisplay 337. TheAGP bus 333 may conform to the Accelerated Graphics Port Interface Specification, Revision 2.0, published May 4, 1998, by Intel Corporation, Santa Clara, Calif. -
Memory hub 320 may also be coupled (via a hub link 338) to an input/output (I/O)hub 340 that is coupled to a input/output (I/O)expansion bus 342 and to a Peripheral Component Interconnect (PCI)bus 344, as defined by the PCI Local Bus Specification, Production Version, Revision 2.1 dated in June 1995. The I/O expansion bus 342 may be coupled to an I/O controller 346 that controls access to one or more I/O devices. As shown in FIG. 3, these devices may include in one embodiment storage devices, such as afloppy disk drive 350 and input devices, such askeyboard 352 andmouse 354. I/O hub 340 may also be coupled to, for example,hard disk drive 356 and compact disc (CD) drive 358, as shown in FIG. 3. It is to be understood that other storage media may also be included incomputer system 300. - In an alternate embodiment, the I/
O controller 346 may be integrated into the I/O hub 340, as may other control functions.PCI bus 344 may also be coupled to various components including, for example, anetwork controller 360 that is coupled to a network port (not shown). - Additional devices may be coupled to the I/
O expansion bus 342 and toPCI bus 344. Such devices include an input/output control circuit coupled to a parallel port, serial port, a non-volatile memory, and the like. - Although the Description above makes reference to specific components of the
system 300, it is contemplated that numerous modifications and variations of the described and illustrated embodiments may be possible. For example, a host bridge controller and system bridge controller may provide functions that are equivalent to the functions provided bymemory hub 320 and I/O hub 340. In addition, any of a number of bus protocols may be implemented. - In the context of the above-described
computer system 300, a thorough comprehension of one embodiment of the invention may be extracted from FIG. 4, which constitutes a flow diagram that illustrates an example of the manner in which dynamic reordering of menu options may be realized in accordance with one embodiment of the invention. At apoint 401 in a user's operation of GUI-based application (which may correspond, for example, to the opening of the application) the user initiates an action that, at 402, causes the presentation of a menu bar that comprises several menus. At 403 a menu selection by the user is awaited. Subsequent to a user's selection of a menu, which in one embodiment may be effected by a mouse click, a determination is made at 404 whether the user has selected a menu that has been the target of a previous menu-option reordering. If so, the specified reordering is, at 406, retrieved from storage. User-defined menu-position reordering information may be conveniently stored, for example, in a configuration file. The menu options that constitute the user-selected menu are then presented to the user in reordered positions on a screen display. If the subject menu had not been the target of an antecedent user-defined reordering, then at 405 the static menu-option order is presented to the user. - In either case, after the menu options are presented, the process remains attentive at408 to a then-present desire by the user to effect (an initial or additional) menu-option reordering. Such menu-option reordering is conveyed by the user in the form of transmission of menu-reordering information. In one embodiment, menu-reordering information is conveyed by the user by dragging the menu option in question from its then-existing position (which may be a either a static position or a previously reordered position) in the hierarchy of menu-option positions to a position that conforms to the user's preferences. For example, with allusion to the hypothetical postulated above, an application developer might move the “compile” option to the first or other prominent position in the drop-down menu.
- A drag-and-drop protocol for menu-option reordering is deemed favorable inasmuch as most operating system implementations associate a drag-and-drop property with menu options and, accordingly, include software logic to service a drag-and-drop user input. However, be aware that the scope of the invention is not constrained to the user's provision of menu-position reordering information in the form of a drag-and-drop input. Menu-reordering information may be provided by the user in any manner now known or hereafter developed.
- In one embodiment, feedback may be provided to the user that the menu-reordering request is being processed by the computer system. Specifically, in one embodiment as the user selects (for example, by a mouse click) a menu option that is desired to be reordered, the menu option is highlighted. A phantom depiction of the selected menu appears as the menu is dragged across the screen until the option is positioned at the intended reordered position. When the selected menu option is properly in position, the corresponding textual label or icon appears at the reordered position. When the mouse click is released, the menu option to be reordered appears at the new position, and the respective positions of other menu options are relocated. For example, in a drop-down menu, the menu options may simply be pushed down in the vertical stack of menu options.
- If a reordering request is not detected, then the selected menu option is executed at411. Conversely, if menu-option reordering is detected, then menu options are reordered at 410 in accordance with user-provided reordering information. At 410, the reordered state of the selected menu options is retained. In one embodiment, as suggested above and illustrated in FIG. 4, menu option reordering information may be retained by saving the user's preferred order in a configuration file. Alternatively, the user's preferences may be instantiated through the operation of self-modifying software. However, the invention is not confined to a particular technique used for the retention of user menu-option order preferences. Subsequently, again at 409, a selected menu option is executed.
- Sample pseudocode is presented immediately below that may be used to implement menu-option reordering in an object-oriented programming language based on the Microsoft Foundation Classes:
Class MyMenu inherit from CMainFrame { bool DragHappening ( ); bool loadLastStateFile ( ); } bool MyMenu::DragHapping ( ) { //the user has already begun to drag the menu, that is why we are here DetectWhereDropped(...)//when the dragging ended find out where the item was placed UpdateMenuFile(...) //write the state of where this option was placed, used during next load } bool MyMenu::LoadLastStateFile ( ) { if (DoesFileExist) { Loadlaststateinfo ( ) ; //since we have a file, load its values DrawNewMenu ( ) ; //once loaded go ahead and draw the menu replacing the static menu } } ... - In at least some embodiments, the capability, as disclosed herein, to dynamically reorder menu options represents an undeniable benefit to users of GUI-based software applications for work processing, spreadsheet, database, presentation, and other familiar purposes. However, as suggested above, dynamic menu reordering is at least equally beneficial to presumably more sophisticated classes of computer users, such as application software developers. Historically, application developers have plied their trade through manipulation of high-level text-based programming languages such as BASIC, C, FORTRAN, Pascal, COBOL and the like. However, more recently, visual programming languages have supplanted text-based languages in application development, largely because visual programming languages eliminate a level of abstraction between the programming task at hand and an applicable software solution. Because state-of-the-art visual programming languages are inherently menu-driven, the availability of a user-defined menu-option reordering capability is likewise propitious in this environment.
- In the Description above, the invention has been set forth in the context of specific embodiments, in a manner that is intended to be illustrative and to convey a thorough comprehension of the invention. However, one of ordinary skill in the art pertaining to the design and operation of software and computer systems will appreciate that various modifications and changes may be imparted to the specifically described embodiments without departure from the scope of the invention.
- For example, the invention has, for convenience, been here described largely in the context of Windows OS. However, the dynamic menu reordering technique described here in compatible with numerous operating systems, now existing or hereafter developed. Furthermore, the invention may be applied to menu formats other than the drop-down menu format. In addition, menu-reordering information may be supplied by the user in a form other that a mouse click or keyboard entry; and reordering information need not be provided contemporaneously with the user's operation of the software in question.
- While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of this present invention.
Claims (30)
1. A method comprising:
receiving menu-option reordering information; and
in response to the menu-option reordering information, reordering a menu position occupied by at least one menu option.
2. A method as defined in claim 1 , further comprising:
presenting a plurality of menus;
receiving a menu selection; and
in response to the menu selection, presenting a plurality of menu options, wherein a least one menu option occupies a menu position determined by the menu-option reordering information.
3. A method as defined in claim 1 , further comprising:
retaining menu-option position information in accordance with the menu-option reordering information.
4. A method as defined in claim 3 , further comprising:
presenting a plurality of menus;
receiving a menu selection; and
in response to the menu selection, presenting a plurality of menu options, wherein a least one menu option occupies a menu position determined by the menu-option reordering information.
5. A method as define in claim 4 , wherein the menus are presented as a menu bar and menu-options are presented as a drop-down menu.
6. A method comprising:
presenting a plurality of menus to a user;
receiving a menu selection from the user;
in response to the menu selection, presenting to the user a plurality of menu options that correspond to a selected menu, each of the menu options occupying a respective static menu position;
receiving menu-option reordering information from the user; and
in response to the menu-option reordering information, reordering menu positions occupied by respective menu options.
7. A method as defined in claim 6 , wherein the menu-option reordering information defines reordering of at least one menu-option from a respective static position to a user-defined position.
8. A method as defined in claim 7 , wherein the menu-option reordering information is in the form of a drag-and-drop input provided by the user.
9. A method as defined in claim 6 , further comprising:
retaining menu-option position information in accordance with the reordering information from the user.
10. The method as defined in claim 9 , wherein the menu-option reordering information defines the reordering of at least one menu-option from a respective static position to a user-defined position.
11. A method as defined in claim 10 , wherein the menu-option reordering information is in the form of a drag-and-drop input provided by the user.
12. A method as defined in claim 10 , further comprising:
presenting a plurality of menus to the user;
receiving a subsequent menu selection from the user; and
in response to the subsequent menu selection, presenting a plurality of menu options to the user, wherein at least one menu option occupies a user-defined position.
13. A method as defined in claim 12 , wherein the menu-option reordering information is in the form of a drag-and-drop input provided by the user.
14. A method as defined in claim 13 , wherein the menus are presented in the form of a menu bar.
15. A method as defined in claim 13 , wherein the menu-options are presented in the form of a drop-down menu.
16. A method comprising:
selecting a menu;
selecting a menu option from a plurality of menu options that are included in the selected menu; and
reordering the selected menu option.
17. A method as defined in claim 16 , wherein reordering the selected option comprises dragging the selected menu option from a static position to a user-defined position.
18. A method as defined in claim 17 , wherein the menu is selected from a menu bar.
19. A method as defined in claim 17 , wherein the menu options are presented in the form of a drop-down menu.
20. A method as defined in claim 16 , wherein reordering the selected option comprises dragging the selected menu option from a first user-defined position to a second user-defined position.
21. A method as defined in claim 20 , wherein the menu is selected from a menu bar.
22. A method as defined in claim 20 , wherein the menu-options are presented in the form of a drop-down menu.
23. A machine-readable storage article comprising
instructions that if executed enable a system to:
receive menu-option reordering information; and
in response to the menu-option reordering information, reorder a menu position occupied by a respective memory option.
24. A machine-readable storage article as defined in claim 23 , further comprising instructions that if executed enable a system to:
present a plurality of menus;
receive a menu selection; and
in response to the menu selection, present a plurality of menu options that correspond to a selected menu, each of the menu options arranged to occupy a respective static menu position.
25. A machine-readable storage article as defined in claim 24 , further comprising instructions that if executed enable a system to:
retain menu-option position information in accordance with the reordering information.
26. A machine-readable storage article as defined in claim 25 , further comprising instructions that if executed enable a system to:
receive a subsequent menu selection; and
in response to the subsequent menu selection, present a plurality of menu options, wherein at least one menu option occupies a user-defined position.
27. A machine-readable storage article as defined in claim 26 , wherein the reordering information defines the reordering of at least one menu option from a respective static position to a user-defined position.
28. A system comprising:
a processor;
a storage device coupled to the processor, the storage device to store instructions that if executed by the processor are effective to:
receive menu-option reordering information; and
in response to the menu-option reordering information, reorder a menu-option position occupied by at least one menu-option.
29. A system as defined in claim 28 , further comprising instructions that if executed by the processor are effective to:
present a plurality of menus;
receive a menu selection; and
in response to the menu selection, present a plurality of menu options, wherein a least one menu option occupies a menu position determined by the menu-option reordering information.
30. A system as defined in claim 28 , further comprising instructions that if executed by the processor are effective to:
retain menu-option position information in accordance with the menu-option reordering information.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/444,630 US20040237051A1 (en) | 2003-05-23 | 2003-05-23 | Dynamic menu reordering |
CN2010102700804A CN101916170A (en) | 2003-05-23 | 2003-08-29 | Reordering of dynamic menu |
CNA031602800A CN1573687A (en) | 2003-05-23 | 2003-08-29 | Dynamic menu reordering |
US12/905,925 US8826183B2 (en) | 2003-05-23 | 2010-10-15 | Dynamic menu reordering |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/444,630 US20040237051A1 (en) | 2003-05-23 | 2003-05-23 | Dynamic menu reordering |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/905,925 Continuation US8826183B2 (en) | 2003-05-23 | 2010-10-15 | Dynamic menu reordering |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040237051A1 true US20040237051A1 (en) | 2004-11-25 |
Family
ID=33450705
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/444,630 Abandoned US20040237051A1 (en) | 2003-05-23 | 2003-05-23 | Dynamic menu reordering |
US12/905,925 Expired - Fee Related US8826183B2 (en) | 2003-05-23 | 2010-10-15 | Dynamic menu reordering |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/905,925 Expired - Fee Related US8826183B2 (en) | 2003-05-23 | 2010-10-15 | Dynamic menu reordering |
Country Status (2)
Country | Link |
---|---|
US (2) | US20040237051A1 (en) |
CN (2) | CN101916170A (en) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050160353A1 (en) * | 2003-08-18 | 2005-07-21 | Peter Conrad | Accessing previously viewed windows |
US20070168873A1 (en) * | 2006-01-19 | 2007-07-19 | Lentz James L | Computer controlled user interactive display interface for accessing graphic tools with a minimum of display pointer movement |
US20080045818A1 (en) * | 2006-06-29 | 2008-02-21 | Fred Wood | Laser vein contrast enhancer |
US20100289753A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Adjusting organization of media content on display |
WO2010145226A1 (en) | 2009-06-29 | 2010-12-23 | 中兴通讯股份有限公司 | Method and terminal for displaying cell phone menu with personalized setting |
US20110118611A1 (en) * | 2006-06-29 | 2011-05-19 | Vincent Luciano | Module mounting mirror endoscopy |
US20110193804A1 (en) * | 2010-02-11 | 2011-08-11 | Samsung Electronics Co. Ltd. | Method and apparatus for editing list in portable terminal |
US20110208121A1 (en) * | 2006-01-10 | 2011-08-25 | Ron Goldman | Micro vein enhancer |
CN102622335A (en) * | 2011-01-27 | 2012-08-01 | 微软公司 | Automated table transformations from examples |
US8463364B2 (en) | 2009-07-22 | 2013-06-11 | Accuvein Inc. | Vein scanner |
CN103218137A (en) * | 2013-04-27 | 2013-07-24 | 广东欧珀移动通信有限公司 | Method and device for automatically adjusting controls according to user operation |
US9061109B2 (en) | 2009-07-22 | 2015-06-23 | Accuvein, Inc. | Vein scanner with user interface |
CN105843488A (en) * | 2016-03-18 | 2016-08-10 | 乐卡汽车智能科技(北京)有限公司 | Method and apparatus for sorting options of setup menu |
US20170084095A1 (en) * | 2014-02-21 | 2017-03-23 | Taleris Global Llp | Methods for determining performance of an air-conditioning system of an aircraft |
US10238294B2 (en) | 2006-06-29 | 2019-03-26 | Accuvein, Inc. | Scanned laser vein contrast enhancer using one laser |
US10343067B2 (en) * | 2014-12-23 | 2019-07-09 | King.Com Ltd. | Computer system and method for selecting and displaying in-gaming options based on user selection weight criteria |
US10376147B2 (en) | 2012-12-05 | 2019-08-13 | AccuVeiw, Inc. | System and method for multi-color laser imaging and ablation of cancer cells using fluorescence |
US10580119B2 (en) | 2007-06-28 | 2020-03-03 | Accuvein, Inc. | Automatic alignment of a contrast enhancement system |
CN111767042A (en) * | 2020-05-18 | 2020-10-13 | 福建天泉教育科技有限公司 | Method and terminal for realizing check in drop-down box |
US10813588B2 (en) | 2006-01-10 | 2020-10-27 | Accuvein, Inc. | Micro vein enhancer |
US11051697B2 (en) | 2006-06-29 | 2021-07-06 | Accuvein, Inc. | Multispectral detection and presentation of an object's characteristics |
US11146675B1 (en) | 2019-02-18 | 2021-10-12 | State Farm Mutual Automobile Insurance Company | System and user interface having push-to-talk, outbound dialer, and messaging functions with recipients identified using a proxy alias |
US11150784B1 (en) * | 2020-09-22 | 2021-10-19 | Servicenow, Inc. | User interface elements for controlling menu displays |
US11191482B2 (en) | 2006-01-10 | 2021-12-07 | Accuvein, Inc. | Scanned laser vein contrast enhancer imaging in an alternating frame mode |
US11253198B2 (en) | 2006-01-10 | 2022-02-22 | Accuvein, Inc. | Stand-mounted scanned laser vein contrast enhancer |
US11278240B2 (en) | 2006-01-10 | 2022-03-22 | Accuvein, Inc. | Trigger-actuated laser vein contrast enhancer |
US11357449B2 (en) | 2006-01-10 | 2022-06-14 | Accuvein, Inc. | Micro vein enhancer for hands-free imaging for a venipuncture procedure |
US11399768B2 (en) | 2006-01-10 | 2022-08-02 | Accuvein, Inc. | Scanned laser vein contrast enhancer utilizing surface topology |
US11431664B2 (en) * | 2019-02-18 | 2022-08-30 | State Farm Mutual Automobile Insurance Company | Outbound dialer and messaging system and user interface for group messaging |
US11510617B2 (en) | 2012-08-02 | 2022-11-29 | Accuvein, Inc. | Device for detecting and illuminating the vasculature using an FPGA |
US11625141B2 (en) | 2020-09-22 | 2023-04-11 | Servicenow, Inc. | User interface generation with machine learning |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9077766B2 (en) * | 2004-07-09 | 2015-07-07 | Qualcomm Incorporated | System and method for combining memory resources for use on a personal network |
KR100980683B1 (en) * | 2008-09-01 | 2010-09-08 | 삼성전자주식회사 | Apparatus and method for providing user interface to generate menu list of potable terminal |
KR20120006259A (en) * | 2010-07-12 | 2012-01-18 | 삼성전자주식회사 | Apparatus and method to report uplink transmission power status in a mobile communication system |
US9280252B1 (en) | 2013-03-08 | 2016-03-08 | Allstate Insurance Company | Configuring an application task list of an application based on previous selections of application tasks |
US10741273B1 (en) * | 2015-07-15 | 2020-08-11 | OHUM Healthcare Solutions Inc. | User friendly medical records systems, apparatuses and methods |
CN105630305A (en) * | 2015-12-18 | 2016-06-01 | 北京奇虎科技有限公司 | Method for displaying menu options in browser, and electronic equipment |
CN105868329A (en) * | 2016-03-28 | 2016-08-17 | 中国建设银行股份有限公司 | Page display method and device |
US10671244B2 (en) * | 2017-04-14 | 2020-06-02 | Home Depot Product Authority, Llc | Ordering categories in an electronic user interface menu based on user interaction frequency |
CN110568977A (en) * | 2018-06-05 | 2019-12-13 | 青岛海尔多媒体有限公司 | method and apparatus for controlling display device, and computer-readable storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5897670A (en) * | 1996-07-12 | 1999-04-27 | Sun Microsystems, Inc. | Method and system for efficient organization of selectable elements on a graphical user interface |
US5917491A (en) * | 1997-08-29 | 1999-06-29 | Netscape Communications Corporation | Page proxy |
US6002402A (en) * | 1997-04-09 | 1999-12-14 | Symantec Corporation | System and method for producing a drag-and-drop object from a popup menu item |
US7111009B1 (en) * | 1997-03-14 | 2006-09-19 | Microsoft Corporation | Interactive playlist generation using annotations |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0684716B1 (en) * | 1994-05-25 | 2002-02-27 | International Business Machines Corporation | A data communication network and method for operating said network |
US6437805B1 (en) | 1996-09-23 | 2002-08-20 | National Instruments Corporation | System and method for accessing object capabilities in a graphical program |
EP2278503A3 (en) * | 1997-04-30 | 2011-04-20 | Sony Corporation | Browser apparatus with address registering and browser system |
US7143193B1 (en) * | 1998-05-29 | 2006-11-28 | Yahoo! Inc. | Content collection |
US6334145B1 (en) * | 1998-06-30 | 2001-12-25 | International Business Machines Corporation | Method of storing and classifying selectable web page links and sublinks thereof to a predetermined depth in response to a single user input |
US6184886B1 (en) * | 1998-09-04 | 2001-02-06 | International Business Machines Corporation | Apparatus and method for staging bookmarks |
US7107548B2 (en) * | 1998-10-28 | 2006-09-12 | Yahoo! Inc. | Method of controlling an internet browser interface and a controllable browser interface |
US6408316B1 (en) * | 1998-12-17 | 2002-06-18 | International Business Machines Corporation | Bookmark set creation according to user selection of selected pages satisfying a search condition |
US7555721B2 (en) * | 1998-12-30 | 2009-06-30 | Aol Llc, A Delaware Limited Liability Company | Customized user interface |
JP2000242387A (en) * | 1999-02-19 | 2000-09-08 | Casio Comput Co Ltd | Item selecting device and its program recording medium |
US6476827B1 (en) * | 1999-08-31 | 2002-11-05 | Xoucin, Inc. | Method and apparatus for creating and maintaining a scrapbook of information pages |
US7113168B2 (en) * | 2000-09-12 | 2006-09-26 | Canon Kabushiki Kaisha | Compact information terminal apparatus, method for controlling such apparatus and medium |
US7386792B1 (en) * | 2001-03-07 | 2008-06-10 | Thomas Layne Bascom | System and method for collecting, storing, managing and providing categorized information related to a document object |
US7406656B2 (en) * | 2001-04-05 | 2008-07-29 | International Business Machines Corporation | Method, apparatus, and program for creating bookmark symlinks |
US7051117B2 (en) * | 2002-07-25 | 2006-05-23 | International Business Machines Corporation | Smart bookmarks |
US7376696B2 (en) * | 2002-08-27 | 2008-05-20 | Intel Corporation | User interface to facilitate exchanging files among processor-based devices |
US7197517B2 (en) * | 2002-09-25 | 2007-03-27 | International Business Machines Corporation | Systems, methods, and computer program products to display and select hierarchical database segments and fields |
US8659615B2 (en) * | 2003-01-31 | 2014-02-25 | Nvidia Corporation | System and method for providing transparent windows of a display |
US7233340B2 (en) * | 2003-02-27 | 2007-06-19 | Applied Imaging Corp. | Linking of images to enable simultaneous viewing of multiple objects |
US7343567B2 (en) * | 2003-04-25 | 2008-03-11 | Microsoft Corporation | System and method for providing dynamic user information in an interactive display |
US20050198584A1 (en) * | 2004-01-27 | 2005-09-08 | Matthews David A. | System and method for controlling manipulation of tiles within a sidebar |
-
2003
- 2003-05-23 US US10/444,630 patent/US20040237051A1/en not_active Abandoned
- 2003-08-29 CN CN2010102700804A patent/CN101916170A/en active Pending
- 2003-08-29 CN CNA031602800A patent/CN1573687A/en active Pending
-
2010
- 2010-10-15 US US12/905,925 patent/US8826183B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5897670A (en) * | 1996-07-12 | 1999-04-27 | Sun Microsystems, Inc. | Method and system for efficient organization of selectable elements on a graphical user interface |
US7111009B1 (en) * | 1997-03-14 | 2006-09-19 | Microsoft Corporation | Interactive playlist generation using annotations |
US6002402A (en) * | 1997-04-09 | 1999-12-14 | Symantec Corporation | System and method for producing a drag-and-drop object from a popup menu item |
US5917491A (en) * | 1997-08-29 | 1999-06-29 | Netscape Communications Corporation | Page proxy |
Cited By (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8015501B2 (en) * | 2003-08-18 | 2011-09-06 | Sap Aktiengesellschaft | Accessing previously viewed windows |
US20050160353A1 (en) * | 2003-08-18 | 2005-07-21 | Peter Conrad | Accessing previously viewed windows |
US11109806B2 (en) | 2006-01-10 | 2021-09-07 | Accuvein, Inc. | Three dimensional imaging of veins |
US11638558B2 (en) | 2006-01-10 | 2023-05-02 | Accuvein, Inc. | Micro vein enhancer |
US11253198B2 (en) | 2006-01-10 | 2022-02-22 | Accuvein, Inc. | Stand-mounted scanned laser vein contrast enhancer |
US11172880B2 (en) | 2006-01-10 | 2021-11-16 | Accuvein, Inc. | Vein imager with a dual buffer mode of operation |
US11642080B2 (en) | 2006-01-10 | 2023-05-09 | Accuvein, Inc. | Portable hand-held vein-image-enhancing device |
US20110208121A1 (en) * | 2006-01-10 | 2011-08-25 | Ron Goldman | Micro vein enhancer |
US10813588B2 (en) | 2006-01-10 | 2020-10-27 | Accuvein, Inc. | Micro vein enhancer |
US9788788B2 (en) | 2006-01-10 | 2017-10-17 | AccuVein, Inc | Three dimensional imaging of veins |
US9125629B2 (en) | 2006-01-10 | 2015-09-08 | Accuvein, Inc. | Vial-mounted micro vein enhancer |
US11484260B2 (en) | 2006-01-10 | 2022-11-01 | Accuvein, Inc. | Patient-mounted micro vein enhancer |
US11399768B2 (en) | 2006-01-10 | 2022-08-02 | Accuvein, Inc. | Scanned laser vein contrast enhancer utilizing surface topology |
US11278240B2 (en) | 2006-01-10 | 2022-03-22 | Accuvein, Inc. | Trigger-actuated laser vein contrast enhancer |
US11191482B2 (en) | 2006-01-10 | 2021-12-07 | Accuvein, Inc. | Scanned laser vein contrast enhancer imaging in an alternating frame mode |
US11357449B2 (en) | 2006-01-10 | 2022-06-14 | Accuvein, Inc. | Micro vein enhancer for hands-free imaging for a venipuncture procedure |
US20070168873A1 (en) * | 2006-01-19 | 2007-07-19 | Lentz James L | Computer controlled user interactive display interface for accessing graphic tools with a minimum of display pointer movement |
US8250486B2 (en) * | 2006-01-19 | 2012-08-21 | International Business Machines Corporation | Computer controlled user interactive display interface for accessing graphic tools with a minimum of display pointer movement |
US8489178B2 (en) | 2006-06-29 | 2013-07-16 | Accuvein Inc. | Enhanced laser vein contrast enhancer with projection of analyzed vein data |
US10238294B2 (en) | 2006-06-29 | 2019-03-26 | Accuvein, Inc. | Scanned laser vein contrast enhancer using one laser |
US20080045818A1 (en) * | 2006-06-29 | 2008-02-21 | Fred Wood | Laser vein contrast enhancer |
US11523739B2 (en) | 2006-06-29 | 2022-12-13 | Accuvein, Inc. | Multispectral detection and presentation of an object's characteristics |
US9345427B2 (en) | 2006-06-29 | 2016-05-24 | Accuvein, Inc. | Method of using a combination vein contrast enhancer and bar code scanning device |
US20110118611A1 (en) * | 2006-06-29 | 2011-05-19 | Vincent Luciano | Module mounting mirror endoscopy |
US11051697B2 (en) | 2006-06-29 | 2021-07-06 | Accuvein, Inc. | Multispectral detection and presentation of an object's characteristics |
US8665507B2 (en) | 2006-06-29 | 2014-03-04 | Accuvein, Inc. | Module mounting mirror endoscopy |
US11051755B2 (en) | 2006-06-29 | 2021-07-06 | Accuvein, Inc. | Scanned laser vein contrast enhancer using a retro collective mirror |
US11847768B2 (en) | 2007-06-28 | 2023-12-19 | Accuvein Inc. | Automatic alignment of a contrast enhancement system |
US11132774B2 (en) | 2007-06-28 | 2021-09-28 | Accuvein, Inc. | Automatic alignment of a contrast enhancement system |
US10580119B2 (en) | 2007-06-28 | 2020-03-03 | Accuvein, Inc. | Automatic alignment of a contrast enhancement system |
US10713766B2 (en) | 2007-06-28 | 2020-07-14 | Accuvein, Inc. | Automatic alignment of a contrast enhancement system |
US20100289753A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Adjusting organization of media content on display |
EP2448367A4 (en) * | 2009-06-29 | 2012-12-26 | Zte Corp | Method and terminal for displaying cell phone menu with personalized setting |
WO2010145226A1 (en) | 2009-06-29 | 2010-12-23 | 中兴通讯股份有限公司 | Method and terminal for displaying cell phone menu with personalized setting |
EP2448367A1 (en) * | 2009-06-29 | 2012-05-02 | ZTE Corporation | Method and terminal for displaying cell phone menu with personalized setting |
US8787979B2 (en) | 2009-06-29 | 2014-07-22 | Zte Corporation | Method and terminal for displaying cell phone menu with personalized setting |
US8463364B2 (en) | 2009-07-22 | 2013-06-11 | Accuvein Inc. | Vein scanner |
US11826166B2 (en) | 2009-07-22 | 2023-11-28 | Accuvein, Inc. | Vein scanner with housing configured for single-handed lifting and use |
USD999380S1 (en) | 2009-07-22 | 2023-09-19 | Accuvein, Inc. | Vein imager and cradle in combination |
US9789267B2 (en) | 2009-07-22 | 2017-10-17 | Accuvein, Inc. | Vein scanner with user interface |
US9061109B2 (en) | 2009-07-22 | 2015-06-23 | Accuvein, Inc. | Vein scanner with user interface |
EP2372539A3 (en) * | 2010-02-11 | 2012-04-04 | Samsung Electronics Co., Ltd. | Method and apparatus for editing list in portable terminal |
EP2372539A2 (en) * | 2010-02-11 | 2011-10-05 | Samsung Electronics Co., Ltd. | Method and apparatus for editing list in portable terminal |
US20110193804A1 (en) * | 2010-02-11 | 2011-08-11 | Samsung Electronics Co. Ltd. | Method and apparatus for editing list in portable terminal |
USD998152S1 (en) | 2010-07-22 | 2023-09-05 | Accuvein, Inc. | Vein imager cradle |
USD999379S1 (en) | 2010-07-22 | 2023-09-19 | Accuvein, Inc. | Vein imager and cradle in combination |
CN102622335A (en) * | 2011-01-27 | 2012-08-01 | 微软公司 | Automated table transformations from examples |
US10108597B2 (en) | 2011-01-27 | 2018-10-23 | Microsoft Technology Licensing, Llc | Automated table transformations from examples |
US11510617B2 (en) | 2012-08-02 | 2022-11-29 | Accuvein, Inc. | Device for detecting and illuminating the vasculature using an FPGA |
US10517483B2 (en) | 2012-12-05 | 2019-12-31 | Accuvein, Inc. | System for detecting fluorescence and projecting a representative image |
US10376147B2 (en) | 2012-12-05 | 2019-08-13 | AccuVeiw, Inc. | System and method for multi-color laser imaging and ablation of cancer cells using fluorescence |
US11439307B2 (en) | 2012-12-05 | 2022-09-13 | Accuvein, Inc. | Method for detecting fluorescence and ablating cancer cells of a target surgical area |
CN103218137A (en) * | 2013-04-27 | 2013-07-24 | 广东欧珀移动通信有限公司 | Method and device for automatically adjusting controls according to user operation |
US20170084095A1 (en) * | 2014-02-21 | 2017-03-23 | Taleris Global Llp | Methods for determining performance of an air-conditioning system of an aircraft |
US10343067B2 (en) * | 2014-12-23 | 2019-07-09 | King.Com Ltd. | Computer system and method for selecting and displaying in-gaming options based on user selection weight criteria |
CN105843488A (en) * | 2016-03-18 | 2016-08-10 | 乐卡汽车智能科技(北京)有限公司 | Method and apparatus for sorting options of setup menu |
US11146675B1 (en) | 2019-02-18 | 2021-10-12 | State Farm Mutual Automobile Insurance Company | System and user interface having push-to-talk, outbound dialer, and messaging functions with recipients identified using a proxy alias |
US11431664B2 (en) * | 2019-02-18 | 2022-08-30 | State Farm Mutual Automobile Insurance Company | Outbound dialer and messaging system and user interface for group messaging |
CN111767042A (en) * | 2020-05-18 | 2020-10-13 | 福建天泉教育科技有限公司 | Method and terminal for realizing check in drop-down box |
US11150784B1 (en) * | 2020-09-22 | 2021-10-19 | Servicenow, Inc. | User interface elements for controlling menu displays |
US11625141B2 (en) | 2020-09-22 | 2023-04-11 | Servicenow, Inc. | User interface generation with machine learning |
Also Published As
Publication number | Publication date |
---|---|
US8826183B2 (en) | 2014-09-02 |
CN101916170A (en) | 2010-12-15 |
CN1573687A (en) | 2005-02-02 |
US20110029929A1 (en) | 2011-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8826183B2 (en) | Dynamic menu reordering | |
US6396515B1 (en) | Method, system and computer program product for dynamic language switching in user interface menus, help text, and dialogs | |
US7546602B2 (en) | Application program interface for network software platform | |
US7490298B2 (en) | Creating documentation screenshots on demand | |
US10078413B2 (en) | Graphical association of task bar entries with corresponding desktop locations | |
US8471781B2 (en) | System and method for the auto-detection and presentation of pre-set configurations for multiple monitor layout display | |
US7523409B2 (en) | Methods and systems for operating multiple web pages in a single window | |
US9110654B2 (en) | Dynamically building locale objects or subsections of locale objects based on historical data | |
US6562078B1 (en) | Arrangement and method for inputting non-alphabetic language | |
US5644739A (en) | Method and system for adding buttons to a toolbar | |
US6804686B1 (en) | System and methodology for providing fixed UML layout for an object oriented class browser | |
US6334101B1 (en) | Method, system and computer program product for dynamic delivery of human language translations during software operation | |
US20070186176A1 (en) | System and method for window tab organization | |
CN108351764B (en) | Data processing method and system | |
US20120102312A1 (en) | Decoupled hardware configuration manager | |
US20050183059A1 (en) | Hosted application as a designer in an integrated development environment | |
US20030222923A1 (en) | Menu user interface with size differentiation between enabled and disabled menu items | |
US20160320938A9 (en) | System and Method for the Auto-Detection and Presentation of Pre-Set Configurations for Multiple Monitor Layout Display | |
JP3565441B2 (en) | Data processing system | |
US20050172235A1 (en) | System and method for excluded elements mapping in a user interface | |
US7337407B1 (en) | Automatic application programming interface (API) generation for functional blocks | |
US8533618B2 (en) | Changing multiple boolean state items in a user interface | |
US9141353B2 (en) | Dynamically building locale objects at run-time | |
US20060123391A1 (en) | Method for plug-in program management of a computer system | |
US7549132B2 (en) | Presenting identifiers and states of processes in a stacked cursor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTEL CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CLAUSON, TODD A.;REEL/FRAME:014151/0845 Effective date: 20030521 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |