KR101366445B1 - 방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체 - Google Patents

방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체 Download PDF

Info

Publication number
KR101366445B1
KR101366445B1 KR1020117028354A KR20117028354A KR101366445B1 KR 101366445 B1 KR101366445 B1 KR 101366445B1 KR 1020117028354 A KR1020117028354 A KR 1020117028354A KR 20117028354 A KR20117028354 A KR 20117028354A KR 101366445 B1 KR101366445 B1 KR 101366445B1
Authority
KR
South Korea
Prior art keywords
menu
radial
item
selectable
icon
Prior art date
Application number
KR1020117028354A
Other languages
English (en)
Other versions
KR20120025487A (ko
Inventor
피터 바르네
Original Assignee
애플 인크.
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 애플 인크. filed Critical 애플 인크.
Publication of KR20120025487A publication Critical patent/KR20120025487A/ko
Application granted granted Critical
Publication of KR101366445B1 publication Critical patent/KR101366445B1/ko

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
    • 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
    • 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/04817Interaction 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 using icons

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

본 발명의 일부 실시예는 응용 프로그램의 그래픽 사용자 인터페이스에서 방사형 메뉴를 조작하는 몇가지 새로운 기법을 제공한다. 일부 실시예에서, 방사형 메뉴는 내부 위치(예를 들어, 방사형 메뉴의 중심) 둘레에 배열된 다수의 선택가능 항목을 포함하고 있다. 일부 실시예의 새로운 방사형 메뉴 기법은 (i) 불균일한 메뉴 항목의 간격, (ii) 항목의 현재 선택가능성을 나타내기 위해 항목과 연관된 영역 내에서 음영 또는 하이라이트를 사용하는 것, 및 (iii) 서브메뉴를 열고 이어서 서브메뉴를 디스플레이하기 위해 방사형 제스처를 사용하는 것을 포함한다.

Description

방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체 {METHOD, COMPUTER SYSTEM, AND COMPUTER READABLE STORAGE MEDIUM FOR RADIAL MENUS}
본 발명은 그래픽 사용자 인터페이스에서의 메뉴 또는 도구모음 옵션의 제시에 관한 것이다. 구체적으로는, 본 발명은 이들 옵션을 방사형(radial form)으로 제시하는 것에 관한 것이다.
컴퓨터 응용 프로그램의 사용자 인터페이스는 종종 사용자가 선택하는 수많은 명령 또는 사용자 인터페이스 도구를 제공한다. 예를 들어, 많은 응용 프로그램은 드롭다운 메뉴를 포함하고 있다. 이러한 메뉴는 종종 명령의 목록을 포함하고 있다. 파일 열기, 문서 인쇄, 문서 저장 등과 같은 표준 명령은 물론, 페이지 나누기(워드 프로세싱 응용 프로그램의 경우), 셀 형식 지정(스프레드시트 응용 프로그램의 경우) 등과 같은 보다 응용 프로그램에 특유한 명령이 있다.
이러한 드롭다운 메뉴는 종종 응용 프로그램이 실행 중인 창의 상단에 위치한다. 커서 제어기를 통해 드롭다운 메뉴에 액세스하는 것은 커서 제어 장치를 사용하여 커서를 창의 상단으로 움직이고, 이어서 적절한 최상위 레벨 메뉴 항목으로 이동하여 (필요한 경우) 서브메뉴를 선택하는 것 등을 수반한다. 커서를 사용하여 선형 풀다운 메뉴 상의 항목을 선택하는 것은 사용자가 메뉴를 따라 특정의 거리만큼 커서를 움직여 원하는 메뉴 항목에 도달하는 것을 필요로 한다. 이것은, 원하는 메뉴 항목을 넘어가는 일 없이 그 메뉴 항목에 도달하기 위해, 상당한 거리에 거쳐 상당한 정밀도로 커서를 움직이는 것을 필요로 할 수 있다.
방사형 메뉴(radial menu)는, 드롭다운 메뉴에 내재적인 어려움 없이, 원하는 메뉴 선택을 제공할 수 있다. 그러나, 널리 보급된 컴퓨팅 응용 프로그램에서 방사형 메뉴가 현재 아직 최소한으로 사용되고 있다. 그에 따라, 이러한 메뉴를 사용자에게 보다 바람직하게 만들어 줄 개선된 특징을 갖는 방사형 메뉴가 필요하다.
본 발명의 일부 실시예는 응용 프로그램의 그래픽 사용자 인터페이스에서 방사형 메뉴를 조작하는 몇가지 새로운 기법을 제공한다. 일부 실시예에서, 방사형 메뉴는 내부 위치(예를 들어, 방사형 메뉴의 중심) 둘레에 배열된 다수의 선택가능 항목을 포함하고 있다. 일부 실시예의 새로운 방사형 메뉴 기법은 (i) 불균일한 메뉴 항목의 간격, (ii) 항목의 현재 선택가능성을 나타내기 위해 항목과 연관된 영역 내에서 음영 또는 하이라이트를 사용하는 것, 및 (iii) 서브메뉴를 열고 이어서 서브메뉴를 디스플레이하기 위해 방사형 제스처를 사용하는 것을 포함한다.
일부 실시예에서, 내부 위치 둘레에 있는 선택가능 항목의 불균일한 배열은 상이한 선택가능 항목에 할당된 우선순위에 기초하고 있다. 구체적으로는, 일부 실시예는, 높은 우선순위를 갖는 항목이 낮은 우선순위를 갖는 항목보다 그의 이웃 항목으로부터 더 멀리 있도록, 메뉴 항목 사이의 거리를 변화시킨다. 일부 실시예는 각각의 메뉴 항목에 각도 범위를 할당한다. 사용자가 각도 범위에 의해 정의된 각도 영역 내에서 커서를 움직이거나 터치스크린을 터치하고 이어서 선택 입력을 제공하는 것은 메뉴 항목을 선택할 것이다. 일부 이러한 실시예는 낮은 우선순위 항목에보다 높은 우선순위 항목에 더 큰 각도 범위를 할당한다. 메뉴 항목의 선택 빈도수 또는 예상된 선택 빈도수와 같은 다양한 기준이 상이한 메뉴 항목의 우선순위를 결정하는 데 사용될 수 있다.
일부 실시예는, 메뉴 항목이 현재 선택가능할 때, 메뉴 항목의 선택가능 영역 상에 하이라이트를 디스플레이한다. 일부 실시예에서, 메뉴 항목이 개별 아이콘으로서 디스플레이되고, 하이라이트된 영역이 디스플레이된 아이콘보다 더 크다. 일부 실시예에서, 방사형 메뉴의 중심으로부터 디스플레이된 메뉴 항목 쪽으로 광이 방사하는 것처럼 하이라이트가 디스플레이된다. 일부 실시예에서, 이 하이라이트에 의해 커버되는 영역은 특정의 메뉴 항목에 할당된 각도 범위에 의해 정의된 각도 영역, 또는 특정의 반경 거리만큼 뻗어 있는 그 각도 영역의 일부분이다. 일부 실시예에서, 커서가 그 영역 위에 있을 때 특정의 항목에 대한 영역이 하이라이트되고, 사용자는 그 경우에 마우스 버튼을 클릭하는 것, 터치패드를 탭핑하는 것 등에 의해 항목을 선택할 수 있다.
마우스 클릭 또는 동등한 입력에 부가하여, 일부 실시예는 메뉴 항목의 제스처 선택(gestural selection)을 가능하게 한다. 일부 실시예에서, 제스처 선택은 특정의 방향으로의 커서의 빠른 움직임이다. 클릭 선택과 같이, 제스처 선택에 의해 방사형 메뉴로부터 특정의 메뉴 항목이 선택된다. 일부 실시예에서, 제스처의 각도는 선택된 메뉴 항목을 결정한다. 선택된 메뉴 항목이 서브메뉴를 열 때, 일부 실시예는 추가의 입력이 수신될 때까지 기다리고 서브메뉴를 중심 위치가 커서의 위치에 있는 방사형 메뉴로서 디스플레이한다. 이것은 차후의 빠른 스위프 제스처를 가능하게 한다.
일부 실시예에서, 이상의 설명에서 언급된 커서는 화면 상에 디스플레이되는 아이콘(예를 들어, 화살표)이다. 화면 상의 아이콘을 움직이기 위해 사용자와 상호작용하는 커서 제어 장치(예를 들어, 마우스, 트랙패드 등)를 통해 사용자에 의해 아이콘이 제어된다. 사용자는 또한 선택(예를 들어, 마우스 버튼을 클릭하는 것 또는 두번 클릭하는 것에 의함)과 같은 다른 입력을 발생하기 위해 커서 제어 장치와 상호작용한다. 그러나, 다른 실시예에서, 커서가 디스플레이되지 않고, 사용자가 화면을 터치하는(즉, 방사형 메뉴가 터치스크린 상에 디스플레이될 때) 위치로서 정의된다. 따라서, 비록 아이콘이 실제로 디스플레이되지 않더라도, 사용자의 손가락(또는 터치스크린을 터치하는 다른 물체)이 움직임에 따라 커서가 움직인다.
본 발명의 새로운 특징이 첨부된 특허청구범위에 기술되어 있다. 그러나, 설명을 위해, 본 발명의 몇가지 실시예가 이하의 도면에 기술되어 있다.
도 1은 가능한 일련의 선택가능 메뉴 항목을 개념적으로 나타낸 도면이다.
도 2는 도 1의 8개의 선택가능 메뉴 항목을 갖는 방사형 메뉴를 나타낸 도면이다.
도 3 및 도 4는 도 2의 방사형 메뉴의 상이한 메뉴 항목에 대한 하이라이트의 예를 나타낸 도면이다.
도 5는 서브메뉴를 여는 방사형 메뉴의 메뉴 항목의 제스처 선택을 나타낸 도면이다.
도 6은 선택가능 항목들이 중심 위치 둘레에 불균일하게 배열되어 있는 방사형 메뉴를 여는 것 및 디스플레이하는 것을 나타낸 도면이다.
도 7은 선택가능 항목들이 GUI에서의 중심 위치 둘레에 불균일하게 배열되어 있는 방사형 메뉴를 디스플레이하는 일부 실시예의 프로세스를 개념적으로 나타낸 도면이다.
도 8은 일부 실시예에 따른 방사형 메뉴에서 각각의 메뉴 항목에 각도 영역을 할당하는 것을 나타낸 도면이다.
도 9는 일부 실시예의 방사형 메뉴를 포함하는 GUI에 대한 다양한 상태 및 그 상태들 사이의 천이를 반영하는 상태도를 나타낸 도면이다.
도 10 및 도 11은 메뉴 항목이 하이라이트되도록 커서가 2개의 상이한 메뉴 항목 상에 있는 도 6의 방사형 메뉴를 나타낸 도면이다.
도 12는 일부 실시예에 따른 주 메뉴(primary menu)로부터 메뉴 항목을 선택한 것에 응답하여 서브메뉴를 여는 것을 나타낸 도면이다.
도 13은 방사형 메뉴로부터 메뉴를 선택하는 것과 그 후에 방사형 메뉴를 닫는 것을 나타낸 도면이다.
도 14는 4개의 동일한 간격으로 있는 메뉴 항목을 갖는 방사형 메뉴를 나타낸 도면이다.
도 15는 도 14의 방사형 메뉴 및 방사형 메뉴의 중심에서 시작하는 커서의 제스처 움직임을 나타낸 도면이다.
도 16은 도 14의 방사형 메뉴 및 방사형 메뉴의 중심에서 시작하지 않는 커서의 제스처 움직임을 나타낸 도면이다.
도 17은 방사형 메뉴 및 서브메뉴를 디스플레이하고 메뉴로부터의 선택을 수신하는 일부 실시예의 프로세스를 개념적으로 나타낸 도면이다.
도 18은 메뉴 항목을 선택하기 위해 클릭 입력과 그 후의 스위프 제스처로 인해 방사형 메뉴를 여는 것을 나타낸 도면이다.
도 19는 도 18에서의 메뉴 항목의 제스처 선택의 결과를 나타낸 도면이다.
도 20은 방사형 서브메뉴를 커서 위치로 이동시키기 위한 사용자 움직임과 서브메뉴로부터의 메뉴 항목의 제스처 선택의 결과를 나타낸 도면이다.
도 21은 일부 실시예의 방사형 메뉴를 비롯한 운영 체제의 다양한 특징을 디스플레이하는 컴퓨터 바탕 화면을 나타낸 도면이다.
도 22는 일부 실시예의 방사형 메뉴를 이용하는 비디오 편집 응용 프로그램을 나타낸 도면이다.
도 23은 일부 실시예의 방사형 메뉴를 사용하여 웹 브라우저를 디스플레이하는 핸드헬드 장치를 나타낸 도면이다.
도 24는 방사형 메뉴를 제시하는 일부 실시예의 응용 프로그램의 소프트웨어 아키텍처를 개념적으로 나타낸 도면이다.
도 25는 응용 프로그램을 제작하는 일부 실시예의 프로세스를 개념적으로 나타낸 도면이다.
도 26은 본 발명의 일부 실시예가 예시되어 있는 컴퓨터 시스템을 개념적으로 나타낸 도면이다.
이하의 기재 내용에, 설명을 위해 많은 상세가 기술되어 있다. 그러나, 당업자라면 본 발명이 이들 구체적인 상세를 사용하지 않고도 실시될 수 있다는 것을 인식할 것이다. 예를 들어, 본 출원의 일부 부분은 마우스로부터 입력을 수신하는 예를 참조한다. 당업자라면 유사한 입력이 다른 커서 제어기로부터 또는 커서도 없는 터치스크린으로부터조차도 수신될 수 있다는 것을 인식할 것이다.
본 발명의 일부 실시예는 장치의 응용 프로그램의 그래픽 사용자 인터페이스(GUI)에서 방사형 메뉴를 조작하는 몇가지 새로운 기법을 제공한다. 일부 실시예에서, 방사형 메뉴는 내부 위치 둘레에 배열된(예를 들어, 방사형 메뉴의 내부 위치 둘레에 전체적으로 또는 부분적으로 곡선으로 배열된) 다수의 선택가능 항목을 포함하고 있다. 방사형 메뉴가 제시되는 GUI는 장치(예를 들어, 컴퓨터, 핸드헬드 장치 등) 상의 운영 체제, 운영 체제의 상위에서 실행되는 응용 프로그램, 독립형 응용 프로그램 등의 GUI일 수 있다. 일부 실시예의 새로운 방사형 메뉴 기법은 (i) 불균일한 메뉴 항목의 간격, (ii) 항목의 현재 선택가능성을 나타내기 위해 항목과 연관된 영역 내에서 음영 또는 하이라이트를 사용하는 것, 및 (iii) 서브메뉴를 열고 이어서 서브메뉴를 디스플레이하기 위해 방사형 제스처를 사용하는 것을 포함한다.
도 2 내지 도 5를 참조하여 이들 특징의 몇가지 상위 레벨 예에 대해 이하에서 기술할 것이다. 도 1에 개념적으로 예시되어 있는 가능한 일련의 선택가능 메뉴 항목(100)을 참조하여 이들 예에 대해 기술할 것이다. 도 1은 8개의 주 메뉴 항목, 항목 A 내지 항목 H(101 내지 108)를 나타내고 있다. 8개의 주 메뉴 항목 각각이 (i) 명령어(예를 들어, 파일 저장, 텍스트 복사 등)를 수행하고, (ii) 도구(예를 들어, 비디오 편집 도구, 그리기 도구 등)를 활성화시키며, (iii) 서브메뉴를 여는 명령과 연관되어 있다. 항목 F(106)는 선택하면 4개의 항목(111 내지 114)을 갖는 서브메뉴를 여는 메뉴 항목의 예이다.
도 2는 8개의 선택가능 메뉴 항목(101 내지 108)을 갖는 방사형 메뉴(200)를 나타낸 것이다. 이들 메뉴 항목이 방사형 메뉴에서 개별 아이콘으로서 디스플레이되고, 이들 모두는 메뉴의 중심 위치로부터 반경 방향 거리 R에 있다. 방사형 메뉴(200)에서, 메뉴 항목이 서로로부터 동일하지 않은 거리에 디스플레이된다. 예를 들어, 항목 C(103)와 항목 G(107) 사이의 거리(205)가 항목 H(108)와 항목 A(101) 사이의 거리(210)보다 상당히 더 크다.
일부 실시예에서, 상이한 메뉴 항목 사이의 거리의 변동은 메뉴 항목에 할당된 우선순위에 기초한다. 구체적으로는, 일부 실시예는, 높은 우선순위를 갖는 메뉴 항목이 낮은 우선순위를 갖는 메뉴 항목보다 이웃 메뉴 항목으로부터 더 멀리 있도록, 메뉴 항목 사이의 거리를 변화시킨다. 일부 실시예에서, 방사형 메뉴에 있는 각각의 메뉴 항목은 특정의 각도 범위를 할당받고, 디스플레이된 아이콘은 그의 특정의 범위의 경계 사이의 중간에 위치한다. 특정의 메뉴 항목의 우선순위가 높을수록, 특정의 메뉴 항목에 할당된 각도 범위가 크다. 예를 들어, 항목 B(102)는 항목 E(105)보다 높은 우선순위를 가지며, 따라서 방사형 메뉴(200)에서 보다 큰 각도 범위를 할당받는다.
상이한 메뉴 항목에 대한 우선순위를 결정하기 위해 다양한 기준이 사용될 수 있다. 예를 들어, 일부 실시예는 메뉴 항목이 선택되는 빈도수를 사용하여, 메뉴 항목의 우선순위를 할당한다. 보다 정기적으로 선택되는 메뉴 항목이 보다 높은 우선순위를 가질 것이며, 따라서 보다 큰 각도 영역을 할당받고 보다 멀리 떨어져 디스플레이될 것이다. 선택 빈도수를 사용하여 우선순위를 결정하는 결과로서, 우선순위가 시간에 따라 변할 수 있고, 따라서 방사형 메뉴의 디스플레이가 변할 것이다.
비록 메뉴 항목이 개별 아이콘으로서 디스플레이되어 있더라도, 일부 실시예는, 메뉴 항목이 현재 선택가능할 때, 디스플레이된 아이콘보다 큰 메뉴 항목의 선택가능 영역에 걸쳐 하이라이트를 디스플레이한다. 일부 실시예에서, 커서가 특정의 메뉴 항목 상에 위치할 때 그 특정의 메뉴 항목이 현재 선택가능하다. 도 3 및 도 4는 방사형 메뉴(200)의 상이한 메뉴 항목에 대한 이러한 하이라이트의 예를 나타낸 것이다. 도 3은 커서(305)가 목 G(107)에 대한 디스플레이된 아이콘 상에 위치하는 것을 나타내고 있다. 커서가 항목 G(107) 상에 위치하기 때문에, 이 항목이 현재 선택가능하고 따라서 하이라이트되어 있다. 즉, 사용자는 마우스 버튼을 클릭, 터치패드를 탭핑 등을 하여, 그의 현재 위치에 있는 커서로 항목 G(107)를 선택할 수 있다. 하이라이트(310)는 항목 G(107)에 할당된 각도 범위를 나타내며, 디스플레이된 아이콘은 각도 범위의 중간에 위치한다. 일부 실시예에서, 하이라이트는 방사형 메뉴의 중심으로부터 방사하여 현재 선택가능한 메뉴 항목을 비추는 광으로서 디스플레이된다.
도 4는 커서(305)가 항목 E(105)에 할당된 각도 영역 내에 위치하는 방사형 메뉴(200)를 나타내고 있다. 비록 커서가 실제로는 디스플레이된 아이콘 상에 있지 않지만, 메뉴 항목이 그럼에도 불구하고 하이라이트(410)에 의해 하이라이트된다. 일부 실시예에서, 사용자는 그 메뉴 항목에 할당된 각도 영역 내의 아무 곳이나 클릭함으로써 방사형 메뉴로부터 메뉴 항목을 선택할 수 있다. 따라서, 비록 커서(305)가 메뉴 항목(105)에 대한 디스플레이된 아이콘 상에 위치하지 않지만, 사용자가 마우스 버튼을 클릭하거나 동등한 선택 입력을 제공하는 경우, 항목 E(105)가 선택될 것이다. 일부 실시예에서, 커서가 사용자가 메뉴 항목을 선택할 방사형 메뉴 근방에 있을 필요가 없도록, 이 각도 영역이 바깥쪽으로 무한히 뻗어 있다.
마우스 클릭 또는 동등한 입력에 부가하여, 일부 실시예는 메뉴 항목의 제스처 선택도 가능하게 한다. 일부 실시예에서, 제스처 선택은 특정의 방향으로의 커서의 빠른 움직임이다. 클릭 선택과 같이, 제스처 선택에 의해 방사형 메뉴로부터 특정의 메뉴 항목이 선택된다. 도 5는 메뉴 항목(101 내지 108)을 역시 포함하는 방사형 메뉴(500)로부터 서브메뉴를 여는 메뉴 항목(106)의 제스처 선택을 나타내고 있다. 도 5는 2개의 스테이지, 즉 제스처 선택을 나타내는 제1 스테이지(510) 및 서브메뉴(550)의 열기를 나타내는 제2 스테이지(520)를 나타내고 있다.
스테이지(510)는 방사형 메뉴(500)를 나타내고 있다. 8개의 메뉴 항목 모두가 방사형 메뉴(500)에서 동일한 우선순위를 부여받고 따라서 중심 위치 둘레에서 동일한 간격으로 있다. 스테이지(510)는 또한 메뉴의 중심으로부터 메뉴의 중심과 항목 F(106)에 대한 디스플레이된 아이콘 사이의 위치(515)로, 항목 F(106)에 대한 디스플레이된 아이콘을 벗어난 위치(525)로의 커서(505)의 움직임을 나타내고 있다. 이 방향으로의 커서(505)의 빠른 움직임은 항목 F(106)의 선택을 야기하는 제스처 움직임이다. 일부 실시예에서, 이러한 제스처 움직임에 의해 선택되는 항목은 커서 움직임의 각도에 의존한다. 커서 움직임의 각도가 특정의 항목에 할당된 각도 범위 내에 있을 때, 특정의 항목이 선택된다. 스테이지(510)에서, 커서 움직임의 각도는 메뉴 항목(106)에 할당된 각도이다.
스테이지(520)는 제스처 선택을 통해 항목 F(106)를 선택한 결과를 나타내고 있다. 항목(106)의 선택에 의해 서브메뉴(550)가 열린다. 일부 실시예에서, 도시된 바와 같이, 제스처 선택 이후의 커서의 위치에 중심을 둔 방사형 메뉴로서 서브메뉴가 열린다. 일부 실시예에서, 선택 입력(예를 들어, 마우스 클릭, 터치패드의 탭핑, 키스트로크 등)이 사용자로부터 수신될 때까지 서브메뉴가 이 위치에 디스플레이되지 않는다. 이 입력을 수신할 시에, 사용자가 나중에 제스처 입력 또는 기타 입력을 통해 서브메뉴로부터 항목을 쉽게 선택할 수 있도록 서브메뉴가 커서 둘레에 디스플레이된다.
이상의 예 및 이하의 예 중 다수가, 다수의 널리 보급된 컴퓨팅 시스템에서 흔히 있는 것과 같이, 커서를 마우스와 같은 커서 제어 장치로부터의 입력을 통해 사용자에 의해 이동되는 아이콘(예를 들어, 화살표)으로서 나타내고 있지만, 당업자라면 커서의 개념이 이러한 예로 제한되지 않는다는 것을 인식할 것이다. 일부 실시예에서, 예를 들어, 커서가 디스플레이되지 않고, 사용자가 화면을 터치하는(즉, 방사형 메뉴가 터치스크린 상에 디스플레이될 때) 위치로서 정의된다. 따라서, 비록 아이콘이 실제로 디스플레이되지 않더라도, 사용자의 손가락(또는 터치스크린을 터치하는 다른 물체)이 움직임에 따라 커서가 움직인다.
이상의 내용은 방사형 메뉴의 다수의 새로운 특징의 예를 제공하였다. 본 발명의 몇가지 더 상세한 실시예가 이하의 섹션들에 기술되어 있다. 섹션 I는 메뉴 항목에 우선순위를 할당하는 것 및 이들 우선순위에 기초하여 방사형 메뉴를 디스플레이하는 것을 기술하고 있다. 섹션 II는 일부 실시예에 따라 방사형 메뉴 내의 메뉴 항목을 하이라이트하고 선택하는 것을 기술하고 있다. 섹션 III는 이것에 뒤이어서 제스처 선택 및 제스처 선택의 결과로서 서브메뉴를 여는 것을 기술하고 있다. 섹션 IV는 일부 실시예의 방사형 메뉴의 다양한 용도를 설명하고 있다. 그 다음에, 섹션 V는 일부 실시예의 방사형 메뉴를 이용하는 응용 프로그램의 소프트웨어 아키텍처를 기술하고 있고, 섹션 VI는 본 발명의 일부 실시예를 구현하는 컴퓨터 시스템을 기술하고 있다.
I. 방사형 메뉴의 디스플레이
이상에서 기술한 바와 같이, 본 발명의 일부 실시예는 중심 위치 둘레에 배열된 다수의 선택가능 항목을 포함하는 방사형 메뉴와 같은 방사형 GUI 구조를 제공한다. 일부 실시예에서, 선택가능 항목은 상기 도 1 내지 도 5에 도시된 바와 같은 개별 아이콘이다. 즉, 선택가능 항목이 원 또는 기타 형상의 인접한 슬라이스가 아니다. 일부 실시예에서, 이들 개별 아이콘은 각각의 선택가능 항목에 할당된 우선순위에 따라 중심 위치 둘레에 배열되어 있다.
도 6은 선택가능 항목들이 중심 위치 둘레에 불균일하게 배열되어 있는 이러한 방사형 메뉴를 여는 것 및 디스플레이하는 것을 나타낸 것이다. 도 6은 5개의 스테이지(610 내지 650)에서 방사형 메뉴(600)를 여는 것과 디스플레이하는 것을 나타내고 있다. 스테이지(610)는 단일 선택가능 항목을 디스플레이하는 것을 나타내고, 스테이지(620)는 단일 항목을 선택하는 것을 나타내며, 스테이지(630, 640)는 이 선택에 응답하여 방사형 메뉴를 여는 것을 나타내고, 스테이지(650)는 완전히 열린 방사형 메뉴를 나타낸다.
상이한 실시예에서, 방사형 메뉴가 상이한 GUI의 일부로서 디스플레이된다. 예를 들어, 방사형 메뉴는 운영 체제, 운영 체제 상에서 실행되는 응용 프로그램(예를 들어, 미디어 편집 응용 프로그램, 워드 프로세싱 응용 프로그램, 컴퓨터 게임 등), 또는 컴퓨터, 핸드헬드 장치(예를 들어, 휴대폰, 미디어 플레이어 등) 또는 기타 컴퓨팅 장치 상의 독립형 응용 프로그램의 GUI의 일부일 수 있다. 도 6의 예 및 이하의 기타 예가 비어 있는 배경의 전방에 디스플레이되는 방사형 메뉴를 나타내고 있지만, 당업자라면, 일부 실시예에서, 방사형 메뉴가 호출될 때 방사형 메뉴 항목이 다른 UI 항목 상에 디스플레이된다는 것을 인식할 것이다.
살펴본 바와 같이, 스테이지(610)는 단일 선택가능 항목(655)을 디스플레이하는 것을 나타내고 있다. 일부 실시예에서, 방사형 메뉴를 디스플레이하는 것은 항목(655)과 같은 초기에 디스플레이된 단일 선택가능 항목을 선택하는 것에 의해 호출된다. 일부 실시예에서, 이러한 항목은 방사형 메뉴가 일부를 이루고 있는 GUI에 영구적으로 디스플레이된다. 일부 GUI는 이들 선택가능 항목 중 다수를 포함하고 있고, 이들 항목 각각을 선택하면 상이한 방사형 메뉴가 호출된다. 한편, 일부 GUI는 한가지 이러한 선택가능 항목만을 포함하고 있다.
일부 실시예에서, 항목(655)에서와 같이, GUI에 영구적으로 디스플레이되는 단일 선택가능 항목은 방사형 메뉴의 선택가능 항목들 중 하나이다. 예를 들어, 일부 실시예에서, 방사형 메뉴 내의 상이한 선택가능 항목은 다양한 도구(예를 들어, 비디오 편집 도구)이며, 특정의 때에 이들 도구 중 단지 하나만이 활성일 수 있다. 따라서, 일부 실시예에서, 방사형 메뉴가 호출되지 않을 때 디스플레이되는 단일 선택가능 항목이 현재 활성인 도구(기본 도구 또는 가장 최근에 선택된 도구)이다.
스테이지(610)는 또한 선택가능 항목(655) 상의 커서(615)를 나타내고 있다. 스테이지(620)는 항목 상에 커서가 있는 상태에서 마우스 클릭을 통해 항목(655)을 선택하는 것을 나타내고 있다. 스테이지(620)의 GUI에서 마우스 클릭이 텍스트 "(클릭...)"에 의해 개념적으로 나타내어져 있지만, 다른 실시예는 방사형 메뉴를 여는 것을 제외하고는 아무 것도 하지 않는 것을 포함하여 다른 방식으로 방사형 메뉴를 호출하기 위해 항목을 선택하는 것을 나타내고 있다. 다른 실시예는 선택된 항목을 그의 초기 디스플레이와 상이한 색으로 번쩍이게 한다. 일부 실시예는, 커서가 (예를 들어, 610에서) 초기에 항목 상에 있을 때, 클릭(또는 다른 선택 입력)이 메뉴 항목을 선택하고 따라서 방사형 메뉴를 호출할 것임을 알려주기 위해 선택가능 항목의 색을 변경한다.
마우스 클릭이 방사형 메뉴를 호출하는 것으로 기술되어 있지만, 당업자라면 방사형 메뉴를 호출하는 데 다른 선택 입력이 가능하다는 것을 인식할 것이다. 예를 들어, 일부 실시예에서, 터치패드, 그래픽 태블릿 및 스타일러스 등과 같은 다른 커서 제어기가 사용될 수 있다. 다른 커서 제어기는 다른 선택 입력(예를 들어, 마우스로부터의 선택 입력이 클릭, 두번 클릭, 우측 클릭 등일 수 있는 반면, 터치패드로부터의 선택 입력은 탭핑, 두번 탭핑, 두 손가락 탭핑 등일 수 있음)을 가질 것이다. 게다가, 일부 실시예는 커서를 전혀 디스플레이하지 않는 터치스크린(예를 들어, 핸드헬드 장치의 터치스크린) 상에 방사형 메뉴를 디스플레이한다. 그 대신에, 사용자는 항목이 디스플레이되는 위치에서 터치스크린을 탭핑함으로써 항목을 선택할 수 있다.
도 6으로 돌아가서, 스테이지(630, 640)는 방사형 메뉴(600)에 대한 일부 실시예의 열기 프로세스를 나타낸 것이다. 도시된 바와 같이, 일부 실시예에서, 호출 시에 방사형 메뉴가 열리며, 선택가능 메뉴 항목이 방사형 메뉴 항목의 중심이 되는, 초기의 선택가능 항목의 위치로부터 바깥쪽으로 나선형으로 있다. 스테이지(630)는 항목(655)의 선택 직후의 방사형 메뉴(600)를 나타낸 것이다. 이 시점에서, 방사형 메뉴(600) 내의 다수의 메뉴 항목(11개의 항목)은 구별될 수 있지만, 대부분의 상이한 항목의 내용은 구별될 수 없다.
스테이지(630)는 또한 상이한 항목의 순서를 나타내고 있다. 11개의 항목은 모두가 초기 항목(655) 아래에 적층되어 있는 것처럼 디스플레이된다. 즉, 항목들로 된 원을 따라 항목(655)으로부터 시계 방향으로 이동하면서, 각각의 항목이 이전의 항목 아래에 디스플레이된다. 이하의 스테이지로부터 알 수 있는 바와 같이, 이것은 항목들이 메뉴 둘레에 궁극적으로 디스플레이되는 순서를 따른다. 일부 실시예는 동일한 항목을 이 적층된 순서에서의 최상위 메뉴 항목으로서 항상 디스플레이하는 반면(예를 들어, 메뉴를 호출하기 위해 선택된 항목이 메뉴의 항목들 중 하나가 아닌 경우에), 다른 실시예는 메뉴를 호출하기 위해 선택된 메뉴 항목을 이 순서에서의 최상위 메뉴 항목으로서 디스플레이한다(예를 들어, 메뉴를 호출하는 항목으로서 가장 최근에 선택된 메뉴 항목을 디스플레이하는 실시예에서).
스테이지(640)는 그의 바깥쪽 확장 열기 프로세스의 중간에서의 방사형 메뉴(600)를 나타낸 것이다. 이 시점에서, 상이한 메뉴 항목의 시각적 콘텐츠(즉, 각각의 아이콘의 그래픽)이 구별가능한데, 그 이유는 각각의 아이콘의 대부분이 보이도록 항목들이 충분히 멀리 떨어져 퍼져 있기 때문이다. 항목들은 여전히 스테이지(630)로부터 그의 순서로 있으며, 원을 따라서도 적층에서도 시계 방향으로 진행하지만, 항목들 중 일부는 적층 양태가 더 이상 두드러지지 않도록 충분히 멀리 떨어져 있다.
스테이지(640)는 또한 원래 항목(655)이 차지하고 있던 위치에서 커서 아래에 나타난 "취소" 항목을 예시하고 있다. 일부 실시예는 사용자가 메뉴를 닫기 위해 메뉴 항목 중 하나를 어쩔 수 없이 선택하지 않도록 이러한 옵션을 디스플레이한다. 이것은 메뉴 항목이 활성 또는 비활성일 수 있는 상이한 도구라기보다는 다양한 명령을 나타내는 경우에 특히 유용할 수 있다. 예를 들어, 방사형 메뉴가 운영 체제의 일부이고 사용자가 "종료" 메뉴를 호출하는 항목을 선택하지만 이어서 컴퓨터를 종료, 재시작하거나, 절전 모드 등으로 하고 싶지 않은 경우, 사용자는 GUI로부터 전체 메뉴를 제거하기 위해 취소 옵션을 선택할 수 있다.
스테이지(650)에서, 방사형 메뉴(600)가 완전히 열린다. 알 수 있는 바와 같이, 다양한 선택가능 메뉴 항목이 중심 위치 둘레에 고르게 퍼져 있지 않다. 일부 실시예는 특정 항목을 이웃 항목으로부터 보다 멀리 디스플레이하고 다른 항목을 이웃 항목에 보다 가깝게 디스플레이한다. 일부 실시예에서, 이하에서 보다 상세히 기술하는 바와 같이, 커서가 특정의 항목과 연관되어 있는 중심 위치로부터 어떤 각도로 있을 때마다 사용자는 특정의 메뉴를 선택할 수 있고, 그의 이웃으로부터 보다 멀리 디스플레이되는 항목은 보다 큰 일련의 각도와 연관되어 있고 따라서 선택하기 더 쉽다.
그에 따라, 일부 실시예는 항목에 상이한 우선순위를 할당하고 이 우선순위에 기초하여 이웃 항목들 사이의 거리를 결정한다. 일부 실시예에서, 우선순위는 선택의 빈도수에 기초한다. 즉, 가장 자주 선택되는 메뉴 항목이 방사형 메뉴에서 그의 이웃 메뉴 항목 사이에 가장 큰 간극을 가질 것이다. 그에 따라, 상이한 메뉴 항목이 다소 자주 선택될 때 특정의 메뉴의 모습이 변할 수 있다.
도 7은, 도 6의 메뉴(600)와 같이, 선택가능 항목들이 GUI에서의 중심 위치 둘레에 불균일하게 배열되어 있는 방사형 메뉴를 디스플레이하는 일부 실시예의 프로세스(700)를 개념적으로 나타낸 것이다. 도시된 바와 같이, 프로세스(700)는 방사형 메뉴를 디스플레이하는 입력을 수신(705)하는 것으로 시작한다. 이 입력은, 도 6에서 전술한 바와 같이, 방사형 메뉴를 호출하는 메뉴 항목의 선택일 수 있다. 일부 경우에, 입력은 키보드 입력(즉, 사용자가 방사형 메뉴를 디스플레이하기 위해 누르는 키 또는 일련의 키)이다. 입력이 또한 영구적으로 디스플레이되는 방사형 메뉴를 포함하는 응용 프로그램을 열기 위해 간단히 입력될 수 있다.
프로세스는 이어서 각각의 메뉴 항목에 대한 상대적 우선순위를 결정(710)한다. 일부 실시예에서, 각각의 항목에 대한 우선순위는 디스플레이된 방사형 메뉴 내의 다른 메뉴 항목에 비해 얼마의 공간을 제공받는지를 나타낸다. 일부 실시예에서, 우선순위는 정수값(예를 들어, 1, 4, 11 등)이다. 다른 실시예에서, 메뉴 항목은 모든 메뉴 항목에 대한 우선순위의 합이 100 퍼센트가 되도록 퍼센트로서 우선순위를 할당받는다. 일부 실시예에서, 퍼센트는 상이한 메뉴 항목이 선택된 횟수에 기초한다. 간단한 예로서, 4개의 메뉴 항목을 갖는 특정의 메뉴가 20회 열렸고 메뉴 항목 A가 7회, 메뉴 항목 B가 2회, 메뉴 항목 C가 6회, 그리고 메뉴 항목 D가 5회 선택된 경우, 메뉴 항목 A는 35%의 우선순위, 메뉴 항목 B는 10%의 우선순위, 메뉴 항목 C는 30%의 우선순위, 그리고 메뉴 항목 D는 25%의 우선순위를 할당받을 것이다. 일부 실시예는 또한 드물게 선택되는 항목 모두가 각각의 다른 항목의 상부에 오지 않도록 최대 및/또는 최소 우선순위를 가진다. 다른 실시예는 사용자가 우선순위를 (예를 들어, 응용 프로그램 설정 창을 통해) 수동으로 결정할 수 있게 하거나 소프트웨어 개발자가 우선순위를 코딩해 넣도록 한다.
프로세스(700)는 그 다음에 메뉴 항목에 대한 순서를 결정(715)한다. 일부 실시예에서, 이 순서는 (예를 들어, 사용자에 의해 또는 소프트웨어 개발자에 의해) 사전 결정되어 있고 변하지 않는다. 사용자는 메뉴 항목의 순서가 변하는 것을 원하지 않을 수 있는데, 그 이유는 사용자가 정기적으로 선택되는 메뉴 항목이 어디에 있는지를 종종 알고 있을 것이고 그다지 주의를 기울이지 않고도 이들 항목을 선택할 수 있기 때문이다. 그러나, 다른 실시예에서, 순서가 우선순위에 기초하여 결정된다. 일부 실시예에서, 최고 우선순위(즉, 이웃 항목 사이에 최대량의 할당된 공간)를 갖는 메뉴 항목이 순서에서 첫번째이고, 이어서 그 다음의 최고 우선순위를 갖는 2개의 항목이 이 항목의 양측에 있으며, 그 후에 그 다음의 2개의 항목이 오고, 이하 마찬가지이다. 이것은, 도 6에 나타낸 바와 같이, 보다 높은 우선순위 항목을 방사형 메뉴의 한쪽으로 모은다.
그 다음에, 프로세스는 GUI에서의 방사형 메뉴에 대한 중심 위치를 식별(720)한다. 일부 실시예에서, 이 중심 위치는, 도 6에서와 같이, 방사형 메뉴의 열기를 호출하기 위해 선택되는 초기의 단일 선택가능 항목의 위치이다. 그러나, 일부 이러한 경우에, 이 위치는 디스플레이 영역(예를 들어, 창, 디스플레이 장치 등)의 가장자리에 너무 가까워서 방사형 메뉴가 디스플레이 영역 내에 완전히 디스플레이될 수 없다. 이것을 교정하기 위해, 일부 실시예는 방사형 메뉴의 정규의 크기가 하나 이상의 가장자리에 의해 가려질 때 방사형 메뉴의 크기를 조정한다.
다른 실시예는 방사형 메뉴의 중심 위치를 GUI 내의 상이한 위치로 이동시킴으로써 이 상황을 해결한다. 일부 실시예는 방사형 메뉴를 완전히 디스플레이하는 것을 방해하는 가장자리 바로 옆에(directly away) 있는 중심 위치를, 방사형 메뉴가 디스플레이 영역에 들어갈 수 있게 하는 지점으로 이동시킨다. 일부 실시예에서, 방사형 메뉴가 디스플레이 영역에 간신히 들어가도록(즉, 가장자리 또는 가장자리들 - 방사형 메뉴가 이로부터 멀어지게 이동됨 - 에 접하거나 거의 접하도록) 이동된다. 일부 실시예는, 방사형 메뉴의 모습이 보다 상호작용적이도록 만들기 위해, 방사형 메뉴를 가리게 될 하나 이상의 가장자리로부터 멀어지게 방사형 메뉴를 이동시키는 것을 애니메이션화한다.
방사형 메뉴의 이러한 위치 변경은 방사형 메뉴가 소형 디스플레이 장치, 예를 들어, 소형 핸드헬드 장치 상에 구현될 때 특히 유용하다. 도 23을 참조하여 이하에서 본 발명의 방사형 메뉴를 사용하는 소형 핸드헬드 장치의 한가지 이러한 예에 대해 기술할 것이다. 또한, 방사형 메뉴가 핸드헬드 장치의 화면의 많은 부분을 차지할 수 있는 경우, 일부 실시예는 방사형 메뉴가 호출될 때 방사형 메뉴를 항상 핸드헬드 장치의 화면의 중앙에 디스플레이한다. 따라서, 상이한 선택가능 항목의 선택에 의해 호출되는 다수의 방사형 메뉴가 있는 경우, 이들 모두가 핸드헬드 장치의 GUI에서 동일한 중심 위치를 사용할 수 있다.
이상에서 기술한 이동, 위치 변경 및/또는 크기 조정이 방사형 메뉴 또는 서브메뉴가 호출되는 임의의 상황에도 동일하게 적용될 수 있다. 환언하면, 일부 실시예는, 방사형 메뉴 또는 서브메뉴가 크기 조정되지 않거나, 가장자리로부터 멀어지게 이동되지 않거나, 특정의 위치(예를 들어, 중앙)로 위치 변경되지 않는 경우, 그 메뉴 또는 서브메뉴를 가리게 될 하나 이상의 디스플레이 화면 가장자리 근처에서 그 메뉴 또는 서브메뉴가 호출될 때마다 그 메뉴 또는 서브메뉴를 이동, 위치 변경 및/또는 크기 조정한다. 따라서, 일부 실시예는 이하에서 기술되는 프로세스 중 다수에 대해(예를 들어, 도 9 내지 도 20을 참조하여 이하에 기술되는 메뉴 선택 프로세스에 대해) 위치 변경 및/또는 크기 조정 동작을 사용한다.
프로세스(700)는 이어서 710에서 결정된 우선순위 및 715에서 결정된 순서에 기초하여 각각의 메뉴 항목 쌍 사이의 각도 거리를 계산(725)한다. 일부 실시예는 방사형 메뉴의 특정의 각도 영역을 각각의 메뉴 항목에 할당하고 메뉴 항목을 이 각도 영역의 중심에 오게 한다. 도 8은 4개의 메뉴 항목을 갖는 전술한 예를 사용하여 이것을 나타내고 있다. 메뉴 항목 A(35%의 우선순위)는 126도의 각도 영역[라인(805)부터 라인(810)까지]에, 메뉴 항목 B(10%의 우선순위)는 36도의 각도 영역[라인(810)부터 라인(815)까지]에, 메뉴 항목 C(30%의 우선순위)는 90도의 각도 영역[라인(815)부터 라인(820)까지]에, 그리고 메뉴 항목 D(25%의 우선순위)는 108도의 각도 영역[라인(820)부터 라인(805)까지]에 할당될 것이다. 이들 메뉴 항목을 그의 할당된 각도 영역의 중앙에 위치시키면, 항목 A부터 항목 B까지의 거리는 81도이고, 항목 B부터 항목 C까지의 거리는 72도이며, 항목 C부터 항목 D까지의 거리는 99도이고, 항목 D부터 항목 A까지의 거리는 108도이다.
그 다음에, 프로세스는 각각의 메뉴 항목을 디스플레이할 위치를 식별(730)한다. 일부 실시예에서, 위치는 메뉴의 중심 위치로부터 메뉴 항목이 위치하는 반경 방향 거리에 의존한다. 일부 실시예에서, 이 거리는 사용자에 의해 수동으로 또는 방사형 메뉴를 특징으로 하는 응용 프로그램을 개발하는 소프트웨어 개발자에 의해 결정된다. 다른 실시예는 거리를 메뉴 항목들 사이의 각도 거리에 기초하여 변화시킨다. 일부 항목이 서로 아주 가깝게 있는 경우, 일부 실시예는 항목들 사이에 너무 많은 중복이 없도록 보다 큰 반경 방향 거리를 사용한다.
실제 위치를 결정하기 위해, 제1 항목에 대한 제1 위치가 설정된다. 일부 실시예는 동작(715)에서 결정된 순서로 제1 항목의 위치를 고정시킨다. 예를 들어, 제1 항목은, 도 6의 메뉴(600)에서와 같이, 항상 중심 위치의 바로 우측에 위치될 수 있다. 항목 위치들 중 하나가 설정되면, 메뉴에 대한 결정된 반경 방향 거리를 갖는 원을 따라 (725에서 결정된) 적절한 각도 거리만큼 이동시킴으로써 다른 메뉴 항목 위치가 결정될 수 있다.
모든 메뉴 항목에 대한 디스플레이 위치가 식별되면, 프로세스(700)는 각각의 항목이 식별된 위치에 있는 방사형 메뉴를 디스플레이(735)한다. 도 6에 나타낸 바와 같이, 일부 실시예는 메뉴 항목을 중심 위치로부터 바깥쪽으로 확장시킴으로써 메뉴를 디스플레이한다. 다른 실시예는 단순히 730에서 결정된 위치에 바로 항목을 디스플레이한다. 또 다른 실시예는 도 6에 도시된 것 이외의 애니메이션, 예컨대 나선형으로 있는 메뉴 항목을 디스플레이하는 것을 사용한다.
방사형 메뉴가 열리면, 사용자는 방사형 메뉴로부터 항목을 선택할 수 있다. 이하의 섹션들에서 메뉴를 디스플레이하는 것 및 메뉴 항목을 선택하는 것의 다양한 양태에 대해 기술할 것이다.
II. 선택 프로세스 동안 방사형 메뉴를 디스플레이하는 것
이상에서 기술한 바와 같이, 방사형 메뉴는 사용자가 선택할 다수의 선택가능 항목을 사용자에게 제시한다. 일부 실시예에서, 사용자는 특정의 선택가능 항목에 할당된 방사형 메뉴의 각도 영역으로 커서를 이동시키고 선택 입력을 제공하는 것(예를 들어, 마우스 버튼을 클릭하는 것, 키보드 상의 키를 누르는 것, 터치패드를 통해 특성 형태의 입력을 제공하는 것 등)에 의해 특정의 선택가능 항목을 선택할 수 있다. 게다가, 일부 실시예에서, 사용자는 특정의 선택가능 항목에 할당된 각도 영역 내에서 터치스크린을 누름으로써 메뉴 항목을 선택할 수 있다.
일부 실시예에서, 사용자는 디스플레이된 메뉴 항목을 선택하기 위해 그 메뉴 항목을 직접 클릭할 필요가 없다. 그 대신에, 디스플레이된 항목 또는 아이콘이 보다 큰 선택가능 항목과 연관되어 있다. 예를 들어, 일부 실시예에서, 각각의 아이콘이 각도 영역와 연관되어 있다. 각도 영역 내의 아무곳이나 클릭하면 메뉴 항목이 선택될 것이다. 일부 실시예에서, 이 선택가능 영역은 메뉴의 중심 위치와 아이콘 사이 뿐만 아니라, 중심으로부터 무한히 멀리(또는 방사형 메뉴가 디스플레이되는 디스플레이 영역의 가장자리까지) 뻗어 있다.
이제부터 도 9를 참조하여, 일부 실시예의 방사형 메뉴를 디스플레이하는 것 및 선택하는 것에 대해 기술할 것이다. 도 9는 일부 실시예의 방사형 메뉴를 포함하는 GUI에 대한 다양한 상태 및 그 상태들 사이의 천이를 반영하는 상태도를 나타낸 것이다. 일부 실시예에서, GUI의 다양한 상태를 디스플레이하는 것과 상태들 사이의 천이는 하나 이상의 프로세스에 의해 수행된다. 즉, 이들은 응용 프로그램의 일부로서 실행되는 하나 이상의 프로세스에 의해 수행되고, 방사형 메뉴는 응용 프로그램의 GUI에 디스플레이된다. 다른 실시예에서, 이 응용 프로그램은 운영 체제, 독립형 응용 프로그램 등일 수 있다. 일부 실시예의 방사형 메뉴의 다양한 양태를 나타내는 도 6 및 도 10 내지 도 13을 참조하여 상태 및 천이에 대해 기술할 것이다.
도시된 바와 같이, 처음에 단일 선택가능 항목이 디스플레이된다(905). 이러한 항목의 예가 도 6의 스테이지(610)에서의 항목(655)이다. 선택 입력이 수신될 때[예를 들어, 도 6의 스테이지(620)에서와 같이, 사용자가 단일 선택가능 항목을 클릭할 때], GUI는 상태(910)로 천이하고, 방사형 메뉴를 연다. 일부 실시예에서, 방사형 메뉴를 여는 것은, 도 6의 스테이지(630, 640)에 도시된 바와 같이, 메뉴 항목을 바깥쪽으로 확장하는 것을 수반한다. 그러나, 다른 실시예는, 방사형 메뉴가 열릴 때 어떤 애니메이션도 없이, 단순히 방사형 메뉴의 메뉴 항목을 그의 위치에 디스플레이한다.
메뉴 항목이 열리면, GUI는 메뉴 취소 버튼을 하이라이트하기 위해 상태(915)로 천이한다. 도 6의 스테이지(650)는 커서(615)가 메뉴 취소 버튼(660) 상에 있는 방사형 메뉴(600)를 나타내고 있다. 메뉴 취소 버튼이 방사형 메뉴의 중심에 있고 이 중심이 방사형 메뉴를 호출하기 위해 선택된 단일 선택가능 항목의 GUI에서의 초기 위치인 경우에, 방사형 메뉴를 열 때, 스테이지(650)에서와 같이, 커서는 메뉴 취소 버튼 상에 있을 것이다. 앞서 살펴본 바와 같이, 일부 실시예의 메뉴 취소 버튼은, 메뉴 항목들 중 하나를 선택하는 일 없이, 사용자가 방사형 메뉴를 닫을 수 있게 한다.
메뉴 취소 버튼이 하이라이트되어 있는 동안 선택 입력이 수신될 때, GUI는 선택 없이 현재 활성인 메뉴를 닫기 위해 상태(920)로 천이한다. 즉, 사용자가 메뉴 취소 버튼을 선택하는 경우, 방사형 메뉴가 닫히고, 메뉴 항목들 중 어느 것도 선택되지 않는다. 현재 활성인 메뉴(즉, 닫힐 메뉴)가 주 메뉴(즉, 다른 방사형 메뉴의 서브메뉴가 아닌 방사형 메뉴)일 때, GUI는 상태(905)로 다시 천이하여, 단일 선택가능 항목[예를 들어, 도 6의 항목(655)]이 다시 디스플레이된다.
한편, 현재 활성인 메뉴가 방사형 서브메뉴일 때, GUI는 상태(925)로 천이하여 이전 메뉴(즉, 닫히는 서브메뉴의 부모 메뉴)를 활성 메뉴로 되게 한다. 서브메뉴를 선택하는 것 및 디스플레이하는 것에 관한 추가의 상세가 이하에 기술되어 있다. GUI는 이어서 커서 아래에 있는 부모 메뉴 내의 항목을 하이라이트하기 위해 930으로 천이한다. 일부 실시예에서, 이하에서 더 기술되는 바와 같이, 서브메뉴를 연 부모 메뉴로부터의 항목의 위치에 중심 위치가 있는 방사형 메뉴로서 서브메뉴가 디스플레이된다. 그에 따라, 메뉴 취소 버튼이 선택될 때 커서는 부모 메뉴로부터의 이 항목 상에 있을 것이고, 따라서 GUI가 상태(925)로부터 상태(930)로 천이할 때 이 항목이 하이라이트된다. 메뉴 항목을 하이라이트하는 것에 대해 이하에서 더 상세히 논의할 것이다.
GUI가 상태(915)에 있고 커서가 메뉴 취소 버튼으로부터 메뉴 항목으로 이동될 때, GUI는 상태(930)로 천이하고 커서 아래의 메뉴 항목을 하이라이트한다. 도 10 및 도 11은 커서(615)가 2개의 상이한 메뉴 항목 상에 있는 방사형 메뉴(600)를 나타낸 것이다. 도 10에서, 메뉴 항목(1005)은 하이라이트되어 있다. 커서(615)가 실제로는 메뉴 항목(1005)을 나타내는 아이콘(1010) 상에 있지 않고, 메뉴 항목(1005)에 할당된 방사형 메뉴 내의 각도 영역 상에 있으며, 그에 따라 메뉴 항목(1005)이 하이라이트되어 있다.
일부 실시예에서, 메뉴 항목은 도 10에 도시된 바와 같이 하이라이트된다. 메뉴 항목(1005)에 대해 도시된 하이라이트는 아이콘(1010) 및 사용자가 메뉴 항목(1005)을 선택하기 위해 클릭할 수 있는 영역을 비추기 위해 광이 방사형 메뉴의 중심 위치로부터 방사하는 모습을 가진다. 다른 실시예는 메뉴 항목을 하이라이트하기 위해 다른 기법을 사용한다. 일부 실시예는 선택가능 항목의 범위를 나타내는 반경 방향의 라인을 메뉴 항목의 양측에 디스플레이하거나, 선택가능 항목의 영역이 배경과 다르도록 그 영역의 색을 변경한다. 다른 실시예는, 선택가능 영역 전체를 하이라이트하기 보다는, (예를 들어, 아이콘의 색을 변경함으로써) 메뉴 항목을 나타내는 아이콘의 디스플레이만을 변경한다.
도 9에 도시된 바와 같이, 커서가 메뉴 항목들 중 하나로부터 다시 메뉴 취소 버튼 상으로 이동되는 경우, GUI는 상태(930)로부터 다시 상태(915)로 천이한다. 커서가 제1 메뉴 항목으로부터 제2 메뉴 항목 상으로 이동되는 경우, GUI는 상태(930)에 그대로 있고 제2 메뉴 항목이 하이라이트된다. 도 11은 항목(1105)을 하이라이트하는 것을 나타내고 있다. GUI가 도 10의 상태로부터 도 11의 상태로 진행하기 위해, 사용자는 각각이 짧은 기간 동안 하이라이트될 다수의 선택가능 항목을 통해, 메뉴 취소 버튼을 통해[즉, 상태(930)로부터 상태(915)로 다시 상태(930)로 천이], 또는 이 둘의 일부 조합을 통해 커서(615)를 이동시킬 필요가 있을 것이다.
도 11에서, 커서(615)는 방사형 메뉴의 디스플레이를 벗어나 있다. 즉, 커서(615)가 디스플레이된 아이콘보다 방사형 메뉴의 중심으로부터 더 멀리 있다. 그러나, 선택가능 항목(1105)이 그럼에도 불구하고 하이라이트된다. 일부 실시예에서, 선택가능 항목은 무한 반경까지, 또는 방사형 메뉴를 포함하는 GUI에 대한 디스플레이 영역(창, 화면 등)의 적어도 가장자리까지 뻗어 있다. 일부 실시예는 하이라이트를 디스플레이된 아이콘을 지나서까지 연장시키고 있다. 이 예에서와 같이, 다른 실시예는 중심으로부터 디스플레이된 아이콘까지만 또는 디스플레이된 아이콘을 약간 지나서까지 하이라이트한다.
도 9로 되돌아가서, GUI가 상태(930)에 있을 때 선택 입력이 수신되는 경우, GUI는 하이라이트된 메뉴 항목이 선택되는 상태(935)로 천이한다. 다른 실시예에서, 메뉴 항목을 선택하기 위해 다른 유형의 입력이 채택된다. 일부 실시예는 제스처 선택을 가능하게 한다. 사용자는 방사형 메뉴의 중심으로부터 선택가능 항목들 중 하나를 통해 빠른 스위프 움직임으로 커서를 이동시킨다. 일부 실시예에서, 커서 움직임의 방향, 속도 및 거리에 기초하여, 커서가 지나가는 선택가능 항목이 선택된다.
일부 실시예는, 제스처 선택에 부가하여 또는 그 대신에, 커서가 항목 상에 있는 상태에서, 사용자가 커서 제어기 버튼 또는 유사한 입력을 사용하여 항목을 선택할 수 있게 한다. 예를 들어, 사용자는 항목을 선택하기 위해 마우스 버튼을 클릭(또는 두번 클릭)하거나, 터치패드를 탭핑(또는 두번 탭핑)하거나 등을 할 수 있다. 유사하게, 방사형 메뉴가 터치스크린 상에 제시되는 경우, 사용자는 메뉴 항목을 선택하기 위해 메뉴 항목 상의 화면을 탭핑(또는 두번 탭핑)할 수 있다.
선택된 메뉴 항목이 서브메뉴를 여는 경우, GUI는 상태(940)로 천이한다. 일부 실시예에서, 서브메뉴 열기 프로세스는, 메뉴 항목이 중심 위치로부터 바깥쪽으로 확장한다는 점에서, 주 메뉴 열기 프로세스와 유사하다. 마우스 클릭 또는 유사한 입력에 기초하여 서브메뉴가 열릴 때, 일부 실시예에서, 서브메뉴에 대한 중심 위치가 선택 입력이 수신되는 커서 위치이다. 다른 실시예에서, 중심 위치는 서브메뉴가 열리게 한 선택된 메뉴 항목을 나타내는 디스플레이된 아이콘이다. 일부 이러한 실시예는, 서브메뉴가 열릴 때, 자동으로 커서를 이 중심 위치로 이동시킨다.
도 12는 일부 실시예에 따른 주 메뉴(1200)로부터 메뉴 항목(1205)을 선택한 것에 응답하여 서브메뉴(1250)를 여는 것을 나타낸 것이다. 도 12는 이 프로세스를 3개의 스테이지, 즉 메뉴 항목이 선택되는 제1 스테이지(1210), 서브메뉴가 완전히 열리고 커서가 서브메뉴에 대한 메뉴 취소 버튼 상에 있는 제2 스테이지(1220), 및 커서가 서브메뉴의 메뉴 항목들 중 하나 상에 있는 제3 스테이지(1230)로 나타낸 것이다.
스테이지(1210)는 주 메뉴(1200)를 나타내고 있다. 주 메뉴(1200)는 커서(615)가 항목(1205) 상에 있기 때문에 현재 하이라이트되어 있는 메뉴 항목(1205)을 비롯한 다수의 메뉴 항목을 가진다. 게다가, 스테이지(1210)는 커서가 항목(1205) 상에 있는 상태에서 사용자가 커서 제어기 버튼을 방금 클릭한 것을 나타내고 있다.
메뉴 항목(1205)의 선택에 의해, 스테이지(1220)에 나타낸 바와 같이, 서브메뉴(1250)가 열린다. 스테이지(1220)는 서브메뉴가 완전히 열린 후의 서브메뉴(1250)를 나타낸 것이다. 일부 실시예의 서브메뉴 열기 프로세스는, 메뉴 항목을 표현하는 아이콘들이 중심으로부터 그의 할당된 위치까지 바깥쪽으로 확장된다는 점에서, 도 6에서 예시한 주 메뉴 열기 프로세스와 유사하다.
도 9의 상태도로 되돌아가서, GUI는 940으로부터 915로 천이하여, 최근에 열린 서브메뉴의 메뉴 취소 버튼이 이제 하이라이트되어 있다. 당업자라면, 서브메뉴가 커서 둘레에 열리는 경우에 또는 커서가 서브메뉴의 중심으로 자동으로 이동되는 경우에, 이것이 천이를 나타낸다는 것을 인식할 것이다. 사용자가 서브메뉴를 열기 위해 선택가능 항목 내의 어딘가를 클릭하고 서브메뉴가 커서 둘레가 아니라 선택가능 항목에 대한 아이콘 둘레에 열리는 경우에, 일부 실시예는 커서가 어느 항목 상에 있든 그 항목을 하이라이트하기 위해 상태(940)로부터 상태(930)로 바로 천이할 것이다.
이 예에서, 사용자는 커서(615)가 메뉴 항목(1205)을 나타내는 아이콘(1225) 바로 위에 있는 상태에서 클릭하였고, 따라서 스테이지(1220)에서 커서는 메뉴 취소 버튼(1235) 상에 있다. 스테이지(1220)에 나타낸 바와 같이, 커서가 서브메뉴의 메뉴 취소 버튼 상에 있을 때, 일부 실시예는 부모 메뉴를 부분적으로 흐리게 디스플레이한다. 이것은, 서브메뉴의 영역에서의 디스플레이를 과도하게 복잡하게 만들지 않고, 선택 입력이 수신되는 경우 활성으로 될 메뉴를 사용자에게 알려준다.
스테이지(1230)에 나타낸 바와 같이, 사용자가 커서를 메뉴 취소 버튼으로부터 메뉴 항목(1245) 상으로 이동시킬 때, 이것은 상태(915)로부터 상태(930)로의 상태 천이에 대응하고, 그에 따라 메뉴 항목(1245)이 하이라이트된다. 서브메뉴(1250)가 단지 4개의 균일한 간격으로 있는 항목을 포함할 때, 하이라이트는 원의 90도를 차지하는 각도 방향에서 아이콘(1255)을 상당히 넘어서까지 뻗어 있다. 하이라이트는 또한, 일부 실시예에서와 같이, 반경 방향으로도 아이콘(1255)을 상당히 넘어서까지 뻗어 있다.
도 9의 상태도로 되돌아가서, 선택된 메뉴 항목이 서브메뉴를 열지 않는 경우, GUI는 초기의 단일 선택가능 항목만이 디스플레이되도록 상태(935)로부터 상태(905)로 천이한다. 서브메뉴를 열지 않는 항목은 도구(예를 들어, 미디어 편집 도구, 워드 프로세싱 도구 등)를 활성화시키거나, 명령(예를 들어, 인쇄 명령, 저장 명령 등)이 수행되게 하거나, 다른 명령어가 수행되게 할 수 있다.
단일 선택가능 항목만이 디스플레이된 아이콘되도록 방사형 메뉴를 닫을 때, 일부 실시예는 안쪽으로 축소되는 아이콘, 즉 방사형 메뉴가 열릴 때 디스플레이되는 것과 정반대의 애니메이션을 디스플레이한다. 다른 실시예는 단순히 방사형 메뉴를 디스플레이하는 것을 중단하고, 메뉴 취소 버튼를 방사형 메뉴를 호출하는 단일 선택가능 항목으로 대체한다.
도 13은 방사형 메뉴(600)로부터 메뉴를 선택하는 것과 그 후에 방사형 메뉴를 닫는 것을 나타낸 것이다. 도 13은 이것을 3개의 스테이지, 즉 방사형 메뉴로부터의 항목(655)의 사용자 선택이 선택되는 제1 스테이지(1310), 방사형 메뉴(600)에 대한 닫기 프로세스 동안의 제2 스테이지(1320), 및 단일 선택가능 항목(655)만이 디스플레이되는 제3 스테이지(1330)로 나타내고 있다.
살펴본 바와 같이, 스테이지(1310)는 메뉴 항목(655)을 포함하는 방사형 메뉴(600)를 나타내고 있다. 메뉴 항목(655)이 이 스테이지에서 하이라이트되는 이유는 커서(615)가 선택가능 항목 상에 있기 때문이다. 이 스테이지는 또한 커서가 하이라이트된 선택가능 항목 상의 그의 현재 위치에 있는 상태에서 선택 입력(예를 들어, 마우스 버튼의 클릭)이 방금 수신되었다는 것을 나타낸다. 항목(655)의 선택에 응답하여, 이 항목과 연관된 임의의 명령어가 수행된다.
선택된 메뉴 항목과 연관된 명령어의 수행에 부가하여, 스테이지(1320)는 방사형 메뉴(600)가 그의 닫기 프로세스의 중간쯤에 있음을 나타내고 있다. 스테이지(1320)는 메뉴 항목이 메뉴의 중심에 더 가깝게 이동했고 역시 도 6에 나타낸 "적층된" 특성을 가지고 있음을 나타내고 있다. 일부 실시예는 최근에 선택된 항목을 적층물의 상단에 디스플레이하는 반면, 다른 실시예는 특정의 메뉴 항목을 적층물의 상단에 표시한다. 스테이지(1320)는 또한 메뉴가 닫힐 때 메뉴 취소 버튼(660)이 대체로 흐려져 있음도 나타내고 있다.
스테이지(1330)는 방사형 메뉴(600)가 완전히 닫힌 후의 단일 선택가능 항목(655)을 나타낸 것이다. 이 시점에서, GUI는 메뉴가 열리기 전[도 9에 나타낸 상태도의 상태(905)에 대응함]에 도 6의 스테이지(610)에 나타낸 것과 동일한 상태로 되돌아갔다.
III. 제스처 선택 및 서브메뉴
상태도의 설명에서 앞서 살펴본 바와 같이, 방사형 메뉴로부터 특정의 메뉴 항목을 선택하기 위해 (마우스 또는 기타 커서 제어기를 통해) 클릭 입력 또는 (터치스크린을 통해) 탭핑 입력을 수신하는 것에 부가하여(또는 그 대신에), 일부 실시예는 제스처 선택 입력을 가능하게 한다.
일부 실시예에서, 방사형 메뉴 항목을 선택하는 제스처 선택 입력은 스위프 제스처이다. 일부 실시예에서, 스위프 제스처는 선택가능 항목 쪽으로 또는 이를 통해 커서를 바깥쪽으로 이동시키는 것이다. 일부 실시예에서, 커서 이동은 다른 커서 제어기 또는 다른 입력이 수반된다. 예를 들어, 일부 실시예에서, 사용자는 스위프 제스처를 수행하기 위해 마우스를 이동시키는 동안 마우스 버튼(또는 동등한 입력)을 누른 채로 있다. 일부 이러한 실시예는, 마우스 버튼이 눌러져 있지 않거나 동등한 입력이 수신되지 않는 한, 스위프 제스처를 인식하지 않을 것이다. 한편, 일부 실시예는 스위프 제스처를 인식하기 위해 커서 이동 이외의 어떤 입력도 필요로 하지 않는다. 일부 실시예에서, 사용자는 방사형 메뉴를 호출하기 위해 초기 선택 입력(예를 들어, 마우스 클릭, 탭핑 등)을 제공하고, 그러면 제스처 입력은 다른 관련 입력 없이 마우스 이동 뿐이다.
선택된 항목으로 인해 명령이 수행되거나 도구가 활성화될 때, 결과는 항목을 선택하기 위해 클릭 입력이 사용된 경우와 동일하다. 그러나, 선택된 항목으로 인해 서브메뉴가 열릴 때, 상이한 실시예는 서브메뉴가 어디에 열려야 하는지를 결정하기 위해 상이한 기법을 사용한다. 일부 실시예는, 사용자가 메뉴 항목을 방금 클릭한 것처럼, 선택된 메뉴 항목 둘레에 서브메뉴를 열고, 스위프 제스처의 끝에서의 그의 위치로부터 방사형 서브메뉴의 중심으로 커서를 이동시킨다. 일부 실시예는 과거의 제스처 선택의 속도, 방향, 가속도, 통계에 기초하여 커서가 이동하는 것을 멈출 GUI에서의 위치를 예측하고 이 위치에 서브메뉴를 디스플레이한다.
다른 실시예는 스위프 제스처 이후 추가의 입력이 수신될 때까지 서브메뉴를 디스플레이하지 않는다. 그 대신에, 이들 실시예는 방사형 서브메뉴를 디스플레이하기 위해 사용자가 추가의 입력(예를 들어, 마우스 클릭)을 제공할 때까지 기다린다. 사용자가 추가의 입력을 제공할 때, 서브메뉴가 이어서 커서 둘레에 디스플레이된다(즉, 커서가 방사형 서브메뉴의 중심 위치에 있다). 일부 실시예는 먼저 그의 중심 위치가 선택된 메뉴 항목의 위치에 또는 그의 부모 메뉴의 중심 위치에 있는 상태로 방사형 서브메뉴를 디스플레이하고, 이어서 사용자 입력이 수신될 때의 커서 위치로 서브메뉴를 이동시킨다.
도 14는 4개의 동일한 간격으로 있는 메뉴 항목(1405 내지 1420)을 갖는 방사형 메뉴(1400)를 나타낸 것이다. 도 14는 또한 4개의 메뉴 항목(1405 내지 1420)에 할당된 각도 영역을 나타내는 파선(1425)과, 방사형 메뉴(1400)로부터 방사형 메뉴의 항목들 중 하나의 중심까지의 거리 R을 나타내는 파선(1430)을 나타내고 있다.
일부 실시예는 방사형 메뉴가 열린 후의 커서의 모든 이동을 인식하지는 않는다. 그 대신에, 커서의 이동이 제스처 입력으로서 식별되기 위해, 커서는 GUI에서 적어도 특정의 임계 거리만큼 이동해야만 한다. 예를 들어, 일부 실시예는 커서가 메뉴의 적어도 반경 방향 거리[도 14의 파선(1430)으로 나타낸 거리 R]만큼 이동할 것을 필요로 한다. 따라서, 사용자가 커서를 메뉴 항목 쪽으로 똑바로 이동시키는 경우, 커서는 메뉴의 중심 위치에서 시작하여 메뉴 항목의 중간까지 이동할 필요가 있다. 다른 실시예는 상이한 임계값(예를 들어, 메뉴 항목의 시작 부분 또는 끝부분까지의 거리, 반경 방향 거리의 수분의 1 또는 그의 배수 등)을 사용한다.
게다가, 일부 실시예는 또한, 이동이 제스처 선택으로서 식별되기 위해, 커서가 임계 시간 내에 임계 거리만큼 이동할 것을 필요로 한다. 방사형 메뉴 항목 쪽으로 커서의 느린 이동은 제스처 선택으로서 취급되지 않을 것이다.
일부 실시예에서, 직선에 가깝지 않은 이동은 제스처 선택으로서도 인식되지 않을 것이다. 커서가 이동할 때, 일부 실시예는 아주 짧은 간격으로(예를 들어, 초당 몇번) 커서의 위치를 식별한다. 시간에 따른 커서 이동의 속도 및 방향을 계산하기 위해 위치 데이터가 사용될 수 있다. 일부 실시예는, 이동이 제스처 선택 입력으로 간주되기 위해, 이들 계산된 방향 벡터가 특정의 각도 범위 내에 있을 것을 필요로 한다. 즉, 커서가 이동하는 최소 각도 및 최대 각도는 특정의 임계 각도(예를 들어, 5도, 20도 등) 미만만큼 변해야 한다.
한편, 각도 변동을 결정하기 보다는, 일부 실시예는 잠재적인 제스처 선택의 시작 지점 및 종료 지점을 식별하고, 이어서 커서가 2개의 지점 사이에서 임계 양 초과만큼 직선을 벗어나 이동했는지를 판정한다. 커서가 이 직선으로부터 너무 멀리 떨어져 이동하는 경우, 이 이동은 제스처 선택이 아니다. 일부 실시예에서, 긴 이동이 큰 절대 변동(적은 절대 변동을 갖는 짧은 이동에 동등한 각도 변동일 수 있음)을 가질 수 있도록, 직선으로부터의 임계 거리가 시작 지점과 종료 지점 사이의 거리에 기초하여 변한다.
일부 실시예는 커서가 제스처에 대한 임계 거리만큼 이동할 때마다 제스처 선택 입력이 있는지를 검사한다. 커서가 임계 거리만큼 이동하면, 그 거리를 이동하는 데 걸리는 시간 및 그 이동이 직선에 가까운지 여부가 결정된다. 이러한 실시예에서, 사용자에 의한 식제의 제스처 움직임은 제스처로서 자격이 있는 다수의 세그먼트를 포함할 수 있고, 제스처 입력으로서 자격이 있는 움직임의 첫번쩨 세그먼트가 식별되자마자 선택된 항목이 실제로 선택된다.
제스처 선택이 식별되면, 일부 실시예는 제스처 동작에 의해 식별된 항목을 결정한다. 일부 실시예에서, 선택된 항목은 커서가 방사형 메뉴의 중심으로부터 특정의 거리[예를 들어, 도 14의 라인(1430)으로 나타낸 반경 방향 거리 R]에 도달할 때 커서가 지나가는 항목이다.
도 15는 방사형 메뉴(1400) 및 커서(1505)의 제스처 움직임(1500)을 나타내고 있다. 도 15는 또한 메뉴(1400)의 반경 방향 거리를 나타내는 파선 원(1510)을 나타내고 있다. 도시된 바와 같이, 커서(1505)는 메뉴(1400)의 중심에서 시작하고 반경 방향 거리 R을 초과하여 이동한다. 제스처 움직임(1500)은 메뉴 항목(1410)에 할당된 각도 영역 내에서 [파선(1510)으로 나타낸] 반경 방향 거리를 가로지른다. 그에 따라, 일부 실시예는 이 입력에 기초하여 메뉴 항목(1410)을 선택할 것이다.
커서의 절대 위치를 결정하기 보다는, 일부 실시예는 제스처 움직임에 대한 각도를 식별하고 이 각도를 메뉴 항목과 연관시킨다. 일부 실시예에서, 각각의 항목은 방사형 메뉴 내의 항목이 차지하는 각도 영역에 대응하는 각도 범위와 연관된다. 예를 들어, 메뉴(1400)의 항목(1405)은 수평에서 135도부터 수평에서 45도까지와 연관되어 있고, 항목(1410)은 수평에서 45도부터 수평에서 -45도까지와 연관되어 있으며, 이하 마찬가지이다[즉, 파선(1425)으로 나타낸 사분면]. 본 설명에서, 수평은 방사형 메뉴의 중심으로부터 항목(1410)의 중심으로 뻗어 있는, 통상적으로 0의 각도와 연관되어 있는 벡터를 말한다.
제스처 움직임이 방사형 메뉴의 중심에서 시작할 때, 제스처에 의해 선택된 메뉴 항목을 식별하는 어느 한 기법이 동일한 결과를 산출할 것이다. 도 15의 제스처 움직임(1500)은 이것의 예이다. 움직임(1500)의 각도는 수평 아래로 대략 20도[항목(1410)과 연관된 각도]이다. 앞서 살펴본 바와 같이, 커서가 어디에서 반경 방향 거리를 가로지르는지를 식별하는 기법을 사용하는 것으로부터도 또한 항목(1410)의 선택이 일어난다.
그러나, 제스처 움직임이 방사형 메뉴의 중심에서 시작하지 않을 때, 2개의 기법이 상이한 선택을 산출할 수 있다. 도 16은 이러한 제스처 움직임(1600)의 예를 나타낸 것이다. 커서(1505)는 제스처 선택 입력으로 간주되기에 충분히 긴 거리인 위치(1605)로부터 위치(1610)로 이동한다. 커서가 어디에서 파선(1510)으로 나타낸 반경 방향 거리를 가로지르는지에 기초하여, 일부 실시예는 항목(1405)을 선택할 것이다. 그러나, 제스처 움직임(1610)의 각도는 수평에서 대략 150도에 있을 때 항목(1420)과 연관되어 있고, 항목(1420)과 연관된 사분면은 수평에서 135도부터 수평에서 -135도까지이다.
앞서 언급한 바와 같이, 일부 경우에, 선택된 항목은 서브메뉴를 연다. 일부 실시예는, 서브메뉴를 여는 제스처 입력을 수신한 후에, 사용자가 추가의 입력을 제공할 때까지 서브메뉴를 디스플레이하지 않거나 서브메뉴를 기본 위치에 디스플레이한다. 도 17은 방사형 메뉴 및 서브메뉴를 디스플레이하고 메뉴로부터의 선택을 수신하는 일부 실시예의 프로세스(1700)를 개념적으로 나타낸 것이다. 도 17은 도 18 내지 도 20을 참조하여 기술될 것이다.
도시된 바와 같이, 프로세스(1700)는 방사형 메뉴를 디스플레이(1705)하는 것으로 시작한다. 일부 실시예에서, 사용자가 (예를 들어, 상기 도 6에 나타낸 바와 같이 단일 항목의 선택을 통해) 방사형 메뉴를 호출한 결과로서 방사형 메뉴가 디스플레이된다. 즉, 일부 실시예에서, 프로세스(1700)의 동작을 시작하기 위해 사용자가 항목(655)과 같은 항목을 클릭, 탭핑 등을 하였다.
그 다음에, 프로세스(1700)는 메뉴 항목을 선택하기 위해 제스처 입력을 수신(1710)한다. 이상에서 기술한 바와 같이, 일부 실시예에서, 제스처 입력은 마우스 클릭, 마우스 버튼의 누르고 있기 등과 같은 다른 입력을 수반하거나 수반하지 않을 수 있는 스위프 제스처이다. 제스처 입력은 커서가 메뉴의 중심으로부터 특정의 거리를 가로지르는 커서 이동의 각도 또는 다른 기준에 기초하여 항목을 선택할 수 있다.
도 18은 메뉴 항목(1835)을 선택하기 위해 클릭 입력과 그 후의 스위프 제스처로 인해 방사형 메뉴(1800)를 여는 것을 나타낸 것이다. 도 18은 이것을 3개의 스테이지, 즉 사용자가 방사형 메뉴를 여는 시점인 제1 스테이지(1810), 그리고 커서가 스위프 제스처로 이동하는 동안인 제2 및 제3 스테이지(1820, 1830)로 나타내고 있다.
스테이지(1810)는 단일 선택가능 메뉴 항목(1840)을 나타낸다. 커서(1815)가 현재 단일 선택가능 메뉴 항목(1840) 상에 있고, 사용자는 커서 제어기 상의 선택 버튼을 눌렀다가 놓았다["(클릭...)" 텍스트로 나타냄]. 이것으로 인해 방사형 메뉴(1800)가 호출되고 열린다. 스테이지(1820)는 메뉴가 열린 후의 방사형 메뉴(1800)의 일부를 나타내고, 제스처 선택을 통해 메뉴 항목(1835)을 선택하기 위해, 사용자는 스위프 제스처로 메뉴 항목(1835) 쪽으로 커서(1815)를 이동시키기 시작한다. 일부 실시예에서, 도 6에 나타낸 바와 같이 방사형 메뉴가 열리고, 메뉴 항목들이 바깥쪽으로 뻗어 있다. 일부 이러한 실시예에서, 사용자가 제스처 선택을 통해 항목을 선택할 때, 사용자는 스위프 제스처를 시작하기 전에 메뉴가 완전히 열리기를 기다릴 필요가 없다. 즉, 스테이지(1820)는 메뉴 항목이 완전히 열린 위치에 도달한 바로 그 순간일 수 있는 반면, 커서(1815)는 사용자 상호작용으로 인해 메뉴 항목을 따라 이동한다.
도 18에 도시된 바와 같이, 일부 실시예는 커서 아래의 메뉴 항목을 하이라이트하고, 제스처 선택이 행해진다. 방사형 메뉴가 완전히 열리기 전에 사용자가 스위프 제스처를 시작하는 경우에, 일부 실시예는 완전히 열린 상태 이전의 메뉴 항목을 하이라이트하는 반면, 다른 실시예는 메뉴 항목이 더 이상 움직이지 않을 때까지 하이라이트를 디스플레이하지 않는다. 사용자가 메뉴의 중심에서 스위프 제스처를 시작하지 않은 경우(예를 들어, 도 16에 나타낸 경우)에, 일부 실시예는 커서 아래의 메뉴 항목을 항상 하이라이트한다. 다른 실시예는 특정의 양의 커서 이동 이후에 스위프 제스처를 인식하고, 커서 이동의 각도에 기초하여 선택가능한 메뉴 항목을 하이라이트한다.
도 18의 스테이지(1830)는 사용자가, 제스처 입력을 통해 항목(1835)을 선택하기 위해, 메뉴 항목(1835)이 디스플레이되는 메뉴(1800)의 반경 방향 거리를 넘어서 대략 동일한 방향으로 커서를 계속하여 이동시키는 것을 나타내고 있다.
메뉴 항목을 선택하기 위해 제스처 입력을 수신한 후에 프로세스(1700)로 되돌아가서, 프로세스는 선택된 항목이 서브메뉴를 열지 여부를 판정(1715)한다. 메뉴 항목(1835)에서와 같이, 일부 실시예의 메뉴 항목은 서브메뉴를 여는 경우 시각적 표시자를 포함한다. 항목(1835)은 위아래를 가리키는 화살표를 포함하지만, 다른 시각적 표시자(예를 들어, 플러스 기호, 단일 화살표, 서브메뉴 내의 메뉴 항목의 수를 나타내는 숫자 등)가 가능하다. 선택된 메뉴 항목이 서브메뉴를 열지 않을 때, 프로세스는 선택된 메뉴 항목과 연관된 명령어를 수행(1720)하고, 이어서 종료한다. 이들 명령어는 명령(예를 들어, 파일 인쇄 등)을 수행하거나, 도구(예를 들어, 그리기 도구, 편집 도구 등)를 활성화할 수 있다.
선택된 메뉴 항목이 서브메뉴를 열 때, 프로세스는 커서 둘레에 서브메뉴 표시자를 디스플레이(1725)한다. 일부 실시예에서, 이것은 클릭으로 인해 커서 둘레에 서브메뉴가 디스플레이될 것이라는 표시자이다. 도 19는, 2개의 스테이지(1910, 1920)를 통해, 방사형 메뉴(1800)로부터 메뉴 항목(1835)의 제스처 선택의 결과, 및 방사형 서브메뉴(1900)의 초기 디스플레이를 나타낸 것이다. 도시된 바와 같이, 커서 둘레에 서브메뉴 표시자를 디스플레이하는 것에 부가하여, 일부 실시예는 사용자 입력이 서브메뉴를 이동시키기를 기다리는 동안 초기에 기본 위치에서 방사형 서브메뉴를 연다. 일부 실시예는 초기에 부모 메뉴로부터 선택된 항목 둘레에 방사형 서브메뉴를 디스플레이한다.
다른 실시예는 초기에 부모 메뉴와 동일한 중심 위치에 방사형 서브메뉴를 디스플레이한다. 이것이 도 19에 예시된 경우이다. 스테이지(1910)는 항목(1835)을 선택하기 위해 제스처 선택 입력이 인식된 직후의 GUI를 나타낸 것이다. 이 스테이지에서 방사형 서브메뉴(1900)가 부분적으로 열려 있는 반면, 부모 메뉴(1800)는 부분적으로 닫혀 있다. 일부 실시예는 항목들을 안쪽으로 축소시킴으로써 부모 메뉴를 닫지 않고, 오히려 메뉴가 흐려지거나 단순히 디스플레이로부터 제거된다. 스테이지(1910)는 또한 커서(1815) 둘레에 서브메뉴 표시자(1925)를 나타내고 있다. 서브메뉴 표시자(1925)는 커서가 아무쪽으로나 이동될 수 있다는 것을 사용자에게 알려주는 "아무곳으로나 끌기" 텍스트를 포함한다. 스테이지(1920)는 방사형 메뉴(1900)가 완전히 확장되고 부모 메뉴(1800)가 완전히 닫힌 후의 방사형 메뉴(1900)를 나타내고 있다.
프로세스(1700)는 그 다음에 커서 둘레에 서브메뉴를 디스플레이하는 입력을 기다린다. 프로세스는 커서 둘레에 서브메뉴를 디스플레이하기 위해 입력이 수신되었는지 여부를 판정(1730)한다. 일부 실시예에서, 이것은 클릭 입력 또는 동등한 것이다. 즉, 사용자가 마우스 버튼을 눌렀다 놓거나, 터치패드를 탭핑하거나 기타 등등을 할 때까지 서브메뉴 표시자가 커서 둘레에 디스플레이된다. 이러한 입력이 수신되지 않을 때, 프로세스는 서브메뉴 디스플레이를 취소할지 여부를 판정(1735)한다. 예를 들어, 일부 실시예는 타이머를 포함하고, 임계 시간(예를 들어, 5초) 이후에 입력이 수신되지 않는 경우, 메뉴가 취소되고 사용자는 메뉴 항목을 선택하기 위해 메뉴를 재호출해야만 한다. 일부 실시예는 또한 사용자로부터의 키스트로크가 메뉴 또는 커서 제어기로부터의 특정의 입력을 취소하게 할 수 있다.
프로세스가 서브메뉴를 커서 둘레에 디스플레이하는 입력(예를 들어, 마우스 클릭)을 수신할 때, 프로세스는 커서 위치를 식별(1740)하고 이어서 커서 둘레에 방사형 서브메뉴를 디스플레이(1745)한다. 이 프로세스는 이어서 서브메뉴로부터의 메뉴 항목이 제스처 입력을 통해 선택될 수 있도록 1710으로 되돌아간다. 도 20은 방사형 서브메뉴(1900)를 커서 위치로 이동시키기 위한 사용자 입력과 서브메뉴로부터의 메뉴 항목(2055)의 차후의 제스처 선택의 결과를 나타낸 것이다. 이것은 3개의 스테이지(2010 내지 2030)에 의해 나타내어져 있다. 스테이지(2010)는 방사형 서브메뉴(1900)가 위치(2040)에 중심을 두고 있고 커서(1815)가 위치(2045)에 있는 서브메뉴 표시자(1925)와 함께 있는 것을 나타내고 있다.
스테이지(2020)는 클릭 입력(또는 동등한 것)이 수신되고 방사형 서브메뉴(1900)가 위치(2040)로부터 위치(2045)로 이동된 후의 GUI를 나타내고 있으며, 여기서 커서(1815)는 이제 서브메뉴 표시자(1925) 없이 위치해 있다. 일부 실시예는 기본 위치[예를 들어, 위치(2040)]에 있는 서브메뉴의 디스플레이를 제거하고 이를 즉각 커서 위치[예를 들어, 위치(2045)]에 디스플레이한다. 그러나, 다른 실시예는 기본 위치로부터 커서 위치로의 서브메뉴의 움직임을 애니메이션화한다. 단일 선택가능 항목(1840)은 이제 도 18에서 처음에 디스플레이되었던 동일한 위치인 위치(2040)에 디스플레이된다. 일부 실시예에서, 부모 메뉴가 단일 항목 아래에서 닫힌 후에, 서브메뉴는 기본적으로 단일 항목 상부에 디스플레이된다. 스테이지(2030)는, 사용자가 커서를 우측으로 이동시킬 때, 메뉴 항목(2055)의 제스처 선택를 나타내고 있다.
도 7을 참조하여 앞서 언급한 바와 같이, 일부 실시예는 메뉴 및 서브메뉴가 디스플레이 화면의 가장자리에 너무 가까이에서 호출될 때 이들을 크기 조정, 이동 또는 위치 변경한다. 그에 따라, 도 7의 프로세스(700)와 같이, 일부 실시예에서, 도 17의 프로세스(1700)는 먼저 메뉴 또는 서브메뉴를 위치시키기 위한 초기 위치를 식별하고 이어서 초기 위치가 메뉴 또는 서브메뉴의 일부를 화면으로부터 벗어나게 하는지를 판정함으로써 메뉴 또는 서브메뉴의 위치를 결정한다. 초기 위치가 메뉴 또는 서브메뉴의 일부가 화면으로부터 벗어날 때, 이들 실시예에서, 프로세스(1700)는 메뉴 및 서브메뉴가 전체적으로 디스플레이 화면 상에 나타나도록 하기 위해 이들을 크기 조정, 이동 및/또는 위치 변경한다.
당업자라면 상기 프로세스(1700)가 서브메뉴로부터 제스처 선택을 수신하기 위해 일부 실시예에 의해 수행되는 한가지 가능한 프로세스의 예라는 것을 인식할 것이다. 프로세스(1700)가 컴퓨터 명령어가 이러한 메뉴를 디스플레이하고 메뉴에 대한 입력을 변환할 수 있는 방법의 유일한 예는 아니고, 일부 실시예는 프로세스(1700)의 변형을 수행한다. 예를 들어, 일부 실시예는, 방사형 서브메뉴를 커서 둘레에 디스플레이한 후에, 메뉴 항목을 선택하기 위해 제스처 입력에 부가하여 클릭 입력을 수신할 수 있거나, 메뉴 취소 버튼을 선택하는 클릭 입력을 수신할 수 있다. 게다가, 일부 실시예에서, 프로세스(1700)의 동작이 다수의 프로세스에 의해 수행될 수 있다. 예를 들어, 제스처 입력을 인식하고 입력을 메뉴 항목과 연관시키기 위해 동작(1710)을 수행하는 데 다수의 상이한 프로세스가 수반될 수 있다. 또한, 방사형 서브메뉴가 디스플레이되면, 서브메뉴에 관한 입력을 변환하기 위해 완전히 별개의 프로세스가 사용될 수 있다.
IV. 메뉴의 사용
논의한 바와 같이, 상기한 다양한 방사형 메뉴가 아주 다양한 컴퓨팅 응용 프로그램에서 사용될 수 있다. 일부 실시예에서, 메뉴가 운영 체제에서 직접 또는 운영 체제와 분리된 응용 프로그램에서 사용될 수 있다. 게다가, 메뉴는 iPhone®과 같은 핸드헬드 장치에서 특히 유용할 수 있다.
도 21은 일부 실시예의 운영 체제의 다양한 특징을 디스플레이하는 컴퓨터 바탕 화면(2100)을 나타낸 것이다. 바탕 화면은 파일 폴더 탐색 창(2105), 응용 프로그램 선택 아이콘(2110),및 방사형 메뉴(2115)를 포함하고 있다. 파일 폴더 탐색 창(2105)은 파일(예를 들어, 워드 프로세싱 문서, 스프레드시트, 비디오 파일 등)을 찾아 열기 위해 사용자가 계층적 파일 시스템을 탐색할 수 있게 하는 표준 창이다. 응용 프로그램 선택 아이콘(2110)은 사용자에게 컴퓨팅 장치 상의 상이한 응용 프로그램(예를 들어, 이메일, 웹 브라우저, 미디어 플레이어, 워드 프로세싱 응용 프로그램, 미디어 편집 응용 프로그램 등)에 대한 용이한 액세스를 제공한다.
방사형 메뉴(2115)는 운영 체제 특징을 제공하는 전술한 메뉴의 사용의 한 예이다. 방사형 메뉴(2115)는 컴퓨터를 종료시키는 것에 관한 다양한 옵션을 제시한다. 방사형 메뉴(2115)는 메뉴 취소 버튼(2120) 및 4개의 메뉴 항목(2125 내지 2140)을 포함하고 있다. 항목(2125)은 "종료" 옵션을 제시하고, 항목(2130)은 "재시작" 옵션을 제시하며, 항목(2135)은 "로그 오프" 옵션을 제시하고, 항목(2140)은 "대기" 옵션을 제시한다. 일부 실시예는 또한 최대 절전 모드(hibernating)와 같은 다른 옵션을 포함하고 있다.
메뉴 항목(2125 내지 2140)이 방사형 메뉴 둘레에 균일한 간격으로 있다. 그러나, 일부 실시예는 메뉴 항목들 중 일부에 보다 높은 우선순위, 따라서 보다 큰 각도 범위를 할당한다. 예를 들어, 많은 사용자가 다른 항목보다 더 자주 "종료" 옵션을 사용할 것이고, 따라서 보다 큰 각도 범위를 가질 것이다.
일부 실시예에서, 방사형 메뉴(2115)가 바탕 화면의 일부로서 영구적으로 디스플레이되지 않는다. 그 대신에, 단일 선택가능 항목[예를 들어, 메뉴 항목(2125)]이 보통 바탕 화면(2100)에 디스플레이되고, 사용자는 단일 메뉴 항목을 선택함으로써 방사형 메뉴를 호출할 수 있다. 사용자가 항목이 위치하는 화면 영역을 사용하고자 하는 경우, 다른 항목[예를 들어, 창(2105)와 같은 창]이 단일 선택가능 항목 상부에 배치될 수 있다.
당업자라면 일부 실시예의 방사형 메뉴가 아주 다양한 운영 체제 특징에 대해 사용될 수 있다는 것을 인식할 것이다. 예로서, 방사형 메뉴(2115) 또는 상기한 다른 메뉴들 중 하나와 같은 응용 프로그램 선택 아이콘이 메뉴 내에 통합될 수 있다. 예를 들어, 화면의 하단 부분 전체를 차지하기 보다는 화면의 한 코너에 디스플레이되는 방사형 메뉴에 응용 프로그램 선택 아이콘이 제공될 수 있다. 유사하게, 파일 시스템이 폴더 및 서브폴더를 나타내는 일련의 방사형 메뉴 및 서브메뉴로서 구현될 수 있다.
도 22는 합성 비디오 프레젠테이션을 생성하는 데 사용되고 일부 실시예의 메뉴를 이용하는 비디오 편집 응용 프로그램(2200)을 나타내고 있다. 비디오 편집 응용 프로그램(2200)은 합성 디스플레이 영역(2205), 일련의 선택가능 비디오 클립(2210), 비디오 미리보기 디스플레이 영역(2215), 및 비디오 편집 방사형 메뉴(2220)를 포함하고 있다.
합성 디스플레이 영역(2205)은 사용자가 생성하는 비디오 프레젠테이션의 시각적 표현을 제공한다. 사용자는 미디어 클립(예를 들어, 오디오 및 비디오 클립)을 합성 디스플레이 영역에 추가할 수 있고, 여기서 클립은 그래픽적으로 표현된다. 사용자는 합성 디스플레이 영역에 있는 클립에 대해 편집 동작을 수행함으로써 비디오 프레젠테이션을 수정할 수 있다. 일련의 선택가능 비디오 클립(2210)은 사용자가 선택하여 비디오 프레젠테이션에 추가할 수 있는 축소판으로서 표현된 다양한 미디어 클립을 합성 디스플레이 영역(2205)을 통해 제공한다. 비디오 미리보기 디스플레이 영역(2215)은 합성 디스플레이 영역에 따라 합성 프레젠테이션의 미리보기를 디스플레이한다.
비디오 편집 방사형 메뉴(2220)는 비디오 편집 도구를 제공하는 전술한 메뉴의 사용의 한 예이다. 구체적으로는, 방사형 메뉴(2220)는 다수의 자르기 도구 옵션을 사용자에게 제공한다. 방사형 메뉴(2220)는 슬립(slip) 도구(2225), 롤(roll) 도구(2230), 슬라이드(slide) 도구(2235), 및 리플(ripple) 도구(2240)를 포함하고 있다. 일부 실시예는 더 많거나 더 적은 비디오 편집 도구(예를 들어, 자르기 도구 이외의 도구)를 갖는 방사형 메뉴를 제시한다. 일부 실시예는 사용자가 상이한 방식으로 호출할 수 있는 다수의 상이한 방사형 메뉴를 포함하고 있다.
일부 실시예에서, 비디오 편집 방사형 메뉴(2220)가 합성 디스플레이 영역 상에 영구적으로 디스플레이되지 않는다. 오히려, 사용자는 자르기 편집을 수행하고자 할 때 방사형 메뉴를 호출한다. 일부 실시예에서, 키보드 바로가기를 통해 메뉴가 호출된다. 일부 실시예는, 커서가 합성 디스플레이 영역 상에 있을 때, 방사형 메뉴를 디스플레이하는 것에 의해 클릭 입력에 응답한다. 커서가 합성 디스플레이 영역에서 비디오 클립의 편집 지점에 대해 위치하는 곳에 기초하여 사용자가 어느 자르기 도구를 선택할 가능성이 가장 많은지에 의해 메뉴 항목의 순서 또는 우선순위가 결정될 수 있다.
도 23은 현재 웹 브라우저(2305)를 디스플레이하고 있는 핸드헬드 장치(2300)를 나타낸 것이다. 장치(2300)는 휴대폰, 미디어 플레이어 등일 수 있다. 웹 브라우저(2305)는 URL(uniform resource locator) 도구모음(2310), 콘텐츠 디스플레이 영역(2315), 도구모음(2320) 및 방사형 메뉴(2360)를 포함하고 있다.
URL 표시줄(2310)은 사용자 인터페이스 도구 및 사용자가 URL을 타이핑할 수 있고 콘텐츠 디스플레이 영역(2315) 내의 링크를 클릭함으로써 사용자가 탐색한 웹 사이트의 URL을 디스플레이하는 주소 표시줄(2325)을 포함하고 있다. 콘텐츠 디스플레이 영역(2315)은 주소 표시줄(2325)에 표시된 URL에 위치하는 웹 페이지를 디스플레이한다.
도구모음(2320)은 5개의 도구 - 뒤로 및 앞으로 버튼(2330, 2335), 북마크 추가 아이콘(2340), 북마크의 목록을 여는 북마크 아이콘(2345), 및 사용자가 선택할 열린 웹 페이지의 목록을 디스플레이하는 페이지 갤러리 아이콘(2355) - 를 포함하고 있다.
방사형 메뉴(2360)는 URL 표시줄(2310) 또는 도구모음(2320)에 영구적으로 디스플레이되지 않는 다양한 옵션을 제시한다. 방사형 메뉴(2360)는 사용자가 디스플레이 영역(2315)에 디스플레이되는 콘텐츠에서 찾을 텍스트를 타이핑할 수 있게 하는 도구를 나타나게 하는 텍스트 찾기 옵션(2365), 사용자가 그의 브라우징 이력을 볼 수 있게 하는 이력 옵션(2370), 새로운 브라우징 창을 여는 새 창 옵션(2375), 및 텍스트를 복사하는 복사 옵션(2380)을 포함하고 있다.
일부 실시예에서, 장치는 터치스크린 장치이다. 일부 실시예에서, 사용자는 디스플레이 영역(2315)에서 탭핑, 두번 탭핑, 또는 기타 멀티 터치 입력에 의해 메뉴를 호출할 수 있다. 방사형 메뉴 항목들 중 하나를 선택하기 위해, 사용자는 메뉴 항목을 탭핑하거나, 메뉴 항목의 방향으로 스와이프 제스처를 수행할 수 있다(즉, 터치스크린은 스와이프 제스처에 상응함).
당업자라면 메뉴(2360) 이외의 방사형 메뉴가 핸드헬드 장치 브라우저에서 사용될 수 있다는 것을 인식할 것이다. 예를 들어, 도구모음(2320)이 5개의 항목을 갖는 호출가능한 방사형 메뉴로서 제시될 수 있다. 게다가, 이러한 메뉴가 결코 브라우저로 제한되지 않으며, 실제로 핸드헬드 장치 상의 임의의 응용 프로그램에 대해 사용될 수 있다. 장치(2300)와 같은 핸드헬드 장치에서 화면 공간이 종종 부족하며, 따라서 본 출원에서 기술된 메뉴는 이 제한된 공간에서 다수의 메뉴를 제공하는 데 이상적인 해결책이다.
V. 소프트웨어 아키텍처
일부 실시예에서, 전술한 프로세스는 컴퓨터 또는 핸드헬드 장치와 같은 특정의 기계 상에서 실행되거나 컴퓨터 판독가능 매체에 저장되어 있는 소프트웨어로서 구현된다. 도 24는 이상의 섹션들에서 기술한 것과 같은 메뉴를 제시하는 일부 실시예의 응용 프로그램(2400)의 소프트웨어 아키텍처를 개념적으로 나타낸 것이다. 일부 실시예에서, 응용 프로그램은 독립형 응용 프로그램이거나 다른 응용 프로그램 내에 통합되어 있는 반면[예를 들어, 응용 프로그램(2400)이 비디오 편집 응용 프로그램, 핸드헬드 장치에 대한 소프트웨어 등의 일부분일 수 있음], 다른 실시예에서, 응용 프로그램이 운영 체제 내에서 구현될 수 있다. 게다가, 일부 실시예에서, 응용 프로그램이 서버-기반 솔루션의 일부로서 제공된다. 일부 이러한 실시예에서, 응용 프로그램은 씬 클라이언트를 통해 제공된다. 즉, 사용자가 서버로부터 원격지에 있는 별개의 기계를 통해 응용 프로그램과 상호작용하는 동안 응용 프로그램이 서버 상에서 실행된다. 다른 이러한 실시예에서, 응용 프로그램은 씩 클라이언트(thick client)를 통해 제공된다. 즉, 응용 프로그램이 서버로부터 클라이언트 기계로 배포되고 클라이언트 기계 상에서 실행된다.
응용 프로그램(2400)은 사용자 인터페이스(UI) 상호작용 모듈(2405), 항목 선택기(2410), 제스처 인식 모듈(2415), 하이라이트 발생기(2420), 우선순위 계산 모듈(2425), 및 메뉴 디스플레이 모듈(2430)을 포함하고 있다. 미디어 편집 응용 프로그램은 또한 메뉴 데이터베이스(2435)를 포함하고 있다. 일부 실시예에서, 메뉴 데이터베이스(2435)와 동일한 물리적 저장 장치의 일부이거나 개별적으로 저장될 수 있는 다른 저장 장치도 존재한다. 도 24는 또한 커서 제어기 드라이버(2455), 키보드 드라이버(2460), 및 디스플레이 모듈(2465)을 포함하는 운영 체제(2450)도 나타내고 있다. 일부 실시예에서, 예시된 바와 같이, 응용 프로그램(2400)이 운영 체제와 분리된 응용 프로그램이거나 응용 프로그램의 일부일 때에도, 커서 제어기 드라이버(2455), 키보드 드라이버(2460), 및 디스플레이 모듈(2465)은 운영 체제(2450)의 일부이다.
사용자는 입력 장치(도시 생략)를 통해 사용자 인터페이스와 상호작용한다. 커서 제어기(마우스, 태블릿, 터치패드 등) 및 키보드와 같은 입력 장치는 신호를 커서 제어기 드라이버(2455) 및 키보드 드라이버(2460)로 전송하고, 이들은 그 신호를 UI 상호작용 모듈(2405)에 제공되는 사용자 입력 데이터로 변환한다.
본 출원은 상이한 일련의 동작 및 기능을 수행하는 다수의 방식을 사용자에게 제공하는 그래픽 사용자 인터페이스를 기술하고 있다. 일부 실시예에서, 상이한 입력 장치(예를 들어, 키보드, 트랙패드, 터치패드, 마우스 등)를 통해 사용자로부터 수신되는 상이한 명령에 기초하여 이들 동작 및 기능이 수행된다. 예를 들어, 본 출원은 그래픽 사용자 인터페이스 내의 객체를 제어(예를 들어, 선택, 이동)하기 위해 그래픽 사용자 인터페이스에서의 커서를 사용하는 것을 기술하고 있다. 그러나, 일부 실시예에서, 그래픽 사용자 인터페이스 내의 객체는 또한 터치 컨트롤과 같은 다른 컨트롤을 통해 제어 또는 조작될 수 있다. 일부 실시예에서, 터치 컨트롤은 장치의 디스플레이 상에서의 터치의 존재 및 위치를 검출할 수 있는 입력 장치를 통해 구현된다. 이러한 장치의 예는 터치 스크린 장치이다. 일부 실시예에서, 터치 컨트롤을 사용하여, 사용자는 터치 스크린 장치의 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스와 상호작용함으로써 객체를 직접 조작할 수 있다. 예를 들어, 사용자는 그래픽 사용자 인터페이스 내의 특정의 객체를 단지 터치함으로써 터치 스크린 장치의 디스플레이 상의 그 특정의 객체를 선택할 수 있다. 그에 따라, 터치 컨트롤이 이용될 때, 일부 실시예에서, 그래픽 사용자 인터페이스의 객체의 선택을 가능하게 하기 위해 커서가 심지어 디스플레이되지 않을 수 있다. 그러나, 커서가 그래픽 사용자 인터페이스에 제공될 때, 일부 실시예에서, 커서를 제어하기 위해 터치 컨트롤이 사용될 수 있다.
UI 상호작용 모듈은 제시된 방사형 메뉴와 관련하여 사용자 입력 데이터를 해석하고 이를 해당 모듈[항목 선택기(2410), 제스처 인식 모듈(2415) 및 하이라이트 발생기(2420) 등]로 전달한다.
항목 선택기(2410)는 사용자 인터페이스 상호작용을 방사형 메뉴 항목의 선택으로 해석한다. 단일 선택가능 항목의 선택을 통해 방사형 메뉴가 열릴 때, 이 선택이 또한 항목 선택기(2410)에 의해 처리된다. 항목 선택기는 어느 항목이 열리게 될 방사형 메뉴에 있는지, 항목이 어디에 위치하는지, 항목과 연관된 각도 영역과 같은 정보를 메뉴 데이터베이스(2435)로부터 수신한다. 제스처 선택이 식별될 때, 항목 선택기는 또한 제스처 인식 모듈(2415)로부터 제스처 정보를 수신한다. 메뉴 항목의 선택에 관한 정보 및 메뉴 데이터베이스(2435)로부터의 임의의 관련 정보가 이어서 해석 및 출력을 위해 메뉴 디스플레이 모듈로 전달된다. 일부 실시예에서, 상기 섹션 III에 기술된 바와 같이, 항목 선택기(2410)는 또한 방사형 서브메뉴를 커서 위치로 이동시키는 선택 입력을 인식한다.
제스처 인식 모듈(2415)은, 커서 입력이 제스처 선택인지 여부를 판정하기 위해, UI 상호작용 모듈(2405)로부터 수신되는 사용자 인터페이스 상호작용 정보를 해석한다. 제스처 인식 모듈(2415)은, 커서가 제스처 선택에 맞게 충분히 빠르게 직선으로 이동하고 있는지, 그러한 경우, 제스처의 각도 및 위치를 결정하기 위해, 시간에 따른 커서 위치 데이터에 대해 계산을 수행한다. 이 제스처 정보(각도, 커서 위치 등)가 항목 선택기(2410)로 전달되고, 따라서 항목 선택기는 제스처에 의해 선택된 메뉴 항목을 식별할 수 있다.
하이라이트 발생기(2420)는 커서 위치에 기초하여 방사형 메뉴 항목에 대한 하이라이트를 발생한다. 일부 실시예에서, 하이라이트 발생기는 UI 상호작용 모듈(2405)로부터 수신된 정보에 기초하여 커서 위치를 식별하고 이를 특정의 메뉴 항목과 연관시키며, 특정의 메뉴 항목과 연관된 각도 범위 전체에 대한 하이라이트를 발생한다. 이 정보는 이어서, 하이라이트가 디스플레이될 수 있도록, 메뉴 디스플레이 모듈(2430)로 전달된다.
우선순위 계산 모듈(2425)은 메뉴 데이터베이스(2435) 내의 방사형 메뉴의 일부인 다양한 메뉴 항목에 대한 상이한 우선순위를 계산한다. 일부 실시예에서, 메뉴 데이터베이스는 다양한 메뉴 항목에 대한 선택의 빈도수를 추적한다(다른 실시예에서, 이 정보는 별개의 저장 장치에 저장된다). 이 선택 빈도수 정보는 다양한 메뉴 항목에 대한 우선순위를 결정하기 위해 일부 실시예의 우선순위 계산 모듈에 의해 사용된다. 우선순위 계산 모듈은, 일부 실시예에서, 또한 메뉴 데이터베이스(2435) 내의 다양한 메뉴 항목에 대한 각도 범위를 계산한다. 일부 실시예는 정기적으로 또는 메뉴 항목의 선택이 행해진 후에 이 정보를 계산한다. 다른 실시예는 방사형 메뉴가 호출될 때마다 이 정보를 계산한다.
메뉴 디스플레이 모듈(2430)은 항목 선택기(2410) 및 하이라이트 발생기(2420)로부터 정보를 수신한다. 메뉴 디스플레이 모듈(2430)은 메뉴 항목의 디스플레이를 제어한다. 일부 실시예에서, 메뉴 디스플레이 모듈은 임의의 서브메뉴를 포함하는 항목 선택에 응답하여 메뉴의 열기 및 닫기를 처리한다. 이 정보는 디스플레이 모듈(2465)로 전송되며, 이 디스플레이 모듈은 출력 장치(도시 생략) 상에 메뉴(및 나머지 그래픽 사용자 인터페이스)를 실제로 디스플레이하는 것을 처리한다.
특징들 중 다수가 하나의 모듈[예를 들어, 항목 선택기(2410) 또는 제스처 인식 모듈(2415)]에 의해 수행되는 것으로 기술되어 있지만, 당업자라면 기능이 다수의 모듈로 분할될 수 있고, 하나의 특징의 수행이 심지어 다수의 모듈을 필요로 할 수 있다는 것을 인식할 것이다. 유사하게, 다수의 모듈에 의해 수행되는 것으로 기술되는 다수의 특징이 실제로 단일 모듈에 의해 수행될 수 있다. 일부 실시예에서, 각각의 모듀은 일련의 프로세스이다.
도 25는 응용 프로그램(예를 들어, 비디오 편집 응용 프로그램, 운영 체제 등)을 제작하는 일부 실시예의 프로세스(2500)를 개념적으로 나타낸 것이다. 도시된 바와 같이, 프로세스(2500)는 메뉴 항목 및 메뉴 항목과 연관된 명령어를 정의(2505)하는 것으로 시작한다. 프로세스는 이어서 메뉴 항목을 방사형 메뉴에 표현하는 아이콘을 정의(2510)한다. 도 6에 도시된 메뉴(600)의 메뉴 항목 및 연관된 아이콘이 이러한 항목의 예이다.
그 다음에, 프로세스(2500)는 응용 프로그램(2400)의 우선순위 계산 모듈(2425)과 같은, 메뉴 항목의 우선순위를 결정하는 모듈을 정의(2515)한다. 프로세스는 사용자 입력에 응답하여 메뉴 항목을 선택하는 모듈을 정의(2520)한다. 항목 선택기(2410)는 이러한 모듈의 예이다. 프로세스는 그 다음에 제스처 인식 모듈(2415)과 같은, 사용자 입력에 기초하여 제스처 선택을 인식하는 모듈을 정의(2525)한다.
프로세스(2500)는 이어서, 하이라이트 발생기(2420)와 같은, 커서가 메뉴 항목 상에 있을 때 방사형 메뉴를 하이라이트하는 모듈을 정의(2530)한다. 그 다음에, 프로세스는 다른 항목, 도구 및 기능을 정의(2535)한다. 예를 들어, 정의되는 응용 프로그램이 운영 체제인 경우, 프로세스는 운영 체제에 필요한 다양한 기능을 정의한다. 정의되는 응용 프로그램이 미디어 편집 응용 프로그램일 때, 다양한 편집 도구, GUI 구성체 등이 정의된다.
프로세스(2500)는 이어서 정의된 응용 프로그램을 컴퓨터 판독가능 저장 매체에 저장(2540)한다. 일부 실시예에서, 컴퓨터 판독가능 저장 매체는 디스크(예를 들어, CD, DVD, 하드 디스크 등) 또는 고상 저장 장치(예를 들어, 플래시 메모리)일 수 있다. 당업자라면 프로세스(2500)에 의해 정의되는 다양한 모듈 및 UI 항목이 본 발명의 일부 실시예를 포함하는 편집 응용 프로그램에 대해 정의되고 컴퓨터 판독가능 저장 매체에 저장될 수 있는 모듈 및 UI 항목을 망라하고 있지 않다는 것을 인식할 것이다.
VI. 컴퓨터 시스템
상기한 특징 및 응용의 다수는 컴퓨터 판독가능 저장 매체(컴퓨터 판독가능 매체라고도 함)에 기록된 일련의 명령어로서 지정되는 소프트웨어 프로세스로서 구현된다. 이들 명령어는, 하나 이상의 계산 요소(들)(프로세서 또는 ASIC 및 FPGA와 같은 다른 계산 요소 등)에 의해 실행될 때, 계산 요소(들)로 하여금 명령어에 나타낸 동작을 수행하게 한다. 컴퓨터는 그의 가장 넓은 의미로 보아야 하고, 프로세서를 갖는 임의의 전자 장치를 포함할 수 있다. 컴퓨터 판독가능 매체의 예는, CD-ROM, 플래시 드라이브, RAM 칩, 하드 드라이브, EPROM 등을 포함하지만, 이들로 제한되지 않는다. 컴퓨터 판독가능 매체는 무선으로 또는 유선 연결을 통해 전달되는 반송파 및 전자 신호를 포함하지 않는다.
본 명세서에서, "소프트웨어"라는 용어는 프로세서에서 처리하기 위해 메모리 내로 판독될 수 있는, 판독 전용 메모리에 존재하는 펌웨어 또는 자기 저장 장치에 저장된 응용 프로그램을 포함하는 것으로 보아야 한다. 또한, 일부 실시예에서, 다수의 소프트웨어 발명이 개별 소프트웨어 발명으로 있으면서 큰 프로그램의 하위 부분으로서 구현될 수 있다. 일부 실시예에서, 다수의 소프트웨어 발명이 또한 개별 프로그램으로서 구현될 수 있다. 마지막으로, 함께 본 명세서에 기술된 소프트웨어 발명을 구현하는 개별 프로그램의 임의의 조합이 본 발명의 범위 내에 속한다. 일부 실시예에서, 소프트웨어 프로그램은, 하나 이상의 컴퓨터 시스템에서 동작하도록 설치될 때, 소프트웨어 프로그램의 동작을 실행하고 수행하는 하나 이상의 특정의 기계 구현을 정의한다.
도 26은 본 발명의 일부 실시예가 구현되는 컴퓨터 시스템을 개념적으로 나타낸 것이다. 이러한 컴퓨터 시스템은 다양한 유형의 컴퓨터 판독가능 매체 및 다양한 다른 유형의 컴퓨터 판독가능 매체에 대한 인터페이스를 포함한다. 컴퓨터 시스템(2600)은 버스(2605), 프로세서(2610), 그래픽 처리 장치(GPU)(2620), 시스템 메모리(2625), 판독 전용 메모리(2630), 영구 저장 장치(2635), 입력 장치(2640), 및 출력 장치(2645)를 포함한다.
버스(2605)는 컴퓨터 시스템(2600)의 다수의 내부 장치를 통신 연결시키는 모든 시스템, 주변 장치, 및 칩셋 버스를 총칭하여 나타낸다. 예를 들어, 버스(2605)는 프로세서(2610)를 판독 전용 메모리(2630), GPU(2620), 시스템 메모리(2625) 및 영구 저장 장치(2635)와 통신 연결시킨다.
이들 다양한 메모리 장치로부터, 프로세서(2610)는 본 발명의 프로세스를 실행하기 위해, 실행할 명령어 및 처리할 데이터를 검색한다. 일부 실시예에서, 프로세서는 FPGA(Field Programmable Gate Array), ASIC 또는 명령어를 실행하는 다양한 다른 전자 구성요소를 포함한다. 일부 실시예에서, 프로세서 일부 명령어가 GPU(2620)로 전달되어 GPU(2620)에 의해 실행된다. GPU(2620)는 다양한 계산을 오프로드하거나 프로세서(2610)에 의해 제공되는 이미지 처리를 보완할 수 있다. 일부 실시예에서, 이러한 기능은 CoreImage의 커널 쉐이딩 언어(kernel shading language)를 사용하여 제공될 수 있다.
판독 전용 메모리(ROM)(2630)는 컴퓨터 시스템의 프로세서(2610) 및 다른 모듈에서 필요로 하는 정적 데이터 및 명령어를 저장한다. 한편, 영구 저장 장치(2635)는 판독 및 기록 메모리 장치이다. 이 장치는 컴퓨터 시스템(2600)이 꺼져 있을 때에도 명령어 및 데이터를 저장하고 있는 비휘발성 메모리 장치이다. 본 발명의 일부 실시예는 대용량 저장 장치(자기 또는 광 디스크 및 그의 대응하는 디스크 드라이브 등)를 영구 저장 장치(2635)로서 사용한다.
다른 실시예는 이동식 저장 장치(플로피 디스크, 플래시 드라이브, 또는 ZIP® 디스크 및 그의 대응하는 디스크 드라이브 등)를 영구 저장 장치로서 사용한다. 영구 저장 장치(2635)와 같이, 시스템 메모리(2625)도 판독 및 기록 메모리 장치이다. 그러나, 저장 장치(2635)와 달리, 시스템 메모리는 랜덤 액세스 메모리와 같은 휘발성 판독 및 기록 메모리이다. 시스템 메모리는 런타임 시에 프로세서가 필요로 하는 명령어 및 데이터의 일부를 저장한다. 일부 실시예에서, 본 발명의 프로세스가 시스템 메모리(2625), 영구 저장 장치(2635) 및/또는 판독 전용 메모리(2630)에 저장된다. 예를 들어, 다양한 메모리 장치는 일부 실시예에 따른 멀티미디어 항목을 처리하는 명령어를 포함한다. 이들 다양한 메모리 장치로부터, 프로세서(2610)는 일부 실시예의 프로세스를 실행하기 위해, 실행할 명령어 및 처리할 데이터를 검색한다.
버스(2605)는 또한 입력 및 출력 장치(2640, 2645)에 연결된다. 입력 장치는 사용자가 컴퓨터 시스템으로 정보를 전달하고 명령을 선택할 수 있게 한다. 입력 장치(2640)는 영숫자 키보드 및 포인팅 장치("커서 제어 장치"라고도 함)를 포함하고 있다. 출력 장치(2645)는 컴퓨터 시스템에 의해 발생된 이미지를 디스플레이한다. 예를 들어, 이들 장치는 GUI를 디스플레이한다. 출력 장치는 프린터 및 CRT(cathode ray tube) 또는 LCD(liquid crystal display)와 같은 디스플레이 장치를 포함한다.
마지막으로, 도 26에 도시된 바와 같이, 버스(2605)는 또한 네트워크 어댑터(도시 생략)를 통해 컴퓨터(2600)를 네트워크(2665)에 연결시킨다. 이러한 방식으로, 컴퓨터는 컴퓨터들의 네트워크[LAN(local area network), WAN(wide area network) 또는 인트라넷 등], 또는 네트워크들의 네트워크(인터넷 등)의 일부일 수 있다. 예를 들어, 사용자가 웹 브라우저에서 동작하는 GUI와 상호작용할 때 컴퓨터(2600) 상에서 실행되는 웹 브라우저가 웹 서버와 상호작용할 수 있도록 컴퓨터(2600)가 웹 서버[네트워크(2665)]에 결합될 수 있다.
컴퓨터 시스템(2600)의 구성요소의 일부 또는 전부가 본 발명과 관련하여 사용될 수 있다. 예를 들어, 일부 실시예에서, 렌더링의 프레임의 실행이 프로세서(2610) 대신에 GPU(2620)에 의해 수행된다. 유사하게, 다른 이미지 편집 기능은 GPU(2620)로 오프로드될 수 있고, 이 GPU(2620)에서 이들 기능이 실행된 후에 결과가 다시 메모리 또는 프로세서(2610) 내로 전달된다. 그러나, GPU(2620)의 통상의 한계는 GPU(2620)가 임의의 주어진 때에 저장하고 처리할 수 있는 명령어의 수이다. 따라서, 일부 실시예는 프로세스가 GPU(2620) 상에서 로컬적으로 실행하기 위해 GPU(2620)의 명령어 버퍼에 들어가도록 이들 프로세스를 구현하는 명령어를 개조한다. 또한, 일부 GPU(2620)는 일부 실시예의 프로세스를 실행하기에 충분한 처리 자원을 포함하지 않으며, 따라서 프로세서(2610)가 명령어를 실행한다. 당업자라면 임의의 다른 시스템 구성이 또한 본 발명과 관련하여 사용될 수 있다는 것을 이해할 것이다
일부 실시예는 마이크로프로세서, 기계 판독가능 또는 컴퓨터 판독가능 매체(대안으로서, 컴퓨터 판독가능 저장 매체, 기계 판독가능 매체, 또는 기계 판독가능 저장 매체라고 함)에 컴퓨터 프로그램 명령어를 저장하는 저장 장치 및 메모리와 같은 전자 구성요소를 포함하고 있다. 이러한 컴퓨터 판독가능 매체의 일부 예는 RAM, ROM, CD-ROM(read-only compact disc), CD-R(recordable compact disc), CD-RW(rewritable compact disc), 판독 전용 DVD(read-only digital versatile disc)(예를 들어, DVD-ROM, 2층 DVD-ROM), 각종의 기록가능/재기록가능(recordable/rewritable) DVD(예를 들어, DVD-RAM, DVD-RW, DVD+RW 등), 플래시 메모리(예를 들어, SD 카드, 미니-SD 카드, 마이크로-SD 카드 등), 자기 및/또는 고상 하드 드라이브, 판독 전용 및 기록가능 블루레이 디스크, 초밀도(ultra density) 광 디스크, 임의의 다른 광 또는 자기 매체, 및 플로피 디스크를 포함한다. 컴퓨터 판독가능 매체는 적어도 하나의 프로세서에 의해 실행될 수 있는 컴퓨터 프로그램을 저장할 수 있고, 다양한 동작을 수행하는 일련의 명령어를 포함한다. 일련의 명령어를 저장하고 실행하도록 구성된 하드웨어 장치의 예는 ASIC(application specific integrated circuit), FPGA(field programmable gate array), PLD(programmable logic device), ROM 및 RAM 장치를 포함하지만, 이들로 제한되지 않는다. 컴퓨터 프로그램 또는 컴퓨터 코드의 예는 컴파일러에 의해 생성된 것과 같은 기계 코드, 및 인터프리터를 사용하여 컴퓨터, 전자 구성요소, 또는 마이크로프로세서에 의해 실행되는 상위 레벨 코드를 포함하는 파일을 포함한다.
본 출원의 본 명세서 및 임의의 청구항에서 사용되는 바와 같이, "컴퓨터", "서버", "프로세서", 및 "메모리"라는 용어 모두는 전자 또는 다른 기술 장치를 말한다. 이들 용어는 사람 또는 사람의 그룹을 제외한다. 본 명세서의 목적상, '디스플레이' 또는 '디스플레이하는'이라는 용어는 전자 장치 상에 디스플레이하는 것을 의미한다. 본 출원의 본 명세서 및 임의의 청구항에서 사용되는 바와 같이, "컴퓨터 판독가능 매체" 및 "컴퓨터 판독가능 매체들"이라는 용어는 컴퓨터에 의해 판독될 수 있는 형태로 정보를 저장하는 유형의 물리적 물체(tangible, physical object)로 전적으로 제한된다. 이들 용어는 무선 신호, 유선 다운로드 신호, 및 임의의 다른 사용후 삭제 신호(ephemeral signal)를 제외한다. 그러나, 일부 실시예는 신호 전달 매체(예를 들어, 무선 신호, 유선 다운로드 신호 등)를 통해 전송되는 일련의 명령어로서 지정되는 소프트웨어 프로세스로서 구현되는 명령어로서 구현된다.
본 발명이 다수의 구체적인 상세를 참조하여 기술되어 있지만, 당업자라면 본 발명이 본 발명의 사상을 벗어나지 않고 다른 특정의 형태로 구현될 수 있다는 것을 인식할 것이다. 따라서, 당업자라면 본 발명이 이상의 예시적인 상세에 의해 제한되어서는 안 되고 첨부된 특허청구범위에 의해 한정되어야 한다는 것을 이해할 것이다.

Claims (33)

  1. 컴퓨터 시스템에 의해 수행되는 방법으로서,
    복수의 선택가능 메뉴 항목을 정의하는 단계 - 각각의 메뉴 항목은 특정의 우선순위를 가짐 -; 및
    상기 선택가능 메뉴 항목의 선택을 수신하는 방사형 메뉴를 정의하는 단계 - 일련의 개별 아이콘들로서 상기 방사형 메뉴에 디스플레이하기 위한 상기 메뉴 항목은 중심 위치로부터 특정의 거리에 특정의 순서로 배열됨 -
    를 포함하고,
    상기 디스플레이된 아이콘들 사이의 각도 거리와 상기 디스플레이된 아이콘들의 상기 특정의 순서가 상기 우선순위에 기초하며,
    적어도 하나의 메뉴 항목의 상기 특정의 우선순위에 대한 변경은 상기 아이콘들이 디스플레이되는 상기 특정의 순서에 대한 변경을 야기하는, 컴퓨터 시스템에 의해 수행되는 방법.
  2. 제1항에 있어서, 상기 복수의 선택가능 메뉴 항목을 정의하는 단계는 특정의 메뉴 항목이 선택되는 빈도수에 기초하여 상기 특정의 메뉴 항목의 우선순위를 정의하는 단계를 포함하는, 컴퓨터 시스템에 의해 수행되는 방법.
  3. 제1항에 있어서, 상기 복수의 선택가능 메뉴 항목을 정의하는 단계는 상기 메뉴 항목이 서로에 대해 선택되는 빈도수에 기초하여 상기 선택가능 메뉴 항목의 우선순위를 정의하는 단계를 포함하는, 컴퓨터 시스템에 의해 수행되는 방법.
  4. 제1항에 있어서, 상기 복수의 선택가능 메뉴 항목을 정의하는 단계는 상기 메뉴 항목이 선택될 예상된 빈도수에 기초하여 특정의 메뉴 항목의 우선순위를 정의하는 단계를 포함하는, 컴퓨터 시스템에 의해 수행되는 방법.
  5. 제1항에 있어서, 상기 일련의 개별 아이콘들의 각각의 특정의 아이콘은 상기 특정의 아이콘의 우선순위에 기초하여 상기 방사형 메뉴에서의 특정의 각도 범위를 할당받고, 제1 아이콘이 제1 우선순위를 갖고 제2 아이콘이 상기 제1 우선순위보다 높은 제2 우선순위를 가질 때, 상기 제1 아이콘이 상기 제2 아이콘보다 작은 각도 범위를 할당받는, 컴퓨터 시스템에 의해 수행되는 방법.
  6. 제5항에 있어서, 각각의 특정 아이콘은 그 특정 아이콘에 할당된 특정 각도 범위의 중심에 디스플레이되고,
    상기 방법은 (i) 제1 아이콘에 제1 각도 범위를 할당하고 (ii) 상기 방사형 메뉴에서 상기 제1 아이콘에 이웃하는 제2 아이콘에 제2 각도 범위를 할당하는 모듈을 정의하는 단계를 더 포함하고, 상기 방사형 메뉴에서 상기 제1 아이콘과 상기 제2 아이콘 사이의 각도 거리가 상기 제1 각도 범위의 1/2과 상기 제2 각도 범위의 1/2의 합인, 컴퓨터 시스템에 의해 수행되는 방법.
  7. 제1항에 있어서, 제1 아이콘이 제1 우선순위를 갖고 제2 아이콘이 상기 제1 우선순위보다 높은 제2 우선순위를 가질 때, 상기 제1 아이콘과 상기 방사형 메뉴에서의 상기 제1 아이콘의 이웃 아이콘 사이의 각도 거리가 상기 제2 아이콘과 상기 제2 아이콘의 이웃 아이콘 사이의 각도 거리보다 작은, 컴퓨터 시스템에 의해 수행되는 방법.
  8. 컴퓨터 시스템에 의해 수행되는 방법으로서,
    복수의 선택가능 메뉴 항목을 정의하는 단계 - 각각의 메뉴 항목은 특정의 우선순위를 가짐 -;
    상기 선택가능 메뉴 항목의 선택을 수신하는 방사형 메뉴를 정의하는 단계 - 상기 선택가능 메뉴 항목은 일련의 개별 아이콘들로서 상기 방사형 메뉴에 중심 위치로부터 특정의 거리에 배열되어 디스플레이되고, 상기 디스플레이된 아이콘들 사이의 각도 거리는 상기 우선순위에 기초하고, 상기 방사형 메뉴는 핸드헬드 장치 상에 디스플레이되고, 상기 메뉴 항목은 상기 핸드헬드 장치의 터치스크린 상에서의 터치 입력을 통해 선택 가능함 -;
    상기 복수의 선택가능 메뉴 항목 중 적어도 하나의 메뉴 항목에 대한 상기 특정의 우선순위에 있어서의 변경을 수신하는 단계; 및
    상기 특정의 우선순위에 있어서의 변경에 따라 상기 방사형 메뉴를 조정하는 단계 - 상기 조정은 디스플레이된 아이콘들 간의 적어도 하나의 각도 거리를 변경하는 것을 포함함 -
    를 포함하는, 컴퓨터 시스템에 의해 수행되는 방법.
  9. 제1항 내지 제8항 중 어느 한 항의 모든 단계들을 구현하기 위한 수단을 포함하는 컴퓨터 시스템.
  10. 적어도 하나의 프로세서에 의해 실행될 때, 일련의 선택가능 아이콘을 제시하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 매체로서, 상기 컴퓨터 프로그램은,
    방사형 메뉴를, 중심 위치 둘레에 특정의 순서에 따라 방사상으로 배열된 복수의 선택가능 아이콘으로서 디스플레이하고 - 각각의 선택가능 아이콘은 특정의 우선순위를 가지고, 상기 선택가능 아이콘들 사이의 각도 거리 및 상기 선택 가능 아이콘들의 상기 특정의 순서는 상기 우선순위에 기초함 -;
    사용자 입력에 의해 지정되는 위치를 식별하고;
    식별된 상기 위치를 특정의 아이콘과 연관시키고;
    상기 특정의 아이콘에 대한 선택가능 영역을 나타내기 위하여, 상기 방사형 메뉴의 중심으로부터 방사하는 하이라이트를 디스플레이하고 상기 특정의 아이콘을 지나서 연장시키기 위한 명령어 집합을 포함하는 컴퓨터 판독가능 매체.
  11. 제10항에 있어서, 상기 컴퓨터 프로그램은
    사용자 입력을 새로운 위치로 이동시키고;
    상기 새로운 위치를 식별하고;
    상기 새로운 위치를 상기 복수의 선택가능 아이콘 중의 제2 아이콘과 연관시키고;
    상기 제2 아이콘에 대한 선택가능 영역을 나타내는 상기 방사형 메뉴의 중심으로부터 방사하는 하이라이트를 디스플레이하기 위한 명령어 집합을 더 포함하는 컴퓨터 판독가능 매체.
  12. 적어도 하나의 프로세서에 의해 실행될 때, 일련의 선택가능 아이콘을 제시하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 매체로서, 상기 컴퓨터 프로그램은,
    방사형 메뉴를, 중심 위치 둘레에 특정의 순서로 방사상으로 배열된 복수의 선택가능 아이콘으로서 디스플레이하고 - 각각의 선택가능 아이콘은 특정의 우선순위를 가지고, 상기 선택가능 아이콘들 사이의 각도 거리 및 상기 선택 가능 아이콘들의 상기 특정의 순서는 상기 우선순위에 기초함 -;
    사용자 입력에 의해 지정되는 위치를 식별하고;
    식별된 상기 위치를 특정의 아이콘과 연관시키고;
    상기 특정의 아이콘에 대한 선택가능 영역을 나타내는 상기 방사형 메뉴의 중심으로부터 방사하는 하이라이트를 디스플레이하기 위한 명령어 집합을 포함하고,
    상기 특정의 아이콘에 대한 선택가능 영역은 상기 특정의 아이콘보다 넓은, 컴퓨터 판독가능 매체.
  13. 제12항에 있어서, 상기 선택가능 영역은 상기 특정의 아이콘에 연관된 각도 범위를 포함하는, 컴퓨터 판독가능 매체.
  14. 제13항에 있어서, 상기 선택가능 영역은 무한 방사 거리(infinite radial distance)로 연장되는, 컴퓨터 판독가능 매체.
  15. 적어도 하나의 프로세서에 의해 실행될 때, 일련의 선택가능 아이콘을 제시하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 매체로서, 상기 컴퓨터 프로그램은,
    방사형 메뉴를, 중심 위치 둘레에 특정의 순서로 방사상으로 배열된 복수의 선택가능 아이콘으로서 디스플레이하고 - 각각의 선택가능 아이콘은 특정의 우선순위를 가지고, 상기 선택가능 아이콘들 사이의 각도 거리 및 상기 선택 가능 아이콘들의 상기 특정의 순서는 상기 우선순위에 기초함 -;
    사용자 입력에 의해 지정되는 위치를 식별하고;
    식별된 상기 위치를 특정의 아이콘과 연관시키고;
    상기 특정의 아이콘에 대한 선택가능 영역을 나타내기 위하여, 상기 방사형 메뉴의 중심으로부터 방사하는 하이라이트를 디스플레이하고 상기 특정의 아이콘을 지나서 연장시키기 위한 명령어 집합을 포함하고,
    상기 선택가능 영역은 최대 방사 거리로 제한되는, 컴퓨터 판독가능 매체.
  16. 적어도 하나의 프로세서에 의해 실행될 때, 일련의 선택가능 아이콘을 제시하는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 매체로서, 상기 컴퓨터 프로그램은,
    방사형 메뉴를 열라는 요청을 수신하고;
    상기 방사형 메뉴가 중심 위치로부터 열리는 애니메이션을 디스플레이하고 - 상기 방사형 메뉴는 상기 중심 위치 둘레에 특정의 순서로 방사상으로 배열된 복수의 선택가능 아이콘으로서 디스플레이되고, 각각의 선택가능 아이콘은 특정의 우선순위를 가지고, 상기 선택가능 아이콘들 사이의 각도 거리 및 상기 선택 가능 아이콘들의 상기 특정의 순서는 상기 우선순위에 기초함 - ;
    사용자 입력에 의해 지정되는 위치를 식별하고;
    식별된 상기 위치를 특정의 아이콘과 연관시키고;
    상기 특정의 아이콘에 대한 선택가능 영역을 나타내기 위하여, 상기 방사형 메뉴의 중심 위치로부터 방사하는 하이라이트를 디스플레이하기 위한 명령어 집합을 포함하는, 컴퓨터 판독가능 매체.
  17. 적어도 하나의 프로세서에 의해 실행되는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 매체로서, 상기 컴퓨터 프로그램은,
    중심 위치 둘레에 특정의 순서로 방사상으로 배열된 일련의 메뉴 항목을 포함하는 방사형 메뉴를 디스플레이 영역의 제1 위치에 디스플레이하고 - 각각의 메뉴 항목은 특정의 우선순위를 가지고, 상기 디스플레이된 메뉴 항목들 사이의 각도 거리 및 상기 디스플레이된 메뉴 항목들의 상기 특정의 순서는 상기 우선순위에 기초함 -;
    방사형 서브메뉴를 여는 특정의 메뉴 항목의 제스처 선택을 수신하고;
    상기 제스처 선택 후에, 상기 디스플레이 영역 내의 제2 위치를 식별하는 비-제스처 입력(non-gestural input)을 수신하고;
    상기 방사형 서브메뉴를 식별된 상기 제2 위치 둘레에 방사상으로 배열된 일련의 항목으로서 디스플레이하기 위한 명령어 집합을 포함하는 컴퓨터 판독가능 매체.
  18. 제17항에 있어서, 상기 제스처 선택은 사용자 입력을 특정 각도로 빠르게 이동시키는 것을 포함하는 컴퓨터 판독가능 매체.
  19. 제17항에 있어서, 상기 비-제스처 입력은 터치스크린 상에서의 터치 입력 또는 커서 제어기의 선택인, 컴퓨터 판독가능 매체.
  20. 제17항에 있어서, 상기 컴퓨터 프로그램은 상기 제스처 선택을 수신한 이후 상기 비-제스처 입력을 수신하기 전에, 상기 방사형 메뉴의 중심 위치 둘레에 상기 방사형 서브메뉴를 디스플레이하기 위한 명령어 집합을 더 포함하는 컴퓨터 판독가능 매체.
  21. 적어도 하나의 프로세서에 의해 실행되는 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 저장 매체로서, 상기 컴퓨터 프로그램은 그래픽 사용자 인터페이스(GUI)를 포함하고, 상기 GUI는,
    디스플레이 영역; 및
    복수의 선택가능 메뉴 항목을 포함하는 방사형 메뉴 - 각각의 메뉴 항목은 특정의 우선순위를 가지며, 상기 방사형 메뉴는 (i) 상기 디스플레이 영역에 디스플레이되고 (ii) 상기 선택가능 메뉴 항목의 선택을 수신함 - 를 포함하고, 상기 메뉴 항목이 중심 위치로부터 특정의 거리에 특정의 순서로 배열되는 일련의 개별 아이콘들로서 상기 방사형 메뉴에 디스플레이되고, 상기 디스플레이된 아이콘들 사이의 각도 거리와 상기 디스플레이된 아이콘들의 상기 특정의 순서가 상기 우선순위에 기초하는 컴퓨터 판독가능 저장 매체.
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
KR1020117028354A 2009-05-29 2010-05-19 방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체 KR101366445B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/475,470 US8549432B2 (en) 2009-05-29 2009-05-29 Radial menus
US12/475,470 2009-05-29
PCT/US2010/035472 WO2010138360A1 (en) 2009-05-29 2010-05-19 Radial menus

Publications (2)

Publication Number Publication Date
KR20120025487A KR20120025487A (ko) 2012-03-15
KR101366445B1 true KR101366445B1 (ko) 2014-03-14

Family

ID=42542976

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117028354A KR101366445B1 (ko) 2009-05-29 2010-05-19 방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체

Country Status (6)

Country Link
US (2) US8549432B2 (ko)
EP (1) EP2435900A1 (ko)
KR (1) KR101366445B1 (ko)
CN (2) CN102449588A (ko)
AU (1) AU2010254344B2 (ko)
WO (1) WO2010138360A1 (ko)

Families Citing this family (311)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8018440B2 (en) 2005-12-30 2011-09-13 Microsoft Corporation Unintentional touch rejection
US9378571B1 (en) * 2007-05-29 2016-06-28 Google Inc. Browsing large geocoded datasets using nested shapes
US8594740B2 (en) 2008-06-11 2013-11-26 Pantech Co., Ltd. Mobile communication terminal and data input method
US8514251B2 (en) * 2008-06-23 2013-08-20 Qualcomm Incorporated Enhanced character input using recognized gestures
US8245156B2 (en) * 2008-06-28 2012-08-14 Apple Inc. Radial menu selection
US8826181B2 (en) * 2008-06-28 2014-09-02 Apple Inc. Moving radial menus
CN101661367A (zh) * 2008-08-25 2010-03-03 扬智科技股份有限公司 菜单快捷方式的生成方法及使用者接口装置
US20100192102A1 (en) * 2009-01-29 2010-07-29 International Business Machines Corporation Displaying radial menus near edges of a display area
US8549432B2 (en) 2009-05-29 2013-10-01 Apple Inc. Radial menus
US8429530B2 (en) 2009-06-11 2013-04-23 Apple Inc. User interface for media playback
US8281244B2 (en) 2009-06-11 2012-10-02 Apple Inc. User interface for media playback
JP5402322B2 (ja) * 2009-07-02 2014-01-29 ソニー株式会社 情報処理装置および情報処理方法
JP5792424B2 (ja) * 2009-07-03 2015-10-14 ソニー株式会社 地図情報表示装置、地図情報表示方法およびプログラム
JP2011022842A (ja) * 2009-07-16 2011-02-03 Sony Corp 表示装置、表示方法及びプログラム
US20120169771A1 (en) * 2009-07-23 2012-07-05 Nec Corporation Information presenting system, information presenting method, and storage medium
US9513403B2 (en) * 2009-07-27 2016-12-06 Peck Labs, Inc Methods and systems for displaying customized icons
US9152317B2 (en) * 2009-08-14 2015-10-06 Microsoft Technology Licensing, Llc Manipulation of graphical elements via gestures
JP5607726B2 (ja) * 2009-08-21 2014-10-15 トムソン ライセンシング ユーザ・インタフェース画面でパラメータを調整する方法、装置及びプログラム
US8146012B2 (en) * 2009-09-04 2012-03-27 Hewlett-Packard Development Company, L.P. Method and system for navigating web sites
US9424444B2 (en) 2009-10-14 2016-08-23 At&T Mobility Ii Llc Systems, apparatus, methods and computer-readable storage media for facilitating integrated messaging, contacts and social media for a selected entity
US8924893B2 (en) 2009-10-14 2014-12-30 At&T Mobility Ii Llc Locking and unlocking of an electronic device using a sloped lock track
CA2680602C (en) * 2009-10-19 2011-07-26 Ibm Canada Limited - Ibm Canada Limitee System and method for generating and displaying hybrid context menus
US20120063367A1 (en) * 2009-12-22 2012-03-15 Waldeck Technology, Llc Crowd and profile based communication addresses
US8261213B2 (en) 2010-01-28 2012-09-04 Microsoft Corporation Brush, carbon-copy, and fill gestures
US9411504B2 (en) 2010-01-28 2016-08-09 Microsoft Technology Licensing, Llc Copy and staple gestures
US9519356B2 (en) 2010-02-04 2016-12-13 Microsoft Technology Licensing, Llc Link gestures
WO2011099951A1 (en) * 2010-02-09 2011-08-18 Echostar Ukraine, L.L.C. Flower look interface
CN102859520A (zh) * 2010-02-10 2013-01-02 蒂基实验室股份公司 利用可共享用户界面组织信息的方法和系统
US9310994B2 (en) * 2010-02-19 2016-04-12 Microsoft Technology Licensing, Llc Use of bezel as an input mechanism
US9367205B2 (en) 2010-02-19 2016-06-14 Microsoft Technolgoy Licensing, Llc Radial menus with bezel gestures
US8799827B2 (en) 2010-02-19 2014-08-05 Microsoft Corporation Page manipulations using on and off-screen gestures
US9274682B2 (en) 2010-02-19 2016-03-01 Microsoft Technology Licensing, Llc Off-screen gestures to create on-screen input
US9965165B2 (en) 2010-02-19 2018-05-08 Microsoft Technology Licensing, Llc Multi-finger gestures
US9075522B2 (en) 2010-02-25 2015-07-07 Microsoft Technology Licensing, Llc Multi-screen bookmark hold gesture
US9454304B2 (en) 2010-02-25 2016-09-27 Microsoft Technology Licensing, Llc Multi-screen dual tap gesture
US8751970B2 (en) 2010-02-25 2014-06-10 Microsoft Corporation Multi-screen synchronous slide gesture
US8539353B2 (en) * 2010-03-30 2013-09-17 Cisco Technology, Inc. Tabs for managing content
US9268478B2 (en) * 2010-03-31 2016-02-23 Honeywell International Inc. Touch screen system for use with a commanded system requiring high integrity
US9050534B2 (en) 2010-04-23 2015-06-09 Ganz Achievements for a virtual world game
US20110271230A1 (en) * 2010-04-30 2011-11-03 Talkwheel.com, Inc. Visualization and navigation system for complex data and discussion platform
JP2011248768A (ja) * 2010-05-28 2011-12-08 Sony Corp 情報処理装置、情報処理システム及びプログラム
KR101780020B1 (ko) * 2010-09-02 2017-09-19 삼성전자주식회사 인터페이스 방법 및 장치
US9710154B2 (en) 2010-09-03 2017-07-18 Microsoft Technology Licensing, Llc Dynamic gesture parameters
US9003298B2 (en) * 2010-09-21 2015-04-07 Microsoft Corporation Web page application controls
US9747270B2 (en) * 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US10284437B2 (en) 2010-09-30 2019-05-07 Efolder, Inc. Cloud-based virtual machines and offices
US8954544B2 (en) 2010-09-30 2015-02-10 Axcient, Inc. Cloud-based virtual machines and offices
US9235474B1 (en) 2011-02-17 2016-01-12 Axcient, Inc. Systems and methods for maintaining a virtual failover volume of a target computing system
US8589350B1 (en) 2012-04-02 2013-11-19 Axcient, Inc. Systems, methods, and media for synthesizing views of file system backups
US8924360B1 (en) 2010-09-30 2014-12-30 Axcient, Inc. Systems and methods for restoring a file
US9705730B1 (en) 2013-05-07 2017-07-11 Axcient, Inc. Cloud storage using Merkle trees
US20120092268A1 (en) * 2010-10-15 2012-04-19 Hon Hai Precision Industry Co., Ltd. Computer-implemented method for manipulating onscreen data
CN102467315A (zh) * 2010-10-29 2012-05-23 国际商业机器公司 控制具有触摸式信号输入装置的电子设备的方法和系统
GB2485218A (en) * 2010-11-05 2012-05-09 Promethean Ltd A method of navigating radial menu options
KR101932688B1 (ko) * 2010-11-29 2018-12-28 삼성전자주식회사 휴대기기 및 이에 적용되는 ui 모드 제공 방법
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US20120179998A1 (en) * 2011-01-12 2012-07-12 Nesladek Christopher D Touch screen user interfaces
EP2490113B1 (en) * 2011-02-15 2016-11-23 Lg Electronics Inc. Display device and method of controlling operation thereof
JP5977922B2 (ja) * 2011-02-24 2016-08-24 セイコーエプソン株式会社 情報処理装置および情報処理装置の制御方法、透過型頭部装着型表示装置
US8479110B2 (en) * 2011-03-20 2013-07-02 William J. Johnson System and method for summoning user interface objects
US9032331B2 (en) * 2011-03-29 2015-05-12 International Business Machines Corporation Visual widget search
US20120272144A1 (en) * 2011-04-20 2012-10-25 Microsoft Corporation Compact control menu for touch-enabled command execution
KR20130052751A (ko) * 2011-05-17 2013-05-23 삼성전자주식회사 단말기 및 그 단말기에서 아이콘 배열 방법
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US20120304131A1 (en) * 2011-05-27 2012-11-29 Jennifer Nan Edge gesture
US20120304132A1 (en) 2011-05-27 2012-11-29 Chaitanya Dev Sareen Switching back to a previously-interacted-with application
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
WO2012170589A1 (en) 2011-06-06 2012-12-13 Nfluence Media, Inc. Consumer driven advertising system
US9883326B2 (en) 2011-06-06 2018-01-30 autoGraph, Inc. Beacon based privacy centric network communication, sharing, relevancy tools and other tools
JP5811603B2 (ja) * 2011-06-07 2015-11-11 ソニー株式会社 情報処理端末および方法、プログラム、並びに記録媒体
US20130014053A1 (en) * 2011-07-07 2013-01-10 Microsoft Corporation Menu Gestures
US20130019201A1 (en) * 2011-07-11 2013-01-17 Microsoft Corporation Menu Configuration
US9202297B1 (en) * 2011-07-12 2015-12-01 Domo, Inc. Dynamic expansion of data visualizations
US9792017B1 (en) 2011-07-12 2017-10-17 Domo, Inc. Automatic creation of drill paths
US10001898B1 (en) 2011-07-12 2018-06-19 Domo, Inc. Automated provisioning of relational information for a summary data visualization
US9582187B2 (en) 2011-07-14 2017-02-28 Microsoft Technology Licensing, Llc Dynamic context based menus
US9026944B2 (en) * 2011-07-14 2015-05-05 Microsoft Technology Licensing, Llc Managing content through actions on context based menus
US9086794B2 (en) 2011-07-14 2015-07-21 Microsoft Technology Licensing, Llc Determining gestures on context based menus
US9746995B2 (en) 2011-07-14 2017-08-29 Microsoft Technology Licensing, Llc Launcher for context based menus
US20130024811A1 (en) * 2011-07-19 2013-01-24 Cbs Interactive, Inc. System and method for web page navigation
JP5790257B2 (ja) * 2011-07-29 2015-10-07 富士通株式会社 文字入力装置,文字入力プログラムおよび文字入力方法
US9417754B2 (en) 2011-08-05 2016-08-16 P4tents1, LLC User interface system, method, and computer program product
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
CN102331932A (zh) * 2011-09-08 2012-01-25 北京像素软件科技股份有限公司 一种菜单界面实现方法
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US20150113483A1 (en) * 2011-09-30 2015-04-23 Willem Morkel Van Der Westhuizen Method for Human-Computer Interaction on a Graphical User Interface (GUI)
JP5771585B2 (ja) * 2011-10-03 2015-09-02 京セラ株式会社 装置、方法、及びプログラム
DE102011116141A1 (de) * 2011-10-15 2013-04-18 Volkswagen Aktiengesellschaft Verfahren zum Anzeigen von Informationen in einemFahrzeug und Anzeigeeinrichtung für ein Fahrzeug
US9053083B2 (en) 2011-11-04 2015-06-09 Microsoft Technology Licensing, Llc Interaction between web gadgets and spreadsheets
EP2590066A3 (en) * 2011-11-04 2017-06-28 Acer Incorporated Electronic device and method of controlling the same
TWI442262B (zh) * 2011-11-04 2014-06-21 Acer Inc 電子裝置及控制電子裝置的方法
US20130117705A1 (en) * 2011-11-04 2013-05-09 Acer Incorporated Electronic Device and Method of Controlling the Same
JP5423772B2 (ja) * 2011-11-21 2014-02-19 コニカミノルタ株式会社 表示システム、表示システムの制御プログラム、および表示装置
US9135714B1 (en) * 2011-11-28 2015-09-15 Innovative Defense Technologies, LLC Method and system for integrating a graphical user interface capture for automated test and retest procedures
KR101888680B1 (ko) * 2011-12-06 2018-08-17 삼성전자 주식회사 디스플레이장치 및 그 제어방법
EP2788860A4 (en) * 2011-12-06 2016-07-06 Autograph Inc GUIDE WITH USER-FRIENDLY PROFILING AND TOOLS FOR ANALYSIS AND FAST INFORMATION DISPLAY
CN102591577A (zh) 2011-12-28 2012-07-18 华为技术有限公司 一种弧形菜单索引显示方法及相关装置
US9171099B2 (en) 2012-01-26 2015-10-27 Microsoft Technology Licensing, Llc System and method for providing calculation web services for online documents
JP5936183B2 (ja) * 2012-02-07 2016-06-15 オリンパス株式会社 撮影機器
US20130219340A1 (en) * 2012-02-21 2013-08-22 Sap Ag Navigation on a Portable Electronic Device
US9530272B2 (en) 2012-02-22 2016-12-27 Zotobi Management Ltd. System and method for displaying multiple activities
US9041727B2 (en) 2012-03-06 2015-05-26 Apple Inc. User interface tools for selectively applying effects to image
JP6047587B2 (ja) * 2012-03-06 2016-12-21 アップル インコーポレイテッド メディア編集アプリケーション用の扇形編出ユーザインタフェースコントロール
US9189876B2 (en) 2012-03-06 2015-11-17 Apple Inc. Fanning user interface controls for a media editing application
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
US9202433B2 (en) 2012-03-06 2015-12-01 Apple Inc. Multi operation slider
US9448692B1 (en) * 2012-03-12 2016-09-20 Path Mobile Inc Pte. Ltd. Graphical user interface for displaying menu options
USD726735S1 (en) 2012-03-30 2015-04-14 Sony Corporation Display screen with graphical user interface
GB2501145A (en) 2012-04-12 2013-10-16 Supercell Oy Rendering and modifying objects on a graphical user interface
US8954890B2 (en) * 2012-04-12 2015-02-10 Supercell Oy System, method and graphical user interface for controlling a game
US8814674B2 (en) 2012-05-24 2014-08-26 Supercell Oy Graphical user interface for a gaming system
US9851893B2 (en) * 2012-04-17 2017-12-26 Zotobi Management Ltd. System and method for providing a plurality of graphical user interfaces to a user
WO2013169843A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for manipulating framed graphical objects
CN104487930A (zh) 2012-05-09 2015-04-01 苹果公司 用于移动和放置用户界面对象的设备、方法和图形用户界面
WO2013169849A2 (en) 2012-05-09 2013-11-14 Industries Llc Yknots Device, method, and graphical user interface for displaying user interface objects corresponding to an application
WO2013169875A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for displaying content associated with a corresponding affordance
WO2013169854A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for providing feedback for changing activation states of a user interface object
EP2847657B1 (en) 2012-05-09 2016-08-10 Apple Inc. Device, method, and graphical user interface for displaying additional information in response to a user contact
WO2013169845A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for scrolling nested regions
WO2013169842A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for selecting object within a group of objects
JP6031186B2 (ja) 2012-05-09 2016-11-24 アップル インコーポレイテッド ユーザインタフェースオブジェクトを選択するためのデバイス、方法及びグラフィカルユーザインタフェース
WO2013169865A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for moving a user interface object based on an intensity of a press input
WO2013169851A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for facilitating user interaction with controls in a user interface
AU2013259630B2 (en) 2012-05-09 2016-07-07 Apple Inc. Device, method, and graphical user interface for transitioning between display states in response to gesture
JP6082458B2 (ja) * 2012-05-09 2017-02-15 アップル インコーポレイテッド ユーザインタフェース内で実行される動作の触知フィードバックを提供するデバイス、方法、及びグラフィカルユーザインタフェース
JP5857872B2 (ja) * 2012-05-09 2016-02-10 コニカミノルタ株式会社 データ管理プログラム、データ管理装置、データ管理方法、および記録媒体
US9927952B2 (en) * 2012-05-23 2018-03-27 Microsoft Technology Licensing, Llc Utilizing a ribbon to access an application user interface
US8843858B2 (en) * 2012-05-31 2014-09-23 Microsoft Corporation Optimization schemes for controlling user interfaces through gesture or touch
JP6253222B2 (ja) * 2012-07-09 2017-12-27 キヤノン株式会社 表示制御装置、表示制御方法、及びプログラム
CN102841751A (zh) * 2012-07-24 2012-12-26 天津三星通信技术研究有限公司 菜单操作方法及应用该方法的便携式终端
CN102855062B (zh) * 2012-08-02 2018-04-10 中兴通讯股份有限公司 屏幕解锁方法、装置及终端
US9658733B2 (en) * 2012-08-03 2017-05-23 Stickshift, LLC User interface with selection patterns
US8910082B2 (en) * 2012-08-10 2014-12-09 Modiface Inc. Method and system for modification of digital images through rotational cascading-effect interface
WO2014028060A1 (en) * 2012-08-15 2014-02-20 Brian Roundtree Tools for interest-graph driven personalization
AU2012327244B2 (en) * 2012-09-11 2015-05-07 Oath Inc. Graphical user interface for presenting a menu of options
US9261989B2 (en) 2012-09-13 2016-02-16 Google Inc. Interacting with radial menus for touchscreens
US9195368B2 (en) * 2012-09-13 2015-11-24 Google Inc. Providing radial menus with touchscreens
US20140092100A1 (en) * 2012-10-02 2014-04-03 Afolio Inc. Dial Menu
US9785647B1 (en) 2012-10-02 2017-10-10 Axcient, Inc. File system virtualization
US9880630B2 (en) * 2012-10-03 2018-01-30 Rakuten, Inc. User interface device, user interface method, program, and computer-readable information storage medium
JP5897725B2 (ja) 2012-10-03 2016-03-30 楽天株式会社 ユーザインタフェース装置、ユーザインタフェース方法、プログラム及びコンピュータ可読情報記憶媒体
KR102083937B1 (ko) * 2012-10-10 2020-03-04 삼성전자주식회사 멀티 디스플레이 장치 및 그 툴 제공 방법
CN102929545B (zh) * 2012-10-22 2016-06-08 东莞宇龙通信科技有限公司 终端和终端控制方法
US9852140B1 (en) 2012-11-07 2017-12-26 Axcient, Inc. Efficient file replication
US10540515B2 (en) 2012-11-09 2020-01-21 autoGraph, Inc. Consumer and brand owner data management tools and consumer privacy tools
US9582122B2 (en) 2012-11-12 2017-02-28 Microsoft Technology Licensing, Llc Touch-sensitive bezel techniques
JP5929719B2 (ja) * 2012-11-12 2016-06-08 ソニー株式会社 情報処理装置、通信システムおよび情報処理方法
USD732579S1 (en) * 2012-11-23 2015-06-23 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
US9235342B2 (en) * 2012-11-28 2016-01-12 International Business Machines Corporation Selective sharing of displayed content in a view presented on a touchscreen of a processing system
US20140152586A1 (en) * 2012-11-30 2014-06-05 Kabushiki Kaisha Toshiba Electronic apparatus, display control method and storage medium
EP3617843A1 (en) * 2012-12-10 2020-03-04 Samsung Electronics Co., Ltd. Mobile device, control method thereof, and ui display method
AT13868U1 (de) * 2012-12-12 2014-10-15 Bachmann Gmbh Anzeige- und Eingabevorrichtung zur Visualisierung von Informationen und Zuständen
US20140172751A1 (en) * 2012-12-15 2014-06-19 Greenwood Research, Llc Method, system and software for social-financial investment risk avoidance, opportunity identification, and data visualization
CN105190508A (zh) * 2012-12-19 2015-12-23 瑞艾利缇盖特(Pty)有限公司 图形用户界面中的导航速度和获取容易度之间的权衡的用户控制
US20140181720A1 (en) * 2012-12-20 2014-06-26 Htc Corporation Menu management methods and systems
KR101958582B1 (ko) 2012-12-29 2019-07-04 애플 인크. 터치 입력에서 디스플레이 출력으로의 관계들 사이에서 전환하기 위한 디바이스, 방법, 및 그래픽 사용자 인터페이스
AU2013368441B2 (en) 2012-12-29 2016-04-14 Apple Inc. Device, method, and graphical user interface for forgoing generation of tactile output for a multi-contact gesture
CN107832003B (zh) 2012-12-29 2021-01-22 苹果公司 用于放大内容的方法和设备、电子设备和介质
WO2014105277A2 (en) 2012-12-29 2014-07-03 Yknots Industries Llc Device, method, and graphical user interface for moving a cursor according to a change in an appearance of a control icon with simulated three-dimensional characteristics
KR101742808B1 (ko) 2012-12-29 2017-06-01 애플 인크. 사용자 인터페이스 계층을 내비게이션하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
WO2014105279A1 (en) 2012-12-29 2014-07-03 Yknots Industries Llc Device, method, and graphical user interface for switching between user interfaces
US9141259B2 (en) * 2013-01-21 2015-09-22 International Business Machines Corporation Pressure navigation on a touch sensitive user interface
WO2014116225A1 (en) * 2013-01-25 2014-07-31 Hewlett-Packard Development Company, L.P. User interface application launcher and method thereof
USD741905S1 (en) * 2013-02-23 2015-10-27 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
US20140250402A1 (en) * 2013-03-04 2014-09-04 Microsoft Corporation Efficient input mechanism for a computing device
US9397907B1 (en) 2013-03-07 2016-07-19 Axcient, Inc. Protection status determinations for computing devices
US9292153B1 (en) * 2013-03-07 2016-03-22 Axcient, Inc. Systems and methods for providing efficient and focused visualization of data
US20140258828A1 (en) * 2013-03-11 2014-09-11 Brent Lymer Pick-and-place webform autofill
WO2014139129A1 (en) * 2013-03-14 2014-09-18 Hewlett-Packard Development Company, L.P. Operation panel for electronic device
US20140281991A1 (en) * 2013-03-18 2014-09-18 Avermedia Technologies, Inc. User interface, control system, and operation method of control system
CN104077115A (zh) * 2013-03-27 2014-10-01 苏州精易会信息技术有限公司 一种分类导航的下拉菜单设计实现方法
CN104077036B (zh) * 2013-03-27 2017-11-10 苏州精易会信息技术有限公司 一种分类导航的下拉菜单设计实现方法
US11422695B2 (en) * 2013-03-27 2022-08-23 Texas Instruments Incorporated Radial based user interface on touch sensitive screen
EP2979257A1 (en) * 2013-03-27 2016-02-03 RealityGate (Pty) Ltd A continuous + discrete control mechanism coordinated with decoupled object display
US8812995B1 (en) 2013-04-10 2014-08-19 Google Inc. System and method for disambiguating item selection
KR102148809B1 (ko) * 2013-04-22 2020-08-27 삼성전자주식회사 단축 아이콘 윈도우 표시 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
CN103279278B (zh) * 2013-05-16 2016-03-09 东莞宇龙通信科技有限公司 一种在终端界面中获取图标详细信息的方法和装置
WO2014186771A1 (en) 2013-05-16 2014-11-20 Nfluence Media, Inc. Privacy sensitive persona management tools
WO2014189632A1 (en) * 2013-05-20 2014-11-27 Citrix Systems, Inc. Providing enhanced user interfaces
KR20140138424A (ko) 2013-05-23 2014-12-04 삼성전자주식회사 제스쳐를 이용한 사용자 인터페이스 방법 및 장치
USD737833S1 (en) * 2013-06-09 2015-09-01 Apple Inc. Display screen or portion thereof with graphical user interface
US20140372856A1 (en) 2013-06-14 2014-12-18 Microsoft Corporation Natural Quick Functions Gestures
US10664652B2 (en) 2013-06-15 2020-05-26 Microsoft Technology Licensing, Llc Seamless grid and canvas integration in a spreadsheet application
US9292889B2 (en) 2013-06-18 2016-03-22 Zume Pizza, Inc. Systems and methods of preparing food products
US20140380233A1 (en) * 2013-06-24 2014-12-25 Zeta Project Swiss GmbH User Interface With Sliding Cursor for Multimodal Communication Framework
WO2015005059A1 (ja) 2013-07-09 2015-01-15 ソニー株式会社 情報処理装置、情報処理方法及びコンピュータプログラム
AU2014290148A1 (en) * 2013-07-16 2016-02-11 Pinterest, Inc. Object based contextual menu controls
JP6153007B2 (ja) * 2013-07-19 2017-06-28 株式会社コナミデジタルエンタテインメント 操作システム、操作制御方法、操作制御プログラム
JP6202942B2 (ja) * 2013-08-26 2017-09-27 キヤノン株式会社 情報処理装置とその制御方法、コンピュータプログラム、記憶媒体
CA154153S (en) * 2013-09-03 2016-04-04 Samsung Electronics Co Ltd Handheld electronic device with graphical user interface
US20150089431A1 (en) * 2013-09-24 2015-03-26 Xiaomi Inc. Method and terminal for displaying virtual keyboard and storage medium
US20150121314A1 (en) * 2013-10-24 2015-04-30 Jens Bombolowsky Two-finger gestures
KR20150056726A (ko) * 2013-11-15 2015-05-27 삼성전자주식회사 휴대용 단말의 기능을 표시 및 실행하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
CN103699294B (zh) * 2013-12-09 2017-12-12 深圳Tcl新技术有限公司 多级菜单的展开方法及装置
US9507520B2 (en) * 2013-12-16 2016-11-29 Microsoft Technology Licensing, Llc Touch-based reorganization of page element
JP2015118598A (ja) * 2013-12-19 2015-06-25 船井電機株式会社 選択装置
JP5977768B2 (ja) * 2014-01-14 2016-08-24 シャープ株式会社 画像表示装置及びその操作方法
US10168864B2 (en) * 2014-01-24 2019-01-01 Citrix Systems, Inc. Gesture menu
US9594471B1 (en) * 2014-01-31 2017-03-14 Sprint Communications Company L.P. System and method for inserting additional icon content into a display screen
CN103838461A (zh) * 2014-02-14 2014-06-04 广州市久邦数码科技有限公司 一种图标菜单弹放的实现方法及系统
US9477337B2 (en) 2014-03-14 2016-10-25 Microsoft Technology Licensing, Llc Conductive trace routing for display and bezel sensors
JP6268526B2 (ja) * 2014-03-17 2018-01-31 オムロン株式会社 マルチメディア装置、マルチメディア装置の制御方法、及びマルチメディア装置の制御プログラム
US20150277678A1 (en) * 2014-03-26 2015-10-01 Kobo Incorporated Information presentation techniques for digital content
WO2015149032A1 (en) 2014-03-28 2015-10-01 Brian Roundtree Beacon based privacy centric network communication, sharing, relevancy tools and other tools
KR102257817B1 (ko) * 2014-04-11 2021-05-28 삼성전자 주식회사 전자장치에서 숫자의 입력을 제어하는 방법 및 장치
US9716680B2 (en) 2014-04-25 2017-07-25 Jordan H. Taler Expandable graphical icon for response to electronic text transmission
USD759080S1 (en) * 2014-05-01 2016-06-14 Beijing Qihoo Technology Co. Ltd Display screen with a graphical user interface
KR102282498B1 (ko) * 2014-05-19 2021-07-27 삼성전자주식회사 디스플레이를 이용한 입력 처리 방법 및 장치
US10691324B2 (en) * 2014-06-03 2020-06-23 Flow Labs, Inc. Dynamically populating a display and entering a selection interaction mode based on movement of a pointer along a navigation path
US10042547B2 (en) * 2014-06-17 2018-08-07 Vmware, Inc. User interface control based on pinch gestures
US10261659B2 (en) * 2014-06-25 2019-04-16 Oracle International Corporation Orbit visualization for displaying hierarchical data
US20160012160A1 (en) * 2014-07-11 2016-01-14 Graphisoft Building model user interface and method of use
DE202015006141U1 (de) * 2014-09-02 2015-12-14 Apple Inc. Elektronische Touch-Kommunikation
KR20160029509A (ko) * 2014-09-05 2016-03-15 삼성전자주식회사 전자 장치 및 전자 장치의 어플리케이션 실행 방법
US9940016B2 (en) 2014-09-13 2018-04-10 Microsoft Technology Licensing, Llc Disambiguation of keyboard input
CN104267889B (zh) * 2014-09-15 2019-03-29 联想(北京)有限公司 一种控制方法和电子设备
KR20160043588A (ko) * 2014-10-13 2016-04-22 삼성전자주식회사 컨텐츠 서비스 제공 방법 및 장치
WO2016086400A1 (en) * 2014-12-05 2016-06-09 Hewlett-Packard Development Company, L.P. Menu display control
CN104536766B (zh) * 2015-01-09 2018-01-26 京东方科技集团股份有限公司 一种电子设备的控制方法及电子设备
US10048839B2 (en) * 2015-01-22 2018-08-14 Flow Labs, Inc. Hierarchy navigation in a user interface
US9398462B1 (en) 2015-03-04 2016-07-19 Sprint Communications Company L.P. Network access tiered based on application launcher installation
US9645732B2 (en) 2015-03-08 2017-05-09 Apple Inc. Devices, methods, and graphical user interfaces for displaying and using menus
US10095396B2 (en) 2015-03-08 2018-10-09 Apple Inc. Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object
US9990107B2 (en) 2015-03-08 2018-06-05 Apple Inc. Devices, methods, and graphical user interfaces for displaying and using menus
US10048757B2 (en) 2015-03-08 2018-08-14 Apple Inc. Devices and methods for controlling media presentation
US9632664B2 (en) 2015-03-08 2017-04-25 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback
US9785305B2 (en) 2015-03-19 2017-10-10 Apple Inc. Touch input cursor manipulation
US9639184B2 (en) 2015-03-19 2017-05-02 Apple Inc. Touch input cursor manipulation
US10067653B2 (en) 2015-04-01 2018-09-04 Apple Inc. Devices and methods for processing touch inputs based on their intensities
US20170045981A1 (en) 2015-08-10 2017-02-16 Apple Inc. Devices and Methods for Processing Touch Inputs Based on Their Intensities
US9980304B2 (en) 2015-04-03 2018-05-22 Google Llc Adaptive on-demand tethering
EP3958557A1 (en) 2015-04-23 2022-02-23 Apple Inc. Digital viewfinder user interface for multiple cameras
DE102015005166B4 (de) 2015-04-23 2019-01-10 Eismann Innovations GmbH Fahrzeug mit einer Einrichtung zur Bearbeitung von Nahrungsmitteln
US10346030B2 (en) 2015-06-07 2019-07-09 Apple Inc. Devices and methods for navigating between user interfaces
US10200598B2 (en) 2015-06-07 2019-02-05 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
US9891811B2 (en) 2015-06-07 2018-02-13 Apple Inc. Devices and methods for navigating between user interfaces
US9830048B2 (en) 2015-06-07 2017-11-28 Apple Inc. Devices and methods for processing touch inputs with instructions in a web page
US9860451B2 (en) 2015-06-07 2018-01-02 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
US9674426B2 (en) 2015-06-07 2017-06-06 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
US10503264B1 (en) 2015-06-16 2019-12-10 Snap Inc. Radial gesture navigation
US10474315B2 (en) * 2015-06-26 2019-11-12 The Boeing Company Cursor enhancement effects
US10430073B2 (en) 2015-07-17 2019-10-01 Crown Equipment Corporation Processing device having a graphical user interface for industrial vehicle
US10235035B2 (en) 2015-08-10 2019-03-19 Apple Inc. Devices, methods, and graphical user interfaces for content navigation and manipulation
US10416800B2 (en) 2015-08-10 2019-09-17 Apple Inc. Devices, methods, and graphical user interfaces for adjusting user interface objects
US10248308B2 (en) 2015-08-10 2019-04-02 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interfaces with physical gestures
US9880735B2 (en) 2015-08-10 2018-01-30 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback
US20170060100A1 (en) * 2015-08-26 2017-03-02 Asustek Computer Inc. Smart watch
JP5862994B2 (ja) * 2015-09-24 2016-02-16 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
US20170090606A1 (en) * 2015-09-30 2017-03-30 Polycom, Inc. Multi-finger touch
US10503360B2 (en) * 2015-11-30 2019-12-10 Unisys Corporation System and method for adaptive control and annotation interface
USD799513S1 (en) * 2016-02-17 2017-10-10 Veritas Technologies Llc Display screen with animated graphical user interface
USD866249S1 (en) 2016-03-22 2019-11-12 Zume, Inc. Food container cover
JP6670417B2 (ja) 2016-03-22 2020-03-18 ズーム,インコーポレイテッド 食品を輸送及び貯蔵するための容器
USD893247S1 (en) 2016-03-22 2020-08-18 Zume, Inc. Food container base
USD900558S1 (en) 2016-03-22 2020-11-03 Zume, Inc. Food container
US10530731B1 (en) 2016-03-28 2020-01-07 Snap Inc. Systems and methods for chat with audio and video elements
CN107276875B (zh) * 2016-04-06 2021-12-24 福州百益百利自动化科技有限公司 基于位置的红包发放方法、系统及移动终端
CN105930147B (zh) * 2016-04-13 2020-09-08 北京小米移动软件有限公司 应用功能的启动方法及装置
US9716825B1 (en) 2016-06-12 2017-07-25 Apple Inc. User interface for camera effects
CN107506115A (zh) 2016-06-14 2017-12-22 阿里巴巴集团控股有限公司 一种菜单的显示处理方法、装置及系统
EP3267370A1 (en) * 2016-07-04 2018-01-10 Siemens Aktiengesellschaft Method for configuring a mom data warehouse and providing a ui to the mom data warehouse
US9871905B1 (en) 2016-08-09 2018-01-16 Sprint Communications Company L.P. Systems and methods for customized delivery of virtually installed applications
USD861422S1 (en) 2016-08-18 2019-10-01 Zume, Inc. Food container base
USD828161S1 (en) 2016-08-18 2018-09-11 Zume, Inc. Food container cover
USD806575S1 (en) 2016-08-18 2018-01-02 Zume Pizza, Inc. Food container
US10503363B2 (en) * 2016-11-02 2019-12-10 Zume, Inc. Lazy Susan menu graphical user interface
JP2018082243A (ja) * 2016-11-14 2018-05-24 京セラ株式会社 電子機器、制御方法、およびプログラム
EP3545398B1 (en) 2016-11-22 2023-01-04 Crown Equipment Corporation User interface device for industrial vehicle
JP6825901B2 (ja) * 2016-12-22 2021-02-03 株式会社シマノ 自転車用表示装置
US10514833B2 (en) * 2016-12-30 2019-12-24 Google Llc Contextual paste target prediction
US11416900B1 (en) * 2017-02-24 2022-08-16 Eugene E. Haba, Jr. Dynamically generated items for user generated graphic user storytelling interface
AU2018298047A1 (en) 2017-07-07 2020-01-30 Zume, Inc. Container for transport and storage of food products
US20200134952A1 (en) 2017-07-11 2020-04-30 Zume, Inc 250 Polaris Multi-modal distribution systems and methods using vending kiosks and autonomous delivery vehicles
WO2019014027A1 (en) 2017-07-14 2019-01-17 Zume Pizza, Inc. SYSTEMS AND METHODS BASED ON A SALES KIOSK FOR SELLING AND / OR PREPARING PRODUCTS, FOR EXAMPLE PREPARED FOODS
US11237699B2 (en) * 2017-08-18 2022-02-01 Microsoft Technology Licensing, Llc Proximal menu generation
US11301124B2 (en) 2017-08-18 2022-04-12 Microsoft Technology Licensing, Llc User interface modification using preview panel
JP6915492B2 (ja) * 2017-10-11 2021-08-04 トヨタ自動車株式会社 表示制御装置
US11640226B2 (en) * 2017-11-10 2023-05-02 Swirl Design (Pty) Ltd Displaying information objects based on elliptical frames on a track between inner and outer elliptical borders
CN107886578A (zh) * 2017-11-24 2018-04-06 石化盈科信息技术有限责任公司 一种三维数字化平台按钮环形弹出方法及系统
US20190208279A1 (en) * 2017-12-29 2019-07-04 Facebook, Inc. Connected TV Comments and Reactions
USD900136S1 (en) * 2018-02-12 2020-10-27 Acordo Certo—Reparacao E Manutencao Automovel, LTA Display screen or portion thereof with graphical user interface
USD900862S1 (en) 2018-03-20 2020-11-03 Zume Pizza, Inc. Display screen with graphical user interface
US11106355B2 (en) * 2018-04-20 2021-08-31 Opera Norway As Drag menu
CN108854069B (zh) * 2018-05-29 2020-02-07 腾讯科技(深圳)有限公司 音源确定方法和装置、存储介质及电子装置
USD884486S1 (en) 2018-07-12 2020-05-19 Zume, Inc. Food container
US10936163B2 (en) * 2018-07-17 2021-03-02 Methodical Mind, Llc. Graphical user interface system
US10891017B1 (en) 2018-08-25 2021-01-12 Sprint Communications Company L.P. Rotating icon selection and interaction software development kit (SDK)
US11770601B2 (en) 2019-05-06 2023-09-26 Apple Inc. User interfaces for capturing and managing visual media
US10674072B1 (en) 2019-05-06 2020-06-02 Apple Inc. User interfaces for capturing and managing visual media
US11204682B1 (en) * 2018-10-29 2021-12-21 State Farm Mutual Automobile Insurance Company Dynamic data-driven consolidation of user interface interactions requesting roadside assistance
US11157152B2 (en) * 2018-11-05 2021-10-26 Sap Se Interaction mechanisms for pointer control
BR112021009093A2 (pt) * 2018-11-14 2021-08-10 Wix.Com Ltd. sistema de desenvolvimento de website, e método para um sistema de desenvolvimento de website
CN111225106B (zh) * 2018-11-27 2022-06-21 中兴通讯股份有限公司 控件操作方法及电子装置
WO2020150280A1 (en) 2019-01-16 2020-07-23 Zume, Inc. Cover and drainage for a food container
USD918712S1 (en) 2019-02-11 2021-05-11 Zume, Inc. Food container
CN111666019B (zh) * 2019-03-05 2022-01-25 台达电子工业股份有限公司 电子装置及选取目标物件的预测方法
US11706521B2 (en) 2019-05-06 2023-07-18 Apple Inc. User interfaces for capturing and managing visual media
USD992963S1 (en) 2019-08-15 2023-07-25 Zume, Inc. Lid for a food container
TWI728446B (zh) * 2019-08-28 2021-05-21 華碩電腦股份有限公司 使用者介面之控制方法及電子裝置
US11799736B2 (en) * 2019-12-27 2023-10-24 Digital Guardian Llc Systems and methods for investigating potential incidents across entities in networked environments
KR20220143649A (ko) 2019-12-27 2022-10-25 메쏘디컬 마인드, 엘엘씨. 그래픽 사용자 인터페이스 시스템
US11762530B2 (en) 2020-02-05 2023-09-19 Legacy Productions, Inc. Interface for radial selection of time-based events
US20210303473A1 (en) * 2020-03-27 2021-09-30 Datto, Inc. Method and system of copying data to a clipboard
CN111596981A (zh) * 2020-04-16 2020-08-28 西安震有信通科技有限公司 基于圆盘菜单技术的调度菜单实现处理方法及装置
US20220019340A1 (en) * 2020-07-15 2022-01-20 yuchen du Social knowledge graph for collective learning
US11797173B2 (en) * 2020-12-28 2023-10-24 Microsoft Technology Licensing, Llc System and method of providing digital ink optimized user interface elements
USD1018582S1 (en) * 2021-05-10 2024-03-19 Beijing Zitiao Network Technology Co., Ltd. Display screen or portion thereof with a graphical user interface
ZA202206343B (en) * 2021-06-11 2023-12-20 Swirl Design Pty Ltd Selecting a desired item from a set of items
CN114115645B (zh) * 2021-11-29 2023-11-07 平安证券股份有限公司 多级菜单显示方法、装置、计算机设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070006477A (ko) * 2005-07-08 2007-01-11 삼성전자주식회사 가변적 메뉴 배열 방법 및 이를 이용한 디스플레이 장치
US20070180392A1 (en) * 2006-01-27 2007-08-02 Microsoft Corporation Area frequency radial menus

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US569708A (en) * 1896-10-20 Acetylene gas
EP0498082B1 (en) * 1991-02-01 1998-05-06 Koninklijke Philips Electronics N.V. Apparatus for the interactive handling of objects
WO1993022758A1 (en) * 1992-05-07 1993-11-11 Kensington Microware Limited Method and apparatus for cursor positioning
US5956030A (en) * 1993-06-11 1999-09-21 Apple Computer, Inc. Computer system with graphical user interface including windows having an identifier within a control region on the display
US5583946A (en) * 1993-09-30 1996-12-10 Apple Computer, Inc. Method and apparatus for recognizing gestures on a computer system
CA2140164A1 (en) * 1994-01-27 1995-07-28 Kenneth R. Robertson System and method for computer cursor control
US5564004A (en) 1994-04-13 1996-10-08 International Business Machines Corporation Method and system for facilitating the selection of icons
WO1996009579A1 (en) * 1994-09-22 1996-03-28 Izak Van Cruyningen Popup menus with directional gestures
US5916178A (en) 1995-03-30 1999-06-29 Medtronic, Inc. Steerable high support guidewire with thin wall nitinol tube
US5721853A (en) * 1995-04-28 1998-02-24 Ast Research, Inc. Spot graphic display element with open locking and periodic animation
US5689667A (en) * 1995-06-06 1997-11-18 Silicon Graphics, Inc. Methods and system of controlling menus with radial and linear portions
US5745717A (en) * 1995-06-07 1998-04-28 Vayda; Mark Graphical menu providing simultaneous multiple command selection
US5999895A (en) * 1995-07-24 1999-12-07 Forest; Donald K. Sound operated menu method and apparatus
US5883625A (en) 1996-04-22 1999-03-16 Ast Research, Inc. Arrangement system for object placement on windows
US5969708A (en) 1996-10-15 1999-10-19 Trimble Navigation Limited Time dependent cursor tool
US6583797B1 (en) * 1997-01-21 2003-06-24 International Business Machines Corporation Menu management mechanism that displays menu items based on multiple heuristic factors
US6028600A (en) * 1997-06-02 2000-02-22 Sony Corporation Rotary menu wheel interface
JP3511462B2 (ja) * 1998-01-29 2004-03-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 操作画像表示装置およびその方法
DE19910478C2 (de) * 1998-03-12 2002-02-28 Tokyo Electron Ltd Substrattransportverfahren und Substratbearbeitungssystem
FR2776415A1 (fr) 1998-03-20 1999-09-24 Philips Consumer Communication Appareil electronique comportant un ecran et procede pour afficher des graphismes
US6448987B1 (en) * 1998-04-03 2002-09-10 Intertainer, Inc. Graphic user interface for a digital content delivery system using circular menus
US6219056B1 (en) * 1998-06-05 2001-04-17 Autodesk, Inc. Shape objects having authorable behaviors and appearances
US6549219B2 (en) 1999-04-09 2003-04-15 International Business Machines Corporation Pie menu graphical user interface
US7286115B2 (en) * 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
AU2002226886A1 (en) * 2000-11-09 2002-05-21 Change Tools, Inc. A user definable interface system, method and computer program product
US7895530B2 (en) * 2000-11-09 2011-02-22 Change Tools, Inc. User definable interface system, method, support tools, and computer program product
US7246329B1 (en) * 2001-05-18 2007-07-17 Autodesk, Inc. Multiple menus for use with a graphical user interface
US6883143B2 (en) 2001-12-18 2005-04-19 Stanley W. Driskell Computer interface toolbar for acquiring most frequently accessed options using short cursor traverses
SE521470C2 (sv) * 2002-09-09 2003-11-04 Zenterio Ab Grafiskt användargränssnitt för navigering och selektion från olika valbara alternativ presenterade på en bildskärm
JP2004295159A (ja) * 2003-02-07 2004-10-21 Sony Corp アイコン表示システム、アイコン表示方法、電子機器装置およびコンピュータプログラム
JP4215549B2 (ja) * 2003-04-02 2009-01-28 富士通株式会社 タッチパネル・モードとポインティング・デバイス・モードで動作する情報処理装置
US20040221243A1 (en) * 2003-04-30 2004-11-04 Twerdahl Timothy D Radial menu interface for handheld computing device
US20050044509A1 (en) 2003-05-07 2005-02-24 Hunleth Frank A. Item selection using helical menus
US7661075B2 (en) * 2003-05-21 2010-02-09 Nokia Corporation User interface display for set-top box device
US7495659B2 (en) * 2003-11-25 2009-02-24 Apple Inc. Touch pad for handheld device
EP1536315A1 (en) * 2003-11-27 2005-06-01 Sony NetServices GmbH Information retrieval device
KR100633184B1 (ko) * 2004-04-06 2006-10-12 엘지전자 주식회사 영상표시기기의 메뉴설정장치 및 방법
US7600201B2 (en) * 2004-04-07 2009-10-06 Sony Corporation Methods and apparatuses for viewing choices and making selections
US8040319B2 (en) * 2007-04-13 2011-10-18 Apple Inc. Modifying a value based on a user's directional motions independent of cursor position
EP1817653A1 (en) * 2004-10-12 2007-08-15 Koninklijke Philips Electronics N.V. Ultrasound touchscreen user interface and display
EP1669843A1 (de) * 2004-12-13 2006-06-14 Siemens Aktiengesellschaft Menüeinträge in Drop-Down Menüs grafischer Bedienoberflächen
US7616191B2 (en) * 2005-04-18 2009-11-10 Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. Electronic device and method for simplifying text entry using a soft keyboard
JP4276640B2 (ja) * 2005-06-17 2009-06-10 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理装置の制御方法及び情報処理プログラム
US7487467B1 (en) 2005-06-23 2009-02-03 Sun Microsystems, Inc. Visual representation and other effects for application management on a device with a small screen
US7730425B2 (en) * 2005-11-30 2010-06-01 De Los Reyes Isabelo Function-oriented user interface
US7676763B2 (en) * 2006-02-21 2010-03-09 Sap Ag Method and system for providing an outwardly expandable radial menu
JP2007287135A (ja) * 2006-03-20 2007-11-01 Denso Corp 画像表示制御装置および画像表示制御装置用のプログラム
KR101146042B1 (ko) * 2006-05-22 2012-05-14 엘지전자 주식회사 회전형 메뉴 기능을 갖는 이동 통신 단말기 및 그 메뉴제어 방법
EP1860534A1 (en) * 2006-05-22 2007-11-28 LG Electronics Inc. Mobile terminal and menu display method thereof
US8352881B2 (en) * 2007-03-08 2013-01-08 International Business Machines Corporation Method, apparatus and program storage device for providing customizable, immediate and radiating menus for accessing applications and actions
US8161407B2 (en) * 2007-03-15 2012-04-17 International Business Machines Corporation Multiple sorting of columns in a displayed table in a user interactive computer display interface through sequential radial menus
US20090037813A1 (en) * 2007-07-31 2009-02-05 Palo Alto Research Center Incorporated Space-constrained marking menus for mobile devices
JP4470123B2 (ja) * 2007-12-26 2010-06-02 ソニー株式会社 表示制御装置、表示制御方法、及びプログラム
KR100973354B1 (ko) 2008-01-11 2010-07-30 성균관대학교산학협력단 메뉴 유저 인터페이스 제공 장치 및 방법
US7941765B2 (en) * 2008-01-23 2011-05-10 Wacom Co., Ltd System and method of controlling variables using a radial control menu
US8826181B2 (en) * 2008-06-28 2014-09-02 Apple Inc. Moving radial menus
WO2009158549A2 (en) 2008-06-28 2009-12-30 Apple Inc. Radial menu selection
US8245156B2 (en) * 2008-06-28 2012-08-14 Apple Inc. Radial menu selection
US20090327955A1 (en) * 2008-06-28 2009-12-31 Mouilleseaux Jean-Pierre M Selecting Menu Items
US9383897B2 (en) * 2009-01-29 2016-07-05 International Business Machines Corporation Spiraling radial menus in computer systems
US20100281430A1 (en) * 2009-05-02 2010-11-04 Samir Hanna Safar Mobile applications spin menu
US8549432B2 (en) 2009-05-29 2013-10-01 Apple Inc. Radial menus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070006477A (ko) * 2005-07-08 2007-01-11 삼성전자주식회사 가변적 메뉴 배열 방법 및 이를 이용한 디스플레이 장치
US20070180392A1 (en) * 2006-01-27 2007-08-02 Microsoft Corporation Area frequency radial menus

Also Published As

Publication number Publication date
US8549432B2 (en) 2013-10-01
CN104657044B (zh) 2018-06-19
US20100306702A1 (en) 2010-12-02
CN104657044A (zh) 2015-05-27
AU2010254344A1 (en) 2011-12-22
US9733796B2 (en) 2017-08-15
WO2010138360A4 (en) 2011-02-10
US20140082557A1 (en) 2014-03-20
EP2435900A1 (en) 2012-04-04
AU2010254344B2 (en) 2013-10-10
CN102449588A (zh) 2012-05-09
WO2010138360A1 (en) 2010-12-02
KR20120025487A (ko) 2012-03-15

Similar Documents

Publication Publication Date Title
KR101366445B1 (ko) 방사형 메뉴를 위한 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 저장 매체
RU2530301C2 (ru) Прокручиваемые меню и панели инструментов
US10241635B2 (en) Linear Progression based window management
EP2895946B1 (en) Providing radial menus with touchscreens
JP6050347B2 (ja) コンテキストベースメニュー用ランチャ
US8627233B2 (en) Radial menu with overshoot, fade away, and undo capabilities
US8468466B2 (en) Radial menu selection with gestures
CA2884595C (en) Interacting with radial menus for touchscreens
JP6046126B2 (ja) マルチ・アプリケーション環境
US9619435B2 (en) Methods and apparatus for modifying typographic attributes
US20100192102A1 (en) Displaying radial menus near edges of a display area
US20100192101A1 (en) Displaying radial menus in a graphics container
US20100185985A1 (en) Managing radial menus in a computer system
KR20110030300A (ko) 방사상 메뉴에서 항목들의 배치
KR20170067863A (ko) 이종 애플리케이션 탭들
KR20140051228A (ko) 컨텍스트 기반 메뉴 시스템에 대한 서브메뉴
KR102228335B1 (ko) 그래픽 사용자 인터페이스의 일 부분을 선택하는 방법
US9678656B2 (en) Preventing accidental selection events on a touch screen
AU2018200747B2 (en) Radial menus
US10956004B2 (en) Recognizing user interface element selection
AU2014200055A1 (en) Radial menus
WO2012170400A1 (en) Linear progression based window management

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170119

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180118

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190116

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 7