US8352878B2 - Scrollable context menu for multiple element selection - Google Patents

Scrollable context menu for multiple element selection Download PDF

Info

Publication number
US8352878B2
US8352878B2 US12/567,439 US56743909A US8352878B2 US 8352878 B2 US8352878 B2 US 8352878B2 US 56743909 A US56743909 A US 56743909A US 8352878 B2 US8352878 B2 US 8352878B2
Authority
US
United States
Prior art keywords
view
context menu
visual aid
elements
computer
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.)
Expired - Fee Related, expires
Application number
US12/567,439
Other versions
US20110078630A1 (en
Inventor
Joel Duquene
Morris S. Johnson, JR.
Henri F. Meli
Karline Vilme
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US12/567,439 priority Critical patent/US8352878B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DUQUENE, JOEL, JOHNSON, MORRIS S., JR., MELI, HENRI F., VILME, KARLINE
Publication of US20110078630A1 publication Critical patent/US20110078630A1/en
Application granted granted Critical
Publication of US8352878B2 publication Critical patent/US8352878B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus

Definitions

  • the present invention relates to user interface tools, and more specifically, to multiple element selection with visual feedback.
  • a user needs to select multiple elements from a very long list which can easily span multiple pages on a computer display. Such a list will require the user to scroll through the pages. As elements are selected on a page in the current focused view, it is difficult to know which elements and how many elements have been selected on pages that are not currently in focus.
  • a computer implemented method for navigating a long list of selectable elements spanning at least two pages of a computer display comprises the steps of providing a scrollable context menu.
  • a first user visual aid is positioned on the scrollable context menu to indicate at least one element selected in a previous view.
  • a second user visual aid is positioned on the scrollable context menu to indicate at least one element selected in a next view.
  • the first user visual aid comprises an arrow pointing upward, and the second user visual aid comprises an arrow pointing downward.
  • a third visual aid comprising a numerical count of elements selected in the previous view is positioned on the context menu.
  • a fourth visual aid comprising a numerical count of elements selected in the next view is also positioned on the context menu.
  • FIG. 1 is a hardware diagram that implements an embodiment of the present invention
  • FIGS. 2 and 3 illustrate an example of a long list of elements
  • FIG. 4 illustrates an embodiment of the present invention
  • FIG. 5 illustrates another embodiment of the present invention.
  • FIG. 6 is a flowchart of the present invention.
  • the present invention may be embodied as a system, method or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “system.” Furthermore, the present invention may take the form of a computer program product embodied in any tangible or readable storage medium having computer usable program code embodied in the medium.
  • the computer usable or computer readable storage medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device.
  • the computer usable or computer readable storage medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
  • a computer-usable or computer readable storage medium may be any medium that can contain, store, communicate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the computer usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc.
  • Computer program code for carrying out operations of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • LAN local area network
  • WAN wide area network
  • Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • These computer program instructions may also be stored in a computer readable storage medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s).
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
  • FIG. 1 is one example of a computer system 10 suitable for executing computer software for a scrollable context menu for multiple elements selection in long lists in accordance with the techniques described above.
  • Other processing devices which are suitable for executing the software can be a wireless telephone, personal assistant device (PDA), portable computer, smart remote control device, or any other processing devices that can execute such software.
  • PDA personal assistant device
  • portable computer portable computer
  • smart remote control device or any other processing devices that can execute such software.
  • the processor 26 is a central processing unit (CPU) that executes the operating system and the computer software executing under the operating system.
  • the memory 28 includes random access memory (RAM) and read-only memory (ROM), and is used under direction of the processor 26 .
  • the video interface 34 is connected to video display 20 and provides video signals for display on the video display 20 .
  • User input to operate the computer 12 is provided from the keyboard 22 and mouse 24 .
  • the storage device 36 can include a disk drive or any other suitable storage medium.
  • Each of the components of the computer 12 is connected to an internal bus 40 that includes data, address, and control buses, to allow components of the computer 12 to communicate with each other via the bus 40 .
  • the computer system 10 can be connected to one or more other similar computers via an input/output (I/O) interface 32 using a communication channel 38 to a network, represented as the Internet 18 .
  • I/O input/output
  • the computer software may be recorded on a computer-readable storage medium, in which case, the computer software program is accessed by the computer system 10 from the storage device 36 .
  • the computer software can be accessed directly from the Internet 18 by the computer 12 .
  • a user can interact with the computer system 10 using the keyboard 22 and mouse 24 to operate the programmed computer software executing on the computer 12 .
  • FIGS. 2 and 3 an illustration of a long list (as used herein, a long list is a list that spans multiple pages of a computer display requiring scrolling through the multiple pages to view all the elements in the list) is shown.
  • FIG. 2 illustrates one page 50 of the list and
  • FIG. 3 shows a next page 60 of the list.
  • FIG. 4 One embodiment of the present invention is now illustrated in FIG. 4 . While FIG. 4 only shows one page 70 of a long list, it is to be understood that at least one other page (not shown) would be required to view the entire long list.
  • a user has opened a context menu 408 .
  • the present invention adds icons as visual aids to indicate previous and/or next elements have been selected.
  • a visual aid for example, an arrow 400 pointing upward, can be used to indicate there are elements selected but not currently viewable on pages previous to page 70 .
  • a visual aid such as an arrow 404 pointing downward can be used to indicate there are elements selected but not currently viewable on the next pages after page 70 .
  • a first number 402 can be positioned near the arrow 400 to indicate how many elements have been selected previously to page 70 .
  • the number 402 indicates there are five elements selected previously to page 70 .
  • a second number 406 can be positioned near the arrow 404 to indicate how many elements have been selected on the next pages after page 70 .
  • the number 406 indicates there are ten elements selected on the next pages after page 70 .
  • the user is provided with other tools for ease of use with the present invention. For example, if the user clicks on the arrow 400 , the previous pages containing selected elements not currently viewable will be brought to focus. Similarly, if the user clicks on the arrow 404 , the next pages containing selected elements not currently viewable will be brought to focus. The same result may be obtained if the user drags the context menu 408 upwards or downwards, i.e., dragging the menu 408 upward will bring a previous page with selected elements into view, and dragging the menu 408 downward will bring a next page with selected elements into view.
  • FIG. 5 a further user visual aid available with the present invention is illustrated.
  • the same page 70 of FIG. 4 is shown in FIG. 5 with the additional visual aid.
  • a list 416 of the elements selected on previous pages to the current page 70 will “pop-up” into view.
  • a list of the elements selected on the next pages below the current page 70 will also “pop-up” into view.
  • the invention starts at 600 and a graphical user interface (GUI) event is received at block 602 . It is then determined at decision block 604 whether or not an element selection signal (i.e., a user has selected an element, such as element 410 in FIG. 5 ) has been received from the GUI. If the response to decision block 604 is yes, the element (element 410 ) is highlighted at block 606 . It is then determined at decision block 608 whether or not to append the highlighted element to a previous selection (i.e., the highlighted element is added to other selections already highlighted in a long list).
  • GUI graphical user interface
  • the present invention at block 610 resets counters and clears the selection from a holding area. Subsequent to block 610 or if the response to decision block 608 was yes, the present invention adds the element to a selection area at block 612 . Then, the invention returns to block 600 to start another cycle.
  • the invention checks at decision block 614 whether or not a context menu calling signal has been received. If the response to decision block 614 is yes, the number of elements in the previous and next views is calculated at block 616 . It is then determined at decision block 618 whether or not the element is in a previous (i.e., before the current page) view. If the response to decision block 618 is yes, an icon indicating the element is in a previous selection view is enabled in the context menu at block 620 . If the response to decision block 618 is no, an icon indicting the element is in a previous selection view is disabled in the context menu at block 622 .
  • decision block 624 it is determined at decision block 624 whether or not the element is in the next selection view. If the response to decision block 624 is yes, the icon for a next selection view is enabled in the context menu at block 626 . On the other hand, if the response to decision block 624 is no, the icon for a next selection view is disabled in the context menu at block 628 . After either block 626 or 628 , the count of elements in the next and previous selection views is set in the context menu at block 630 . The context menu information is then displayed at block 632 and the invention returns to start at block 600 .
  • the present invention determines whether a selection window was scrolled at block 634 . If the response to decision block 634 is no, it is determined at decision block 636 whether a selection window was resized. If the answer to decision block 636 or decision block 634 is yes, it is determined at decision block 638 whether a context menu is active. If the response is no, the number of elements in previous and next selection views is calculated at block 640 and then returns to start block 600 .
  • decision block 642 determines whether an icon for previous views was clicked. If the response is no, the invention detects at decision block 644 whether or not there is a scrolling up action at a context menu. If the response to decision block 642 or decision block 644 is yes, a previous view containing the selection is scrolled to at block 646 and the invention returns to start at block 600 .
  • decision block 648 determines whether an icon for a next view was clicked. If the response to decision block 648 is no, it is determined at decision block 652 whether a context menu has been detected to be scrolling down. If the response to decision block 652 or decision block 648 is yes, at block 650 the selection window is scrolled to the next view containing a selection. The invention then returns to start at 600 .
  • decision block 654 determines whether a “mouse over” for a previous selection view was detected. If the response to decision block 654 is yes, a list of selected elements in previous selection views is gathered at block 658 . If the response to decision block 654 is no, it is determined at decision block 656 whether a “mouse over” for a next selection view was detected. If the response to decision block 656 is no, the invention returns to start at block 600 .
  • a list of selected elements in the next selection view is gathered at block 660 .
  • a scrollable window with the elements gathered in the previous steps is built at block 662 .
  • the scrollable window is made semi-transparent at block 664 and is then displayed at block 666 .
  • the invention then returns to start at block 600 .

Abstract

Selections from a long list of elements on a Graphical User Interface (GUI) are presented. When a context window is presented for the selections, different cues are provided in the context window to provide feedback regarding the selections that are not in the current view, and to also facilitate rapid navigation to those selections on the GUI. Interaction with the GUI widgets within the context window, and interaction with the context window itself, facilitates the navigation toward the other selections that are not in the current view. Interaction with the GUI widgets also facilitates the preview of the selections that are not in the current view, thus making it easier to determine what has been selected without having to navigate to the view that contains those selections.

Description

FIELD OF THE INVENTION
The present invention relates to user interface tools, and more specifically, to multiple element selection with visual feedback.
BACKGROUND OF THE INVENTION
In many instances, a user needs to select multiple elements from a very long list which can easily span multiple pages on a computer display. Such a list will require the user to scroll through the pages. As elements are selected on a page in the current focused view, it is difficult to know which elements and how many elements have been selected on pages that are not currently in focus.
For example, it is difficult to know whether previously selected elements in other views are still selected, or if they were accidentally or inadvertently deselected, as may happen occasionally. Additionally, the user may not be able to recall how many elements have already been selected in the previous or subsequent views, or whether the previous or subsequent views have elements that had been selected, and if so, which ones. The user must page or scroll back-and-forth to find this out. Also, in a very long list, as the user pages or scrolls through the different views, it is not easy to know how far one needs to navigate before getting to a view that contains previously selected elements.
SUMMARY
According to one embodiment of the present invention a computer implemented method for navigating a long list of selectable elements spanning at least two pages of a computer display, comprises the steps of providing a scrollable context menu. A first user visual aid is positioned on the scrollable context menu to indicate at least one element selected in a previous view. A second user visual aid is positioned on the scrollable context menu to indicate at least one element selected in a next view.
The first user visual aid comprises an arrow pointing upward, and the second user visual aid comprises an arrow pointing downward. A third visual aid comprising a numerical count of elements selected in the previous view is positioned on the context menu. A fourth visual aid comprising a numerical count of elements selected in the next view is also positioned on the context menu.
By scrolling the context menu upward at least one element selected in a previous view can be viewed. By scrolling the context menu downward at least one element selected in a next view can be viewed. By placing a cursor over the first user visual aid on the scrollable context menu, a first list of at least one element selected in a previous view is displayed. By placing the cursor over the second user visual aid on the scrollable context menu, a second list of at least one element selected in a next view is displayed.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
The foregoing and other features and advantages of the present invention will be more fully understood from the following detailed description of illustrative embodiments, taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a hardware diagram that implements an embodiment of the present invention;
FIGS. 2 and 3 illustrate an example of a long list of elements;
FIG. 4 illustrates an embodiment of the present invention;
FIG. 5 illustrates another embodiment of the present invention; and
FIG. 6 is a flowchart of the present invention.
DETAILED DESCRIPTION
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
As will be appreciated by one skilled in the art, the present invention may be embodied as a system, method or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “system.” Furthermore, the present invention may take the form of a computer program product embodied in any tangible or readable storage medium having computer usable program code embodied in the medium.
Any combination of one or more computer usable or computer readable storage media may be utilized. The computer usable or computer readable storage medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer usable or computer readable storage medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer readable storage medium may be any medium that can contain, store, communicate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc.
Computer program code for carrying out operations of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
The present invention is described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that some blocks of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable storage medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
FIG. 1 is one example of a computer system 10 suitable for executing computer software for a scrollable context menu for multiple elements selection in long lists in accordance with the techniques described above. Other processing devices which are suitable for executing the software can be a wireless telephone, personal assistant device (PDA), portable computer, smart remote control device, or any other processing devices that can execute such software.
The computer system 10 is of a type that executes under a suitable operating system installed on the computer system 10, and may be thought of as comprising various software code means for achieving the particular steps of the aforementioned methods of for executing computer software for a scrollable context menu for multiple elements selection in long lists. The components of the computer system 10 include a computer 12, a keyboard 22, mouse 24, and a video display 20. The computer 12 includes a processor 26, a memory 28, input/output (I/O) interfaces 30 and 32, a video interface 34, and a storage device 36.
The processor 26 is a central processing unit (CPU) that executes the operating system and the computer software executing under the operating system. The memory 28 includes random access memory (RAM) and read-only memory (ROM), and is used under direction of the processor 26.
The video interface 34 is connected to video display 20 and provides video signals for display on the video display 20. User input to operate the computer 12 is provided from the keyboard 22 and mouse 24. The storage device 36 can include a disk drive or any other suitable storage medium. Each of the components of the computer 12 is connected to an internal bus 40 that includes data, address, and control buses, to allow components of the computer 12 to communicate with each other via the bus 40. The computer system 10 can be connected to one or more other similar computers via an input/output (I/O) interface 32 using a communication channel 38 to a network, represented as the Internet 18.
The computer software may be recorded on a computer-readable storage medium, in which case, the computer software program is accessed by the computer system 10 from the storage device 36. Alternatively, the computer software can be accessed directly from the Internet 18 by the computer 12. In either case, a user can interact with the computer system 10 using the keyboard 22 and mouse 24 to operate the programmed computer software executing on the computer 12.
Referring now to FIGS. 2 and 3, an illustration of a long list (as used herein, a long list is a list that spans multiple pages of a computer display requiring scrolling through the multiple pages to view all the elements in the list) is shown. FIG. 2 illustrates one page 50 of the list and FIG. 3 shows a next page 60 of the list. As shown in FIGS. 2 and 3, there are multiple elements 100, 102, and 104 selected. Since they are on different pages and not viewable without scrolling up or down, the user cannot tell whether the elements on a page not currently in focus are still selected, how many have been selected, or which elements have been selected.
One embodiment of the present invention is now illustrated in FIG. 4. While FIG. 4 only shows one page 70 of a long list, it is to be understood that at least one other page (not shown) would be required to view the entire long list. As shown, a user has opened a context menu 408. In addition to the normal elements found in the context menu 408, the present invention adds icons as visual aids to indicate previous and/or next elements have been selected. Thus, while only three elements 410, 412, and 414 are shown selected on page 70, there are additional elements selected on previous and next pages not currently in focus. A visual aid, for example, an arrow 400 pointing upward, can be used to indicate there are elements selected but not currently viewable on pages previous to page 70. Similarly, a visual aid such as an arrow 404 pointing downward can be used to indicate there are elements selected but not currently viewable on the next pages after page 70.
In addition, the present invention may provide other visual aids to the user. For example, a first number 402 can be positioned near the arrow 400 to indicate how many elements have been selected previously to page 70. In the example shown in FIG. 4, the number 402 indicates there are five elements selected previously to page 70. Also, a second number 406 can be positioned near the arrow 404 to indicate how many elements have been selected on the next pages after page 70. In the example shown in FIG. 4, the number 406 indicates there are ten elements selected on the next pages after page 70. Thus, the user knows how many elements are selected previously and how many elements are selected on the pages after the current page without having to scroll back-and-forth between pages.
The user is provided with other tools for ease of use with the present invention. For example, if the user clicks on the arrow 400, the previous pages containing selected elements not currently viewable will be brought to focus. Similarly, if the user clicks on the arrow 404, the next pages containing selected elements not currently viewable will be brought to focus. The same result may be obtained if the user drags the context menu 408 upwards or downwards, i.e., dragging the menu 408 upward will bring a previous page with selected elements into view, and dragging the menu 408 downward will bring a next page with selected elements into view.
Referring now to FIG. 5, a further user visual aid available with the present invention is illustrated. The same page 70 of FIG. 4 is shown in FIG. 5 with the additional visual aid. By “mousing over” arrow 400, a list 416 of the elements selected on previous pages to the current page 70 will “pop-up” into view. Although not shown, by “mousing over” arrow 404, a list of the elements selected on the next pages below the current page 70 will also “pop-up” into view.
Referring now to FIG. 5 and FIG. 6, a flowchart describing the present invention is illustrated. The invention starts at 600 and a graphical user interface (GUI) event is received at block 602. It is then determined at decision block 604 whether or not an element selection signal (i.e., a user has selected an element, such as element 410 in FIG. 5) has been received from the GUI. If the response to decision block 604 is yes, the element (element 410) is highlighted at block 606. It is then determined at decision block 608 whether or not to append the highlighted element to a previous selection (i.e., the highlighted element is added to other selections already highlighted in a long list). If the response to decision block 608 is no, the present invention at block 610 resets counters and clears the selection from a holding area. Subsequent to block 610 or if the response to decision block 608 was yes, the present invention adds the element to a selection area at block 612. Then, the invention returns to block 600 to start another cycle.
If the response to decision block 604 was no, the invention checks at decision block 614 whether or not a context menu calling signal has been received. If the response to decision block 614 is yes, the number of elements in the previous and next views is calculated at block 616. It is then determined at decision block 618 whether or not the element is in a previous (i.e., before the current page) view. If the response to decision block 618 is yes, an icon indicating the element is in a previous selection view is enabled in the context menu at block 620. If the response to decision block 618 is no, an icon indicting the element is in a previous selection view is disabled in the context menu at block 622.
After block 620 or block 622, it is determined at decision block 624 whether or not the element is in the next selection view. If the response to decision block 624 is yes, the icon for a next selection view is enabled in the context menu at block 626. On the other hand, if the response to decision block 624 is no, the icon for a next selection view is disabled in the context menu at block 628. After either block 626 or 628, the count of elements in the next and previous selection views is set in the context menu at block 630. The context menu information is then displayed at block 632 and the invention returns to start at block 600.
If the response to decision block 614 is no, the present invention determines whether a selection window was scrolled at block 634. If the response to decision block 634 is no, it is determined at decision block 636 whether a selection window was resized. If the answer to decision block 636 or decision block 634 is yes, it is determined at decision block 638 whether a context menu is active. If the response is no, the number of elements in previous and next selection views is calculated at block 640 and then returns to start block 600.
If the response to decision block 636 was no, it is determined at decision block 642 whether an icon for previous views was clicked. If the response is no, the invention detects at decision block 644 whether or not there is a scrolling up action at a context menu. If the response to decision block 642 or decision block 644 is yes, a previous view containing the selection is scrolled to at block 646 and the invention returns to start at block 600.
If the response to decision block 644 was no, it is determined at decision block 648 whether an icon for a next view was clicked. If the response to decision block 648 is no, it is determined at decision block 652 whether a context menu has been detected to be scrolling down. If the response to decision block 652 or decision block 648 is yes, at block 650 the selection window is scrolled to the next view containing a selection. The invention then returns to start at 600.
If the response to decision block 652 was no, it is determined at decision block 654 whether a “mouse over” for a previous selection view was detected. If the response to decision block 654 is yes, a list of selected elements in previous selection views is gathered at block 658. If the response to decision block 654 is no, it is determined at decision block 656 whether a “mouse over” for a next selection view was detected. If the response to decision block 656 is no, the invention returns to start at block 600.
If the response to decision block 656 is yes, a list of selected elements in the next selection view is gathered at block 660. After block 660 or block 658, a scrollable window with the elements gathered in the previous steps is built at block 662. The scrollable window is made semi-transparent at block 664 and is then displayed at block 666. The invention then returns to start at block 600.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (16)

1. A method for providing a navigation environment for a user to navigate a long list of selectable elements spanning at least two pages of a computer display, comprising:
providing, with a processor, a scrollable context menu;
determining, with said processor, whether at least one element has been selected on a page in a previous view;
when at least one element is determined to have been selected in said previous view, positioning a first visual aid on said scrollable context menu to indicate said at least one element has been selected in said previous view;
determining, with said processor, whether at least one element has been selected on a page in a next view;
when at least one element is determined to have been selected in said next view, positioning a second visual aid on said scrollable context menu to indicate said at least one element has been selected in said next view;
positioning a third visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said previous view; and
positioning a fourth visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said next view.
2. The method of claim 1, further comprising:
scrolling to said previous view in response to clicking said first visual aid; and
scrolling to said next view in response to clicking said second visual aid.
3. The method of claim 1, further comprising scrolling said context menu upward in response to the user initiating a scrolling action to view said at least one element selected in said previous view.
4. The method of claim 1, further comprising scrolling said context menu downward in response to the user initiating a scrolling action to view said at least one element selected in said next view.
5. The method of claim 1, further comprising displaying a first list comprising all elements in said total number of elements selected in said previous view in response to a cursor being placed over said first visual aid on said scrollable context menu.
6. The method of claim 1, further comprising displaying a second list comprising all elements in said total number of elements selected in said next view in response to a cursor being placed over said second visual aid on said scrollable context menu.
7. A navigation environment system for a user to navigate a long list of selectable elements spanning at least two pages of a computer display, comprising:
a processor; and
memory connected to the processor, wherein the memory is encoded with instructions and wherein the instructions when executed comprise:
instructions for forming a scrollable context menu;
instructions for determining whether at least one element has been selected on a page in a previous view;
when at least one element is determined to have been selected in said previous view, instructions for positioning a first visual aid on said scrollable context menu to indicate said at least one element has been selected in said previous view;
instructions for determining whether at least one element has been selected on a page in a next view;
when at least one element is determined to have been selected in said next view, instructions for positioning a second visual aid on said scrollable context menu to indicate said at least one element has been selected in said next view;
instructions for positioning a third visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said previous view; and
instructions for positioning a fourth visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said next view.
8. The system of claim 7, further comprising:
in response to clicking said first visual aid, instructions for moving the computer display to said previous view; and
in response to clicking said second visual aid, instructions for moving the computer display to said next view.
9. The system of claim 7, further comprising instructions for displaying a first list comprising all elements in said total number of elements selected in said previous view viewable by placing a cursor over said first visual aid on said scrollable context menu.
10. The system of claim 7, further comprising instructions for displaying a second list comprising all elements in said total number of elements selected in said next view viewable by placing a cursor over said second visual aid on said scrollable context menu.
11. A computer program product for providing a navigation environment for a user to navigate a long list of selectable elements spanning at least two pages of a computer display, the computer program product comprising a tangible computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
computer readable program code configured to provide a scrollable context menu;
computer readable program code configured to determine whether at least one element has been selected on a page in a previous view;
when at least one element is determined to have been selected in said previous view, computer readable program code configured to provide a first visual aid on said scrollable context menu to indicate said at least one element selected in said previous view;
computer readable program code configured to determine whether at least one element has been selected on a page in a next view;
when at least one element is determined to have been selected in said next view, computer readable program code configured to provide a second visual aid on said scrollable context menu to indicate said at least one element has been selected in said next view;
computer readable program code configured to position a third visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said previous view; and
computer readable program code configured to position a fourth visual aid on said scrollable context menu comprising a numerical count of a total number of elements selected in said next view.
12. The computer program product of claim 11, further comprising:
computer readable program code configured to scroll to said previous view in response to clicking said first visual aid; and
computer readable program code configured to scroll to said next view in response to clicking said second visual aid.
13. The computer program product of claim 11, further comprising computer readable program code configured to scroll said context menu upward in response to the user initiating a scrolling action to view said at least one element selected in said previous view.
14. The computer program product of claim 11, further comprising computer readable program code configured to scroll said context menu downward in response to the user initiating a scrolling action to view said at least one element selected in said next view.
15. The computer program product of claim 11, further comprising computer readable program code configured to display a first list of said at least one comprising all elements in said total number of elements selected in a said previous view by placing a cursor over said first visual aid on said scrollable context menu.
16. The computer program product of claim 11, further comprising computer readable program code configured to display a second list comprising all elements in said total number of elements selected in said next view by placing a cursor over said second visual aid on said scrollable context menu.
US12/567,439 2009-09-25 2009-09-25 Scrollable context menu for multiple element selection Expired - Fee Related US8352878B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/567,439 US8352878B2 (en) 2009-09-25 2009-09-25 Scrollable context menu for multiple element selection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/567,439 US8352878B2 (en) 2009-09-25 2009-09-25 Scrollable context menu for multiple element selection

Publications (2)

Publication Number Publication Date
US20110078630A1 US20110078630A1 (en) 2011-03-31
US8352878B2 true US8352878B2 (en) 2013-01-08

Family

ID=43781722

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/567,439 Expired - Fee Related US8352878B2 (en) 2009-09-25 2009-09-25 Scrollable context menu for multiple element selection

Country Status (1)

Country Link
US (1) US8352878B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100058216A1 (en) * 2008-09-01 2010-03-04 Samsung Electronics Co., Ltd. Apparatus and method for providing user interface to generate a menu list

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214763B2 (en) * 2009-03-24 2012-07-03 International Business Machines Corporation Auto-positioning a context menu on a GUI
US9652914B2 (en) * 2010-08-31 2017-05-16 Plantronics, Inc. Methods and systems for secure pass-set entry
CN102566900A (en) * 2011-11-17 2012-07-11 珠海金山办公软件有限公司 Scroll toolbar display control method
US20150205478A1 (en) * 2011-12-12 2015-07-23 Google Inc. Content location interface
KR101575969B1 (en) * 2014-07-14 2015-12-08 엘지전자 주식회사 Terminal and operating method thereof
CN110287108A (en) * 2019-05-31 2019-09-27 北京随信云链科技有限公司 A kind of page test method calculates equipment and storage medium
CN111310086A (en) * 2020-02-03 2020-06-19 北京无限光场科技有限公司 Page jump method and device and electronic equipment
CN113835603A (en) * 2021-08-31 2021-12-24 五八有限公司 Page element selection method and device, electronic equipment and storage medium
CN114253445B (en) * 2021-12-22 2024-01-30 北京金堤科技有限公司 Configuration method of sliding linkage mode, page linkage method and page linkage device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050091604A1 (en) * 2003-10-22 2005-04-28 Scott Davis Systems and methods that track a user-identified point of focus
US20060075357A1 (en) * 2004-10-05 2006-04-06 International Business Machines Corporation Method and system for maintaining scroll position in a web user interface

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050091604A1 (en) * 2003-10-22 2005-04-28 Scott Davis Systems and methods that track a user-identified point of focus
US20060075357A1 (en) * 2004-10-05 2006-04-06 International Business Machines Corporation Method and system for maintaining scroll position in a web user interface

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100058216A1 (en) * 2008-09-01 2010-03-04 Samsung Electronics Co., Ltd. Apparatus and method for providing user interface to generate a menu list

Also Published As

Publication number Publication date
US20110078630A1 (en) 2011-03-31

Similar Documents

Publication Publication Date Title
US8352878B2 (en) Scrollable context menu for multiple element selection
US7735019B2 (en) Method for providing functional context within an actively scrolling view pane
US9003298B2 (en) Web page application controls
US9788072B2 (en) Providing a search service convertible between a search window and an image display window
US10108330B2 (en) Automatic highlighting of formula parameters for limited display devices
US7802203B2 (en) Method for providing selectable alternate menu views
US20110314421A1 (en) Access to Touch Screens
JP6093432B2 (en) Web page application control
KR20140039209A (en) Web browser with quick site access user interface
JP2011516942A (en) Service preview and access from application page
US9639237B2 (en) User-customizable context menus
EP2642377B1 (en) Handheld device and homescreen management method thereof
JP6458751B2 (en) Display control device
KR20110028521A (en) Graphical user interface for non mouse-based activation of links
US20150213148A1 (en) Systems and methods for browsing
US20140351745A1 (en) Content navigation having a selection function and visual indicator thereof
GB2518203A (en) GUI configuration
US20120278758A1 (en) Image browsing system and method for zooming images and method for switching among images
US20150268805A1 (en) User interface to open a different ebook responsive to a user gesture
KR20150129638A (en) Method and Apparatus for executing an object
JP2004334705A (en) Multi-functionalization apparatus and method for mouse cursor, processing method for operation indication for information equipment, storage method for content, and method of opening content by prescribed application
KR101418922B1 (en) Method and apparatus for controlling plural objects
US20130290907A1 (en) Creating an object group including object information for interface objects identified in a group selection mode
US20130174068A1 (en) Preference management for application controls
KR101333005B1 (en) Method for controlling speed of scalable scroll, and computer-readable recording medium for the same

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DUQUENE, JOEL;JOHNSON, MORRIS S., JR.;MELI, HENRI F.;AND OTHERS;REEL/FRAME:023287/0108

Effective date: 20090921

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20170108