KR20110038712A - 유저인터페이스 생성장치 - Google Patents
유저인터페이스 생성장치 Download PDFInfo
- Publication number
- KR20110038712A KR20110038712A KR1020117004506A KR20117004506A KR20110038712A KR 20110038712 A KR20110038712 A KR 20110038712A KR 1020117004506 A KR1020117004506 A KR 1020117004506A KR 20117004506 A KR20117004506 A KR 20117004506A KR 20110038712 A KR20110038712 A KR 20110038712A
- Authority
- KR
- South Korea
- Prior art keywords
- input
- user interface
- unit
- interface object
- display
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72469—User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4438—Window management, e.g. event handling following interaction with the user interface
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/06—Use of more than one graphics processor to process data before displaying to one or more screens
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
유저인터페이스 생성장치가 제공되는데, 상기 장치는 복수의 어플리케이션 프로그램의 유저인터페이스들의 합성 이후에도 간단한 조작으로 합성 UI의 구성을 변경할 수 있다. 상기 유저인터페이스 생성장치는, 제어부가 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하면서, 입력부가 제2입력을 접수하면, 상기 입력부가 제2입력의 접수를 시작하는 위치 및 상기 입력부가 제2입력의 접수를 종료하는 위치에 따라 합성 유저인터페이스 오브젝트 그룹의 재합성 처리를 행하기 위한, 그리고 재합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하기 위한 제어부를 포함한다.
Description
본 출원은 일본특허출원 제2008-220511호(2008년 8월 28일에 출원됨)의 우선권 주장을 하며, 그 전문이 본 명세서에서 인용참조된다.
본 발명은 유저인터페이스 생성장치에 관한 것으로, 특히 휴대 단말의 유저인터페이스를 생성하는 유저인터페이스 생성장치에 관한 것이다.
휴대전화로 대표되는 휴대 단말의 유저인터페이스(이하, 적절하게 "UI"라고 약기함)는 유저가 휴대 단말을 조작할 때의 조작성을 크게 좌우한다. 이에 따라, 휴대 단말의 UI는, 유저가 휴대 단말을 구입할 때의 중요한 요소들 가운데 한 가지가 되고 있다.
최근, 휴대 단말이 현저하게 다기능화됨에 따라, 그에 따른 애니메이션 및 3D 디스플레이를 이용하는 표현력 풍부한 UI를 갖춘 휴대 단말도 많다. 또한, 유저의 기호에 따라 UI를 커스터마이즈(customize) 가능한 휴대 단말도 있다. 이러한 휴대 단말은 유저에 대한 편리성을 현저하게 향상시켜 준다.
종래의 휴대 단말은 제조사들 간에 그리고 모델들 간에 UI의 디자인과 조작방법이 다른 것이 일반적이었다. 즉, UI는 각 단말기기에 고유한 것이고, 종래의 휴대 단말 대부분은 모델에 대한 의존성이 높은 UI를 구비한다. 그러므로, 단말의 개발 시에 다른 단말의 프로그램 코드를 재사용하는 경우에는, 그 프로그램 코드에 대하여 필요한 UI 부분의 변경이 방대해진다. 따라서, 어떤 단말의 프로그램 코드를 다른 단말에 이식하는 것이 곤란하였다.
이러한 문제점을 해결하기 위하여, XML(Extensible Markup Language)에 기초한 UI가 도입되고 있다. 기술 방식이 표준화된 XML 파일을 이용하여 UI를 표현함으로써, 프로그램 코드의 재사용이 용이해져, 다른 모델로의 UI의 이식도 가능하게 된다. 따라서, 다른 모델과 다른 제조사들의 단말에서도 같은 UI를 사용할 수 있도록, 각 단말로부터 독립해서 UI 단독으로 취급하는 것도 가능하게 된다.
이러한 XML-기반 UI 중 대표적인 것으로는, TAT(http://www.tat.se/)가 개발한 UI Foundation, Acrodea사(http://www.acrodea.co.jp/)가 개발한 VIVID UI, Qualcomm사(http://www.qualcomm.co.jp/)가 개발한 UI One 등을 들 수 있다.
또한, 단말 본체의 다기능화와 고성능화에 따라, 최근의 휴대 단말은 복수의 태스크를 병렬로 동시에 실행하기 위한 멀티태스크 처리를 행할 수 있는 OS(운영체제)를 탑재하는 것이 늘어나고 있다. 더욱이, 병렬로 동시에 처리되는 복수의 태스크에 각각의 표시 영역(윈도우)을 할당하여, 출력 화면의 표시를 다중화하는 멀티-윈도우 기능을 구비한 휴대 단말도 폭넓게 사용되고 있다.
첨언하면, 적외선통신부를 구비한 휴대 단말을 사용하는 적외선통신에 의해 복수의 외부기기를 원격 조작(제어)하기 위한 기술이 개시되어 있다(예를 들면, 특허문헌 1 참조). 특허문헌 1에 기재된 휴대전화단말에는 외부기기와의 통신을 행하는 외부제어부가 제공된다. 이러한 휴대전화단말은, 외부기기를 원격제어하기 위한 외부기기제어정보를, 전화 회선을 거쳐 취득하거나 또는 외부기기로부터 수신하여 기억하고, 상기 외부기기제어정보에 의거하여 외부기기를 원격제어한다. 즉, 단말에 내장된 어플리케이션프로그램(이하, 간단히 "어플리케이션"이라고 함)을 변경함으로써, 통상적으로 휴대전화로서 사용하는 단말 본체는, 복수의 외부기기를 원격조작하기 위한 리모트 컨트롤러(이하, 간단히 "리모콘"이라고 함)로 사용될 수 있다.
상기 특허문헌 1에 개시된 휴대전화단말에 의하면, 각 외부기기에 대응하는 각각의 외부기기제어정보에 의거하여 단 하나의 휴대전화단말이 복수의 외부기기를 원격조작할 수 있다. 따라서, 복수의 외부기기 각각에 대해서 개별적인 리모콘 단말을 유저가 별도로 사용하도록 하기 위한 번잡한 조작이 필요 없게 되어, 유저에 대한 편리성을 향상시킬 수 있다.
원격제어될 복수의 외부기기를 전환할 수 있는 리모콘의 이러한 기능들이 상기한 멀티태스크 처리가 가능한 휴대 단말에서 구현되는 경우에는, 각 리모콘의 어플리케이션을 종료시켜 다른 리모콘의 어플리케이션을 기동시킬 필요가 없게 된다. 즉, 복수의 어플리케이션을 단 하나의 단말에서 기동시켜, 그들 가운데 원하는 리모콘의 어플리케이션을 적절하게 사용하는 것이 가능하다.
하지만, 복수의 어플리케이션을 빈번하게 전환하기 위한 조작은 번잡한 일이 된다.
휴대 단말에 상기한 멀티-윈도우의 기능을 내장하면, 복수의 윈도우에 복수의 어플리케이션을 조작하기 위한 UI를 각각 표시하는 것도 가능하게 된다. 이렇게 하면, 복수의 어플리케이션 가운데 전환하지 않으면서도, 단 하나의 화면상에서 동시에 어플리케이션들을 사용할 수 있게 된다.
즉, 예를 들면, 도 22(A)에 도시된 바와 같은 TV 리모콘 단말 단독이면, 도 22(B)에 도시된 바와 같이, TV 리모콘 단말의 조작성을 유지하면서, 예컨대 휴대단말(100)의 터치패널(200)에, TV 리모콘 어플리케이션 UI가 재현될 수도 있다. 도 22(A)에 도시된 리모콘 단말의 숫자 키 또는 버튼과 같은 키들은 기계식 키이지만, 도 22(B)에 도시된 휴대 단말(100)의 숫자 키 또는 버튼들은 오브젝트(object)로서 재현되어 상기 터치패널(200)에 표시된다. 이하, 상기 터치패널에 표시된 UI를 구성하는 각종 키 또는 버튼 및 정보표시장소를 "UI 오브젝트"라고 한다. 이와 유사하게, 도 22(C)에 도시된 바와 같은 에어컨디셔너의 리모콘 단말 단독의 경우에도, 에어컨디셔너 리모콘 어플리케이션 UI는, 도 22(D)에 도시된 바와 같이, 상기 에어컨디셔너 리모콘 단말의 조작성을 유지하면서, 상기 터치패널(200)의 휴대 단말(100) 상에 재현될 수도 있다. 더욱이, 어플리케이션의 각각의 UI가 XML을 베이스로서 기술되는 경우에는, 상이한 제조사의 다른 단말에 어플리케이션이 이식되더라도, UI를 기술하는 XML 파일을 처리하는 것만으로도 다른 단말에서 거의 같은 UI를 용이하게 재현할 수 있다.
하지만, 상기 예시에서는 TV 시청 중에 에어컨디셔너의 조작을 행하기 위하여, TV 및 에어컨디셔너 양자 모두에 대한 번잡한 조작을 필요로 하는 상황도 상정된다. 이러한 경우, TV 및 에어컨디셔너 양자 모두에 대한 어플리케이션들은, 멀티-태스크 기능 및 멀티-윈도우 기능을 이용하여 표시부의 표시 영역을 분할함으로써 동시에 표시될 수도 있다. 하지만, 각 어플리케이션은 단독으로 사용하는 것을 상정한 UI만을 구비하므로, 상기 UI들의 동시 표시가 도 23(A)∼(D)에 도시된 바와 같은 표시를 초래하게 된다.
도 23(A)∼(D)는, 멀티-태스크 및 멀티-윈도우의 기능을 갖는 휴대 단말(100)을 사용하여, 2개의 어플리케이션 UI가 동시에 표시될 때의 상태를 예시한 도면들이다. 도면에 도시된 예시들에서는, 터치패널(200)의 표시부를 상하로 구분하는 각각 윈도우 내에서 각각의 UI를 그대로 재현함에 따라, 각각의 UI의 일부만이 표시된다. 화면을 벗어나는 부분들의 조작을 가능하게 하기 위하여, 각 윈도우의 우단에는 스크롤바가 제공된다.
예를 들면, 도 23(A)로 도시된 상태에서 TV의 음량을 조절하기 위해서는, 유저는 TV 리모콘 UI의 윈도우의 스크롤바를 이동시켜, 도 23(B)에 도시된 바와 같이, TV 리모콘 UI의 표시 범위를 이동시킬 필요가 있게 된다. 이와 마찬가지로, 예를 들어, 도 23(C)로 도시된 상태에서 에어컨디셔너의 온도를 조절하기 위해서는, 유저가 에어컨디셔너 리모콘 UI의 윈도우의 스크롤바를 이동시켜, 도 23(D)에 도시된 바와 같이, 에어컨디셔너 리모콘 UI의 표시 범위를 이동시키지 않으면 안된다. 더욱이, 멀티-윈도우 기능을 이용하여 복수의 어플리케이션을 기동하는 경우, UI들이 서로 중첩되어 표시된다면, 입력 조작을 시작하기 전에 윈도우를 선택 및 기동하는 것이 필요하다.
특히, 휴대 단말의 단말 본체는 컴팩트하게 설계되므로, 터치패널로 구성되는 UI 또는 물리적인 키로 구성되는 UI에 의해 사용가능한 영역이 매우 제한되게 된다. 따라서, 리모콘과 같은 어플리케이션 UI를 구성하는 조작부는 일반적으로 최소 크기로 설계되게 된다. 이에 따라, 복수의 어플리케이션 UI를 동시에 표시하기 위하여, 각각의 UI를 전체적으로 축소하는 것은 현실적이지 않다.
이와 같이, 단 하나의 화면용으로 설계되어, 단독으로 사용하는 것을 상정한 UI(이하, 적절하게 "독립(stand-alone) UI"라고 약기함)가 멀티-윈도우 기능을 이용하여 표시되는 경우, 상기 UI의 조작성은 악화된다.
이러한 문제에 대처하기 위해서, 각각의 독립 UI의 구성요소인 키와 버튼 등의 UI 오브젝트들로부터 선택된 UI 오브젝트로 구성된, 합성된 UI(이하, "합성 UI"라고 약기함)을 생성하는 것도 생각할 수 있다. 예를 들면, 도 22(B)에 도시된 TV 리모콘 어플리케이션 UI 및 도 22(D)에 도시된 에어컨디셔너 리모콘 어플리케이션 UI로부터 소정의 UI 오브젝트를 선택하여, 도 24에 도시된 바와 같은 합성 UI를 생성하는 것을 생각할 수도 있다. 도 24에 도시된 휴대 단말(100)은, 상기한 2개의 리모콘 어플리케이션 UI로부터 소정의 UI 오브젝트를 선택하고, 단 하나의 합성 UI로서 상기 터치패널(200)에 표시하는 일례를 게시하고 있다.
이러한 방식으로 대응하는 UI는, 사용 빈도가 높은 UI 오브젝트 또는 유저가 사용하고자 원하는 UI 오브젝트를 선택하여 합성 UI를 구성할 수 있으므로, 각각의 UI 오브젝트를 그 사용성, 즉 조작성을 희생하여 축소할 필요는 없게 된다.
또한, 복수의 어플리케이션을 조작할 수 있는 편리성에도 불구하고, 독립 UI에 비교해서 각 어플리케이션에 대한 합성 UI에서의 UI 오브젝트(버튼 등의 소프트키)들의 수가 적어진다. 이에 따라, 유저가 원하는 조작에 대응하는 UI 오브젝트가 표시되지 않는 경우가 있는 등, 유저의 편리성이 손상될 우려가 있다. 예를 들면, 도 25(a)의 독립 UI와 도 25(b)의 합성 UI를 비교하면, TV 리모콘 UI의 숫자키에 대응하는 UI 오브젝트가 합성 UI에는 포함되어 있지 않다. 그러므로, 유저가 이러한 합성 UI에 의해서는 각 방송국을 직접 선국할 수 없게 된다. 더욱이, 합성 UI의 UI 오브젝트의 변경 및 각각의 인터페이스가 배치되는 영역의 사이즈 변경이나 치환은 유저에게 큰 부담을 주게 된다.
이에 따라, 상기 사정을 감안하여 이루어진 본 발명의 목적은, 복수의 어플리케이션 프로그램의 유저인터페이스의 합성 이후에도, 간단한 조작으로 합성 UI의 구성을 변경할 수 있는 유저인터페이스 생성장치를 제공하는 것이다.
상기 과제들을 해결하기 위하여, 본 발명의 제1형태에 따른 유저인터페이스 생성장치는,
어플리케이션 프로그램을 기억할 수 있는 기억부;
상기 기억부에 기억되어 있는 어플리케이션 프로그램에 의거하여, 하나의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 유저인터페이스에 대응하는 독립 유저인터페이스 오브젝트 그룹(stand-alone user interface object group)을 표시하도록 제어하고, 복수의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 복수의 유저인터페이스에 각각 대응하는 독립 유저인터페이스 오브젝트 그룹들로부터 추출한 유저인터페이스 오브젝트에 대한 합성 처리를 행하여 합성 유저인터페이스 오브젝트 그룹(compound user interface object group)을 표시하도록 제어하기 위한 제어부;
상기 독립 유저인터페이스 오브젝트 그룹 또는 상기 합성 유저인터페이스 오브젝트 그룹을 표시하기 위한 표시부; 및
제1입력수단에 의한 제1입력과 제2입력수단에 의한 제2입력을 접수하기 위하여, 상기 표시부와 관련하여 상기 표시부의 전면(front face)에 배치된 입력부를 포함하고,
상기 입력부가 제1입력을 접수하면, 상기 제어부는 상기 제1입력의 접수 위치에 대응하는 유저인터페이스 오브젝트의 기능을 실행하며,
상기 제어부가 상기 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하면서, 상기 입력부가 제2입력을 접수하면, 상기 제어부는, 상기 입력부가 상기 제2입력의 접수를 시작한 위치 및 상기 입력부가 상기 제2입력의 접수를 종료한 위치에 따라, 상기 합성 유저인터페이스 오브젝트 그룹의 재합성 처리를 행하고, 재합성된 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하는 것을 요지로 한다.
상기 제어부는, 상기 합성 유저인터페이스 오브젝트 그룹에서, 상기 제2입력의 접수 위치에 대응하게 표시된 유저인터페이스의 표시 위치 및 상기 입력부가 상기 제2입력의 접수를 종료한 위치에 대응하게 표시된 유저인터페이스의 표시 위치를 교환하기 위한 재합성 처리를 행하는 것이 바람직하다.
상기 입력부가 상기 제2입력의 접수를 종료한 위치에서, 상기 제2입력의 입력 영역이 상기 표시부의 표시 영역의 경계를 포함하는 경우, 상기 제어부는, 상기 합성 유저인터페이스 오브젝트 그룹에서 각각의 유저인터페이스의 배치를 변경하기 위한 재합성 처리를 행하는 것이 바람직하다.
상기 입력부가 상기 제2입력의 접수를 시작한 위치에서, 상기 제2입력의 입력 영역이 유저인터페이스들의 표시 영역들 간의 경계를 포함하는 경우, 상기 제어부는, 상기 입력부가 상기 제2입력의 접수를 종료한 위치까지, 상기 표시 영역들 간의 경계를 이동시키기 위한 재합성 처리를 행하는 것이 바람직하다.
상기 과제들을 해결하기 위하여, 본 발명의 또다른 형태에 따른 유저인터페이스 생성장치는,
어플리케이션 프로그램을 기억할 수 있는 기억부;
상기 기억부에 기억되어 있는 어플리케이션 프로그램에 의거하여, 하나의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 유저인터페이스에 대응하는 독립 유저인터페이스 오브젝트 그룹을 표시하도록 제어하고, 복수의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 복수의 유저인터페이스에 각각 대응하는 독립 유저인터페이스 오브젝트 그룹들로부터 추출된 유저인터페이스 오브젝트들의 합성 처리를 행하여 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하기 위한 제어부;
상기 독립 유저인터페이스 오브젝트 그룹 또는 상기 합성 유저인터페이스 오브젝트 그룹을 표시하기 위한 표시부; 및
제1입력수단에 의한 제1입력과 제2입력수단에 의한 제2입력을 접수하기 위하여, 상기 표시부와 관련하여 상기 표시부의 전면에 배치된 입력부를 포함하고,
상기 입력부가 제1입력을 접수하면, 상기 제어부는 상기 제1입력의 접수 위치에 대응하는 유저인터페이스 오브젝트의 기능을 실행하며,
상기 제어부가 상기 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하면서, 상기 입력부가 제2입력을 접수하는 경우, 그리고 상기 제2입력의 누름(압하)이 계속되는 동안, 상기 입력부가 상기 합성 유저인터페이스 오브젝트 그룹의 유저인터페이스 오브젝트를 선택하도록 제1입력을 접수하는 경우, 상기 제어부는, 상기 제1입력에 의해 선택된 상기 유저인터페이스 오브젝트를 다른 유저인터페이스 오브젝트로 변경하기 위해 재합성 처리가 행하여지는 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하는 것을 요지로 한다.
상기 제1입력은, 상기 합성 유저인터페이스 오브젝트 그룹의 소정의 영역에 포함된 유저인터페이스 오브젝트를 선택하는 것이 바람직하다.
상기 제어부는, 상기 제1입력에 의해 선택된 유저인터페이스 오브젝트를 상기 합성 유저인터페이스 오브젝트 그룹에 추가적으로 표시하여, 상기 재합성 처리를 행하는 것이 바람직하다.
상기 제어부는, 상기 제1입력에 의해 선택된 유저인터페이스 오브젝트를, 상기 유저인터페이스 오브젝트 그룹에 포함된 유저인터페이스 오브젝트들 가운데 우선순위가 낮은 유저인터페이스 오브젝트로 치환하여 상기 재합성 처리를 행하는 것이 바람직하다.
본 발명에 의하면, 유저가 간단한 조작으로 합성 유저인터페이스의 구성을 변경할 수 있다.
도 1은 본 발명의 제2실시예에 따른 휴대 단말의 구성을 예시한 도면;
도 2는 본 발명의 제2실시예에 따른 휴대 단말의 동작을 예시한 흐름도;
도 3은 본 발명의 제2실시예에 따른 휴대 단말에 의한 입력 시의 제어 흐름을 예시한 흐름도;
도 4는 본 발명의 제2실시예에 따른 휴대 단말의 처리(1)를 예시한 흐름도;
도 5는 본 발명의 제2실시예에 따른 휴대 단말의 처리(2)를 예시한 흐름도;
도 6은 본 발명의 제2실시예에 따른 휴대 단말의 UI 오브젝트의 서브 동작을 예시한 흐름도;
도 7은 본 발명의 제2실시예에 따른 휴대 단말에 의한 해제 시의 제어 흐름을 예시한 흐름도;
도 8은 본 발명의 제2실시예에 따른 휴대 단말에 의한 메인 입력 및 서브 입력 시의 동작을 예시한 흐름도;
도 9는 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 10은 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 11은 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 12는 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 13은 본 발명의 제1실시예에 따른 유저인터페이스 생성장치의 개략적인 구성을 예시한 블럭도;
도 14는 본 발명의 유저인터페이스정의파일의 구조를 예시한 개념도;
도 15는 본 발명의 합성유저인터페이스정의파일의 구성을 예시한 개념도;
도 16은 본 발명의 제1실시예에 따른 독립 유저인터페이스를 예시한 도면;
도 17은 본 발명의 제1실시예에 따른 유저인터페이스오브젝트정의정보로서 우선순위를 나타내는 정보를 예시한 도면;
도 18은 본 발명의 제1실시예에 따른 전체적인 유저인터페이스 생성처리를 예시한 흐름도;
도 19는 본 발명의 제1실시예에 따른 유저인터페이스 생성처리를 예시한 흐름도;
도 20은 본 발명의 제1실시예에 따른 유저인터페이스 합성처리를 예시한 흐름도;
도 21은 본 발명의 제1실시예에 따른 유저인터페이스 합성 처리에 의해 2개의 독립 유저인터페이스의 예시적인 합성을 예시한 도면;
도 22는 휴대 단말의 유저인터페이스에 의해 재현된 종래의 리모트 컨트롤러를 예시한 도면;
도 23은 휴대 단말에 의한 2개의 유저인터페이스의 종래의 합성의 예시를 예시한 도면;
도 24는 휴대 단말에 의한 2개의 독립 유저인터페이스의 예시적인 합성을 예시한 도면; 및
도 25는 독립 UI 및 합성 UI의 예시들을 예시한 도면이다.
도 2는 본 발명의 제2실시예에 따른 휴대 단말의 동작을 예시한 흐름도;
도 3은 본 발명의 제2실시예에 따른 휴대 단말에 의한 입력 시의 제어 흐름을 예시한 흐름도;
도 4는 본 발명의 제2실시예에 따른 휴대 단말의 처리(1)를 예시한 흐름도;
도 5는 본 발명의 제2실시예에 따른 휴대 단말의 처리(2)를 예시한 흐름도;
도 6은 본 발명의 제2실시예에 따른 휴대 단말의 UI 오브젝트의 서브 동작을 예시한 흐름도;
도 7은 본 발명의 제2실시예에 따른 휴대 단말에 의한 해제 시의 제어 흐름을 예시한 흐름도;
도 8은 본 발명의 제2실시예에 따른 휴대 단말에 의한 메인 입력 및 서브 입력 시의 동작을 예시한 흐름도;
도 9는 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 10은 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 11은 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 12는 본 발명의 제2실시예에 따른 휴대 단말의 합성 UI의 예시적인 재합성을 예시한 도면;
도 13은 본 발명의 제1실시예에 따른 유저인터페이스 생성장치의 개략적인 구성을 예시한 블럭도;
도 14는 본 발명의 유저인터페이스정의파일의 구조를 예시한 개념도;
도 15는 본 발명의 합성유저인터페이스정의파일의 구성을 예시한 개념도;
도 16은 본 발명의 제1실시예에 따른 독립 유저인터페이스를 예시한 도면;
도 17은 본 발명의 제1실시예에 따른 유저인터페이스오브젝트정의정보로서 우선순위를 나타내는 정보를 예시한 도면;
도 18은 본 발명의 제1실시예에 따른 전체적인 유저인터페이스 생성처리를 예시한 흐름도;
도 19는 본 발명의 제1실시예에 따른 유저인터페이스 생성처리를 예시한 흐름도;
도 20은 본 발명의 제1실시예에 따른 유저인터페이스 합성처리를 예시한 흐름도;
도 21은 본 발명의 제1실시예에 따른 유저인터페이스 합성 처리에 의해 2개의 독립 유저인터페이스의 예시적인 합성을 예시한 도면;
도 22는 휴대 단말의 유저인터페이스에 의해 재현된 종래의 리모트 컨트롤러를 예시한 도면;
도 23은 휴대 단말에 의한 2개의 유저인터페이스의 종래의 합성의 예시를 예시한 도면;
도 24는 휴대 단말에 의한 2개의 독립 유저인터페이스의 예시적인 합성을 예시한 도면; 및
도 25는 독립 UI 및 합성 UI의 예시들을 예시한 도면이다.
이하, 본 발명의 실시예들을 도면들을 참조하여 설명하기로 한다. 이하의 각 실시예에서는, 본 발명에 따른 유저인터페이스(이하, "UI"라고 함) 생성장치의 일례로서, 각종 외부기기의 원격제어가 가능한 리모트 컨트롤 기능을 갖는 휴대전화가 사용된다. 하지만, 본 발명에 따른 UI 생성장치가 휴대전화로 한정되는 것은 아니고, 예를 들면 랩탑 컴퓨터나 PDA 등의 여하한의 휴대 단말 등에도 적용가능하다. 또한, 본 발명은 휴대 단말로 제한되는 것이 아니며, 그 설치를 필요로 하는 장치에도 적용가능하다. 또한, 본 발명은 복수의 UI를 동시에 사용할 수 있게 합성하는 것을 주된 목적으로 하고, 각 UI에 의해 지시된 어플리케이션은 리모트 컨트롤 기능을 갖는 것으로 한정되는 것이 아니며, 본 발명은 각종 어플리케이션에도 적용가능하다는 점에 유의한다.
(제1실시예)
도 13은 본 발명의 제1실시예에 따른 UI 생성장치인 휴대전화의 개략적인 구성을 예시한 블럭도이다.
상기 휴대전화(1)는 전체 조작을 제어하기 위한 제어부(10) 및 유저에 의한 입력을 접수하고, 각 어플리케이션에 따라 입력 결과 등을 표시하기 위한 터치패널(20)을 포함한다. 상기 터치패널(20)은, 유저에 의한 입력을 접수하기 위한 매트릭스 스위치(matrix switch) 등으로 구성되어, 액정 디스플레이 등으로 구성된 표시부(24)의 전면(front face)에 배치된 된 입력부(22)를 구비한다. 상기 터치패널(20)의 입력부(22)는, 유저의 손가락 또는 스타일러스와 같은 펜형 입력 디바이스에 의한 접촉을 검출하고, 이러한 접촉에 의한 입력에 대응하는 신호를 출력한다. 상기 표시부(24)는 어플리케이션 프로그램에 따른 표시를 실행하고, 또한 유저에 의한 입력을 접수하기 위한 각종 키나 버튼 등과 같은 UI 오브젝트로 이루어지는 UI의 화상을 소정의 UI 표시 영역에 표시한다. 상기 UI 표시 영역은, UI 오브젝트들로 이루어진 UI를 표시하기 위한 상기 터치패널(20)의 표시부(24) 상의 영역을 의미한다.
또한, 상기 휴대전화(1)는, 기지국(도시되지 않음)과 음성 통화, 전자우편의 데이터 등과 같은 각종 정보를 무선 등에 의하여 인터넷을 통해 송수신하기 위한 무선통신부(30), 및 각종 외부기기(도시되지 않음)와 적외선을 이용하여 통신하기 위한 적외선통신부(40)를 포함한다. 상기 휴대전화(1)는, 인터넷, 무선회선 등을 거쳐 상기 무선통신부(30)를 사용하여 외부기기들과 각종 데이터를 송수신한다.
나아가, 상기 휴대전화(1)는, 입력된 정보 및 각종 어플리케이션을 기억하기 위한, 그리고 워크 메모리로서도 기능하기 위한 기억부(50)를 포함한다. 상기 기억부(50)는, 어플리케이션기억영역(51), UI정의파일기억영역(52), 개별UI리소스기억영역(53), 공통UI리소스기억영역(54), 관련어플리케이션정보기억영역(55), 및 합성UI정의파일기억영역(56)을 포함한다.
상기 제어부(10)는, 어플리케이션실행부(11), UI취득부(12), UI생성부(13), 시간측정부(14), UI이벤트처리부(15)를 포함한다.
상기 제어부(10)의 어플리케이션실행부(11)는, 상기 기억부(50)의 어플리케이션기억영역(51)에 기억된 각종 어플리케이션을 읽어 내어 실행하는 것과 함께, 해당 실행에 관한 제어를 행한다. 또한, 상기 어플리케이션실행부(11)는, 상기 어플리케이션기억영역(51)으로부터 읽어 내어 실행되고 있는 각종 어플리케이션에 대응하는 UI로의 입력에 의거하여, 해당 입력에 대응하는 어플리케이션의 기능들을 실행한다.
상기 UI취득부(12)는, 무선통신부(30)를 거쳐 단말의 외부로부터 리소스(화상 데이터 등) 및 UI정의파일(XML파일 등)을 취득한다. 상기 UI생성부(13)는, UI정의파일에 대한 파싱(parsing) 및 DOM(Document 오브젝트 Model) 처리를 행하고, 실제로 사용될 UI를 생성한다. 상기 UI생성부(13)는, XML 형식으로 기술된 UI 정보를 XML엔진을 이용하여 해석하고, 상기 UI정의파일에 의거하여 생성된 UI를 상기 터치패널(20)의 표시부(24)에 표시한다. 상기 UI생성부(13)는, 합성 UI를 포함하는 각종 UI의 생성에 관련된 각종 처리를 행한다. 상기 UI생성부(13)를 아래에 상세히 설명하기로 한다.
카운터를 이용하여 시간의 길이를 측정하는 것 이외에도, 상기 시간측정부(14)는 현재 시간을 출력하고, (미리 설정된) 소정의 시간이 도달된 것을 통지한다. 상기 UI이벤트처리부(15)는, 상기 UI생성부(13)에 의해 생성된 UI에 대하여, 유저 조작에 의한 상기 입력부(22) 등으로의 입력에 의거하여 발생된 이벤트를 처리하고, 상기 어플리케이션실행부(11)에 대하여 각종 기능들의 실행을 적절하게 지시한다.
상기 UI생성부(13)는, 복수의 UI정의파일에 의거하여 UI의 합성 처리를 행하기 위한 UI합성처리부(60)를 포함한다. 상기 UI합성처리부(60)는, UI오브젝트정의정보해석부(61), UI오브젝트선택처리부(62), 합성UI정의파일생성부(63), 자동레이아웃처리부(64), 및 UI리소스정형부(65)를 포함한다.
상기 UI오브젝트정의정보해석부(61)는, 상기 UI정의파일에 포함된 각종의 UI 오브젝트를 정의하는 UI오브젝트정의정보를 해석한다.
상기 UI오브젝트선택처리부(62)는, 다수의 UI 오브젝트로부터, 필요로 하는 UI 오브젝트를, 자동적으로 또는 유저의 입력에 의해 선택하기 위한 처리를 행한다. 유저의 입력에 의해 선택이 이루어지는 경우, 상기 UI오브젝트선택처리부(62)는, 상기 표시부(24)에 표시될 UI 오브젝트를 정의하는 UI오브젝트정의정보를 해석함으로써, 유저에 의한 UI 오브젝트의 선택 입력을 접수하기 위한 선택 화면을 생성하도록 처리 및 제어를 행한다.
상기 합성UI정의파일생성부(63)는, 상기 UI합성처리부(60)에 의해 합성된 UI를, 합성UI정의파일로서 생성해서 출력한다.
상기 자동레이아웃처리부(64)는, UI를 합성할 때의 레이아웃에 관한 각종의 제어 및 처리를 행한다. 예를 들면, 자동레이아웃처리부(70)는, 각각의 UI 오브젝트의 배치설정처리, 배치가부판정처리, 축소오브젝트선택처리, 최소사이즈설정처리 및 마진설정처리를 행한다. 이하, 이러한 처리의 개략을 설명한다.
UI 오브젝트의 배치설정처리는, 소정의 UI 표시 영역 내에 실제로 UI 오브젝트가 배치되기 전에, 소정의 처리 순서에 따라 가상적으로 UI 오브젝트를 배치한다. 상기 배치가부판정처리는, 상기 배치설정처리에 의해 가상적으로 배치된 UI 오브젝트가 소정의 UI 표시 영역 내에 배치될 수 있는지의 여부를 판정한다. 상기 배치가부판정처리에 의해 UI 오브젝트 모두를 소정의 UI 표시 영역 내에 배치할 수 없다고 판정되는 경우, 상기 축소오브젝트선택처리는, 하기의 소정의 순서에 따라, 축소될 UI 오브젝트를 선택한다. 상기 최소사이즈설정처리는, 단말-의존 정보와 UI오브젝트정의정보에 따라, 각각의 UI 오브젝트를 축소할 때의 하한값을 UI 오브젝트마다 설정한다. 상기 마진설정처리는, UI 오브젝트를 배치할 때에, 해당 UI 오브젝트가 다른 UI 오브젝트 또는 UI 표시 영역의 가장자리에 너무 근접하지 않도록, 해당 UI 오브젝트의 주위에 적당한 간격(마진)을 설정한다.
상기 UI리소스정형부(65)는, 각각의 UI 오브젝트의 표시 사이즈에 의거하여, 선택된 UI 오브젝트의 프리뷰 처리 및 UI를 합성하는데 사용되는 리소스의 데이터를 확대 또는 축소하는 처리를 행한다. 이 경우, 상기 UI리소프정형부(65)는, 개별UI리소스기억영역(53) 또는 공통UI리소스기억영역(54)에 기억되어 있는 리소스의 데이터를 읽어 내어 사용한다.
상기 기억부(50)의 어플리케이션기억영역(51)은, 각종의 기능을 실현하기 위한 처리순서를 기술하는 데이터로 구성된 각종의 어플리케이션을 기억한다. 상기 UI정의파일기억영역(52)은, 각각의 UI 전체를 생성하기 위한 일련의 생성 규칙을 정의하는 UI정의파일을 기억한다. 상기 개별UI리소스기억영역(53)은, 각각의 어플리케이션 고유의 UI를 생성하는데 사용되는 화상 데이터 및 문자열(텍스트) 데이터 등의 개별UI리소스를 기억한다. 상기 공통UI리소스기억영역(54)은, 각각의 어플리케이션 고유의 개별UI리소스를 제외한, 상기 단말에 의해 사용되는 UI가 공유해서 사용하는 화상 데이터와 폰트 데이터 등의 공통UI리소스를 기억한다. 실제로 UI가 생성되는 경우, 상기 개별UI리소스기억영역(53) 및 상기 공통UI리소스기억영역(54)에 기억된 화상 데이터 및 텍스트 데이터는 상기 터치패널(20)의 표시부(24)에 표시된다.
또한, 상기 관련어플리케이션정보기억영역(55)은, 합성UI정의파일(후술함)에 관련되는 어플리케이션의 기동 정보를 포함하는 관련 어플리케이션 정보를 기억한다. 상기 합성UI정의파일기억영역(56)은, 상기 합성UI정의파일생성부(63)에 의해 생성된 합성UI정의파일을 기억한다.
다음으로, 본 실시예에 따른 UI정의파일기억영역(52)에 기억된 UI정의파일을 설명한다.
상기 기억부(50)의 UI정의파일기억영역(52)은, 상기 어플리케이션기억영역(51)에 기억된 어플리케이션의 실행에 필요한 UI의 어플리케이션의 동작 및 사양을 정의하는 UI정의파일을 기억한다. 다른 어플리케이션에 의하여 같은 UI가 사용될 수도 있지만, 여기서는 설명의 편의를 위하여, 다른 어플리케이션에 대하여 각각 다른 UI를 사용하는 경우를 상정하고, 각 어플리케이션에 대응하는 각 UI정의파일이 기억되는 경우에 관하여 설명한다.
예를 들면, 외부기기인 TV 수상기(도시되지 않음)를 휴대전화(1)를 이용하여 원격제어하는 TV 리모콘 어플리케이션에 대응하게, TV 리모콘 UI 정의파일이 UI정의파일기억영역(52)에 기억된다. 이와 마찬가지로, 또다른 외부기기인 에어컨디셔너(도시되지 않음)를 휴대전화(1)를 이용하여 원격제어하는 에어컨디셔너 리모콘 어플리케이션에 대응하게, 에어컨디셔너 리모콘 UI 정의파일이 UI정의파일기억영역(52)에 기억된다.
본 실시예에 따르면, UI정의파일을 기술하는 언어의 일례로서, XML에 기초한 UIML(User Interface Markup Language) 형식이 사용된다. UI를 기동해서 사용하기 위하여, 상기 UI생성부(13)는, 상기 UIML 형식으로 기술된 정의에 따라, 휴대전화(1)의 터치패널(20)의 표시부(24)에 UI를 표시하고, 상기 어플리케이션실행부(11)는, 유저에 의한 입력부(22)에 대한 입력에 응답하여 처리를 행한다.
도 14는 UI정의파일의 구조를 예시하는 개념도이다. 도 14에 도시된 바와 같이, 휴대전화(1)의 기억부(50)의 UI정의파일기억영역(52)은, 전체 UI를 생성하기 위한 일련의 생성 규칙을 정의하는 UI정의파일을 기억한다. 도 14에서는, 6개의 UI정의파일 (1)∼(6)가 기억되어 있지만, 사용될 UI에 따라 상기 UI정의파일기억영역(52)은 여하한의 개수의 UI정의파일을 저장할 수도 있다.
또한, 도 14에 도시된 바와 같이, 각각의 UI정의파일은 복수의 UI오브젝트정의정보를 포함한다. 도 14에서는, UI정의파일 (2)가 6개의 UI오브젝트정의정보((2)-1∼(2)-6)를 포함하고 있지만, 상기 UI정의파일 (2)는, 실제로는, 해당 UI정의파일 (2)에 의거하여 구성될 UI에 포함된 UI 오브젝트의 개수에 대응하는 수의 UI오브젝트정의정보를 포함한다.
상기 UI정의파일에 포함된 각각의 UI오브젝트정의정보는, 도면에 나타내는 바와 같이, 해당 UI오브젝트정의정보에 의해 정의되는 UI 오브젝트에 관련되는 각종의 속성을 나타내는 정보를 포함한다. 하기는 UI오브젝트정의정보에 포함된 대표적인 정보의 예시들이다.
(1) 구성요소(UI 오브젝트)의 종별 정보: UI 오브젝트가 유저에 의한 조작을 접수하는 버튼이나 키의 기능, 정보 표시의 텍스트박스 기능, 또는 표시부(24)에 화상을 간단히 표시하는 기능을 가지는지의 여부 등의 종별을 특정하는 정보;
(2) UI 오브젝트에 사용되는 리소스 정보: 표시부(24)에 표시될 UI의 구성요소인 키 또는 버튼 등의 UI 오브젝트를 표시하기 위한 화상 및 텍스트를 정의하는 정보;
(3) UI 오브젝트를 배치하는 위치 정보: UI 오브젝트를 소정의 UI 표시 영역의 어느 위치에 표시할지를 특정하는 정보;
(4) UI 오브젝트의 표시 사이즈 정보: UI 오브젝트를 UI 표시 영역에 표시할 때의 사이즈를 특정하는 정보;
(5) UI 오브젝트의 동작조건정보(액션 정보): UI 오브젝트에 대한 입력이 있을 때의(실제로는, UI 오브젝트에 대응하는 입력부(22)의 일부분에 대한 입력이 있을 때의), 어플리케이션에 대한 동작을 특정하는 정보(예를 들면, TV 리모콘 UI의 "전원"의 UI 오브젝트에 대하여 입력 이벤트가 발생하는 경우, TV 리모콘 어플리케이션에 대하여, 외부기기로서 TV의 전원을 ON 또는 OFF시키는 적외선신호를 발신하는 지시를 내리도록 정의하는 정보);
(6) UI 오브젝트를 유효 또는 무효로 하는 정보: UI 오브젝트를 UI 표시 영역에 표시할 것인지의 여부 또는 UI 오브젝트를 기동할 것인 지의 여부를 특정하는 정보;
(7) UI 오브젝트의 우선순위에 관한 정보: UI 오브젝트와 다른 UI 오브젝트 간의 관계에 의거하여, 복수의 UI가 합성될 때의, UI 오브젝트의 우선순위에 관한 정보; 및
(8) UI 오브젝트와 다른 UI 오브젝트 간의 관련성 정보: UI 오브젝트가 다른 UI 오브젝트와 소정의 관련성을 가지는 경우, 해당 관련성을 특정하는 정보.
상기 (5)의 UI 오브젝트의 동작조건정보(액션 정보)로서 각종 정보가 고려될 수도 있지만, 하기는 상술된 정보를 포함하여, 본 실시예에 따른 액션 정보의 종별로서 정의된 주된 3가지 종별이다.
1. UI 오브젝트의 특성(속성 정보)을 변경하는 액션
2. 어플리케이션의 기능을 실행하는 액션
3. 독립 UI를 기동하는 액션
또한, 본 실시예에 따른 휴대전화(1)는, 유저에 의한 선택 조작에 의거하여 복수의 UI로부터 복수의 UI 오브젝트를 선택해서 채용할 수 있고, 복수의 UI 오브젝트를 합성 UI로서 하나의 UI 표시 영역에 표시할 수 있다. 이 경우, 각각의 UI는 대응하는 UI 정의파일을 구비하지만, 원래는 유저에 의해 선택된 UI 오브젝트로 구성된 합성 UI가 대응하는 UI 정의파일을 구비하지 않는다. 그러므로, 유저에 의해 선택된 UI 오브젝트로 구성된 합성 UI의 생성 시에는, 상기 UI합성처리부(60)가 합성 UI에 의거하여 합성UI정의파일을 생성하여 기억한다. 이하, 합성UI정의파일을 생성하는 동작에 대하여 추가로 설명하기로 한다.
도 15는 합성UI정의파일의 구조를 예시하는 개념도이다. 상기 합성UI정의파일은, 복수의 UI 정의파일에 포함된 UI오브젝트정의정보를 부분적으로 추출하여, 단 하나의 UI 정의파일에 모은 것이다. 상기 합성UI정의파일에 포함될 UI오브젝트정의정보는, 그 근본이 되는 독립 UI로부터 추출되어 합성될 때에 필요에 따라 여러가지 방식으로 처리될 수도 있다. 예를 들면, 합성 UI의 정의를 식별하는 정보 및 관련 어플리케이션 정보를 지정하기 위한 정보가 부가된다. 도 15에 도시된 일례는, 3개의 UI정의파일 (2), (4), (5)로부터 각각 몇 개의 UI오브젝트정의정보를 추출한 것을 모아서, 신규 합성UI정의파일 (1)의 생성의 개념도를 예시한다. 이러한 방식으로, 각각의 UI오브젝트정의파일로부터 몇 개의 UI오브젝트정의정보를 추출하여, 그들을 합성UI정의파일에 모을 때에, 상기 UI합성처리부(60)는 합성하기 전에 필요에 따라 처리한다.
복수의 UI의 합성 시, 상기 UI합성처리부(60)의 UI오브젝트선택처리부(62)는, 각각의 UI정의파일에 의거하여 UI오브젝트선택화면을 생성하고, 유저에 의해 선택된 UI 오브젝트의 UI오브젝트정의정보를 추출한다. 상기 UI합성처리부(60)는, 이러한 방식으로 추출된 UI오브젝트정의정보를 모은다. 이때, 상기 합성UI정의파일생성부(63)는, 상기 모여진 UI오브젝트정의정보로부터 단 하나의 합성UI정의파일을 생성한다. 이는 유저의 시점에서 보면, 복수의 UI로부터 몇 개의 UI 오브젝트를 선택 및 채용하여 단 하나의 합성 UI를 생성하는 것이다. 상기한 바와 같이, 상기 UI합성처리부(60)는, 합성UI정의파일생성부(63)가 합성UI정의파일을 생성할 때, 필요에 따라 UI오브젝트정의정보를 처리한다. 그리고, 상기 UI합성처리부(60)는, 합성UI정의파일생성부(63)에 의해 생성된 합성UI정의파일을 상기 합성UI정의파일기억영역(56)에 기억한다.
이하, UI정의파일에 의거하여 생성되는 UI를 구체적인 예를 이용하여 설명한다. 도 16(A) 및 (B)는, 도 14 및 도 15에 도시된 바와 같은 각각의 UI정의파일에 의거하여 생성되는 독립 UI(독립 유저인터페이스 오브젝트 그룹)의 예시로서, 리모콘 어플리케이션 UI를 예시한 도면이다. 도 16(A)는 TV 수상기의 리모콘 어플리케이션 UI(유저인터페이스 오브젝트 그룹)의 일례를 보여주고, 도 16(B)는 에어컨디셔너의 리모콘 어플리케이션 UI(유저인터페이스 오브젝트 그룹)의 일례를 보여준다. 상기 UI정의파일이 XML을 기초로 한 UIML의 파일 형식으로 기술되고, 이러한 UIML 파일을 해석해서 UI가 생성되는 경우에는, 상기 표시부(24)의 소정의 UI 표시 영역 내에 핏팅(fitting)되도록 단 하나의 화면용 UI가 생성된다. 각각의 UI의 UI정의파일에서는, 각각의 UI를 구성하는 UI 오브젝트에 대해서, UI오브젝트정의정보에 의해 각종 속성이 정의된다.
상기 UI오브젝트선택처리부(62)는, 도 16(A) 및 (B)에 도시된 독립 UI(독립 유저인터페이스 오브젝트 그룹)로부터, 소정의 표준에 의거하여 몇 개의 UI 오브젝트를 선택한다. 상기 UI합성처리부(60)는, 이러한 UI 오브젝트와 함께 합성 UI를 생성하는 상술된 처리를 행한다. 이에 따라, 상기 합성UI정의파일생성부(63)는, 복수의 UI 오브젝트를 선택하여 채용함으로써 하나의 합성 UI를 구성하는 합성UI정의파일을 생성할 수 있다.
본 실시예에 따르면, 복수의 UI를 합성하여 합성 UI를 생성할 때, UI 오브젝트들 가운데 주요한 UI 오브젝트를 자동으로 선택하는 것도 가능하다. 이 경우, 상기 UI오브젝트선택처리부(62)가 UI 오브젝트를 자동으로 선택할 때에는, 상술된 (7) UI 오브젝트의 우선순위정보가 이용된다.
도 17은 본 실시예에 따른 UI 오브젝트의 우선순위정보를 예시하는 도면이다.
도 17(A)는 휴대전화(1)에서 TV 리모콘 어플리케이션만이 기동되고, TV 리모콘 UI 정의파일에 의거하여, 독립 UI로서 TV 리모콘 UI가 상기 터치패널(20)에 표시되는 것을 보여준다. 도면에서는, 상기 터치패널(20) 상의 UI 표시 영역이 각각의 UI 오브젝트의 속성 정보에 대응하는 소영역으로 일점쇄선에 의해 개념적으로 분할된다. 또한, 복수의 UI 오브젝트를 정리해서 하나의 UI(유저인터페이스 오브젝트 그룹)로서 취급하는 정의(UI 식별 정보)가 interface의 태그로 도시되므로, "TV_interface"의 태그의 값으로부터 TV1의 리모콘의 UI로서 그것을 식별하는 것이 가능하게 된다. 도 17(A)에 도시된 각각의 소영역 (1)∼(7)에 대응하는 예시적인 UI 오브젝트 속성 정보가 아래에 도시되어 있다.
Interface id = "TV1_interface"
(1) ID="switch1" priority="0"
(2) ID="ch_select" priority="1"
(3) ID="volume" priority="1"
(4) ID="10key" priority="4"
(5) ID="timer" priority="3"
(6) ID="bilingual" priority="3"
(7) ID="title" priority="0"
본 실시예에 따르면, UI오브젝트속성정보에 있어서, 상술된 각각의 소영역 (1)∼(7)의 UI 오브젝트의 우선순위가 사전에 미리 priority의 값으로서 정의된다. 도 17에 도시된 예시에서는, priority 값이 0인 UI 오브젝트는 필수적인(항상 선택됨) 오브젝트이고, priority 값이 1인 UI 오브젝트는 중요한 오브젝트이다. priority의 값이 증가함에 따라, UI 오브젝트는 우선순위가 낮아진다. 즉, 예를 들면, 도 17(A)의 소영역(1)에 도시된 "전원" 키는 필수적인 키이기 때문에, 그 priority의 값이 0으로 설정된다. 소영역(2)의 채널 선택 키 및 소영역(3)의 음량상하키는 중요한 키이므로, 그 priority 값이 1로 설정된다. 하지만, 소영역(4)의 숫자키는 소영역(2) 및 (3)의 채널 선택 키로 대체될 수도 있으므로, 그 priority 값이 4로 설정되어 낮은 우선순위를 가진다. 또한, 소영역(5)의 타이머키 및 소영역(6)의 바일링구얼(bilingual)키는 우선순위가 높지 않으므로, 그 priority 값이 3으로 설정된다.
또한, 소영역(7)의 문자열은, 유저에 의한 입력을 접수하는 키가 아니고, 상기 TV 리모콘 UI의 명칭을 도시한 UI 오브젝트이다. 이러한 UI 등의 명칭은 독립 UI를 이용할 때에 필수불가결한 것은 아니지만, 합성 UI를 생성할 때에는 가시성을 향상시키므로, 본 예시에 있어서는 표시될 필수적인 UI 오브젝트라고 정의한다.
도 17(B)는 독립 UI로서 에어컨디셔너 리모콘 UI만이 상기 터치패널(20)에 표시되는 것을 보여준다. 도 17(B)의 소영역(1)∼(7)에 대응하는 예시적인 UI오브젝트속성정보가 아래에 도시되어 있다. 복수의 오브젝트가 배치되는 단 하나의 에어컨디셔너(1)의 리모콘의 UI로서 식별되도록, interface의 태그의 값은 "AIR1_interface"로 설정된다.
Interface id="AIR1_interface"
(1) ID="switch2" priority="0"
(2) ID="set_window" priority="0"
(3) ID="temp" priority="1"
(4) ID="wind_velo" priority="1"
(5) ID="direction" priority="2"
(6) ID="mode" priority="3"
(7) ID="title" priority="0"
상기 에어컨디셔너 리모콘 UI에서는, 예를 들면, 소영역(1)에 도시된 "전원"키는 필수적인 키이고, 소영역(2)에 도시된 "설정 온도"는 필수적이므로, 그 priority 값이 0으로 설정된다. 또한, 소영역(3)의 온도상하조절키 및 소영역(4)의 풍속조절키는 중요한 키이므로, 그 priority 값이 1로 설정된다. 이러한 키들과 비교하여 우선순위가 낮은, 소영역(5)의 풍향조절키의 priority 값이 2로 설정되고, 소영역(6)의 모드키의 priority 값은 3으로 설정된다. 소영역(7)의 문자열은, 유저에 의한 입력을 접수하는 키가 아니고, 상기 에어컨디셔너 리모콘 UI의 명칭을 나타내는 UI 오브젝트이므로, 본 예시에서 표시될 필수적인 UI 오브젝트로 정의되게 된다.
이와 같이, 본 실시예에 따르면, 각각의 UI 오브젝트와 다른 UI 오브젝트 간의 관계에 의거하여 정의된 우선순위정보(priority 값)가 UI오브젝트속성정보로서 각각의 UI정의파일의 UI오브젝트정의정보에 기억된다. 상기 우선순위정보는, UI생성부(13)가 UI합성처리에 있어서 UI 오브젝트의 자동선택처리를 행할 때, 각각의 UI 오브젝트를 합성 UI에 채용하는지의 여부를 판정하기 위한 정보로서 사용된다. 상기 표시부(24) 상의 UI 표시 영역은 제한되기 때문에, 우선순위가 낮은 UI 오브젝트는 합성 UI 생성 시에 채용되지 않는다. 그 대신에, 원래는 다른 UI에 포함된 우선순위가 높은 UI 오브젝트가 합성 UI에 채용된다.
다음으로, 도 18 내지 도 20에 도시된 흐름도를 참조하여, 본 실시예에 따른 복수의 어플리케이션의 UI를 합성할 때의 동작에 관하여 설명한다.
도 18은 본 실시예에 따라, 상기 UI생성부(13)에 의해 UI정의파일 또는 합성UI정의파일로부터 UI를 생성하여 사용가능하게 하는 처리 전체를 예시하는 흐름도이다. 우선, 유저에 의한 입력부(22)로의 조작 입력 등에 의거하여 어플리케이션이 기동되어, 상기 어플리케이션실행부(11)가 해당 어플리케이션에 따른 UI의 생성을 지시하면, UI를 생성하여 사용가능하게 하는 처리가 시작된다. 이러한 처리가 시작되면, UI를 표시하는 권한을 가진 어플리케이션이 UI정의파일(XML 파일)을 지정한다(단계 S11). 이러한 UI를 표시하는 권한을 가진 어플리케이션은, 휴대전화(1)의 배경에서 기동하는 것이 아니고, 상기 어플리케이션의 최상위에서 동작하는 것이다. 이러한 처리의 시작의 계기가 되는 동작은, UI를 사용하는 어플리케이션을 기동하기 위한 유저에 의한 조작, 또다른 어플리케이션의 실행 시에 UI를 이용하는 어플리케이션을 기동하기 위한 사용자에 의한 조작 등일 수도 있다.
다음으로, 상기 UI생성부(13)는, 단계 S11에서 특정된 UI정의파일의 수가 1개 이상인지의 여부를 판정한다(단계 S12). 특정된 파일의 수가 1개인 것으로 판정되는 경우, 상기 UI생성부(13)는, 지시받은 어플리케이션이 복수의 UI의 합성을 요구하고 있지 않은 것으로 판단하여, 단계 S13으로 이동한다. 단계 S13에 있어서, 상기 UI생성부(13)는, 특정된 UI정의파일을 UI정의파일기억영역(52) 또는 합성UI정의파일기억영역(56)으로부터 검색하고, UI정의파일이 합성UI정의파일인지의 여부를 판정한다.
단계 S13에서, 특정된 파일이 합성UI정의파일이 아닌 것으로, 즉 상기 특정된 파일이 UI정의파일기억영역(52)으로부터 검색된 독립 UI의 UI정의파일인 것으로 판정된 경우에는, 상기 처리가 단계 S14로 이동한다.
단계 S14에서, 특정된 독립 UI의 UI정의파일에 대한 XML 파싱을 행한 후, 상기 UI생성부(13)가 DOM 처리(단계 S15)을 행한다. 이 경우와 같이, 단 하나의 UI정의파일이 특정되고, 그것이 독립 UI의 UI정의파일인 경우에는, 그 이후의 처리가 종래의 UI 생성처리와 같아진다. 즉, 파싱 및 DOM 처리가 그 위에서 행하여진 이후의 UI정의파일에 의거하여, 상기 UI생성부(13)는 UI 생성처리를 행한다(단계 S16). 단계 S16에서의 UI 생성처리에 관해서는 후술한다. 다음으로, UI 생성처리에 의해 생성된 XML 파일의 UI에 의거하여, 상기 UI생성부(13)는, 상기 터치패널(20)의 표시부(24)의 UI 표시 영역에 UI를 표시하는 처리를 행한다(단계 S17). 이에 따라, 휴대전화(1)에 독립 UI가 사용될 수 있다.
한편, 단계 S11에서 특정된 파일의 수가 1개보다 많은 경우, 상기 UI생성부(13)는, 어플리케이션이 복수의 UI의 합성을 요구하고 있다고 판단하고, 각각의 XML 파일에 대한 XML 파싱(단계 S18) 및 DOM 처리(단계 S19)를 행한다. 단계 S20에서, 상기 UI생성부(13)는, 상기 파싱 및 DOM 처리가 모든 UI정의파일에 대하여 완료된 것인지의 여부를 판정한다. 완료되지 않은 경우에는, 상기 처리가 단계 S18로 복귀하여, 나머지 UI정의파일에 대한 파싱 및 DOM 처리를 행하게 된다.
단계 S20에서 모든 UI정의파일에 대한 파싱 및 DOM 처리가 완료된 것으로 판정되는 경우에는, 상기 UI합성처리부(60)는 상기 파싱 및 DOM 처리가 완료된 복수의 UI를 합성한다(단계 S21). 즉, 상기 UI생성부(13)는 복수의 UI의 생성(합성)을 지시한다. 단계 S21에서의 UI합성처리에 관해서도 후술한다.
단계 S21에서 UI합성처리가 이루어지는 경우, 상기 합성UI정의파일생성부(63)는 상기 합성 UI의 합성UI정의파일을 생성한다. 그 후에 처리 전체가 종료되지만, 여기에서 생성된 합성UI정의파일을 사용하여 처리가 재개되면, 단계 S11에서 합성UI정의파일이 특정된다. 이에 따라, 단계 S12에서는 하나의 파일이 특정되고, 단계 S13에서는 합성UI정의파일이 특정된 것으로 판정된다.
단계 S13에서 하나의 특정된 파일이 합성UI정의파일인 것으로 판정되는 경우에는, 상기 처리가 단계 S22로 이동한다. 상기 특정된 파일이 합성UI정의파일이고, 합성UI정의파일로서 생성(준비)된 합성 UI가 실제 사용을 위해 기동되는 경우에는, UI 오브젝트들을 하나의 합성 UI(합성 유저인터페이스 오브젝트 그룹)로서 표시부(24)에 표시하여 그들을 사용할 수 있는 상태로 만들 필요가 있다. 그러므로, 상기 UI생성부(13)는, 대상이 되는 합성UI정의파일과 연관되어 저장된, 관련 어플리케이션 정보를, 상기 기억부(50)의 관련어플리케이션정보기억영역(55)으로부터 취득한다(단계 S22). 다음으로, 취득한 관련 어플리케이션 정보에 의거하여, 상기 UI생성부(13)는, 어플리케이션실행부(11)에 대하여, 관련되는 어플리케이션을 배경에서 기동하도록 지시한다(단계 S23).
그 후, 상기 처리는 단계 S14로 이동하고, 그 후의 처리는 독립 UI의 UI정의파일처리의 경우와 같게 된다. 즉, 상기 UI생성부(13)는, 특정된 합성 UI의 UI정의 파일에 대한 XML 파싱(단계 S14) 및 DOM 처리(단계 S15)를 행한다. 더욱이, 특정된 합성UI정의파일에 의거하여, 상기 UI생성부(13)는 합성UI생성처리를 행한다(단계 S16). 그 후, 상기 UI생성부(13)는, 생성된 합성 UI를 상기 터치패널(20)의 표시부(24)의 UI 표시 영역에 표시하는 처리를 행하고(단계 S17), 합성UI생성처리 전체를 종료한다.
다음으로, 도 19에 도시된 흐름도를 참조하여, 도 18의 단계 S16에서의 UI생성처리에 대하여 추가로 설명한다. 단계 S16에서의 UI생성처리는 협의의 UI생성처리, 즉 UI정의파일을 해석하고, 이러한 해석 결과에 의거하여 UI를 표시부(24)에 표시할 수 있는 상태로 만드는 처리이다.
도 19에 도시된 UI생성처리의 개시 시, 특정된 UI정의파일에 기초한 독립 UI 또는 합성 UI 중 어느 하나가 단 하나의 DOM 다큐먼트(또는 DOM 노드)로 형성된다. 우선, 상기 UI생성부(13)는 DOM 다큐먼트의 표시와 관련하여 해석을 행한다(단계 S31). UIML 형식으로 기술된 UI정의파일에 대해서는, structure 태그 또는 style 태그를 갖는 속성들이 해석된다. 다음으로, 상기 UI생성부(13)는 DOM 다큐먼트의 동작에 관련하여 해석을 행한다(단계 S32). UIML 형식으로 기술된 UI정의파일에 대해서는, behavior 태그 등을 갖는 속성이 해석된다.
다음으로, 상기 UI생성부(13)는, DOM 다큐먼트에 포함된 표현을, 각각의 단말에 의존하는 기술로 변환하는 처리를 행한다(단계 S33). 더욱이, 상기 UI생성부(13)는, 단계 S33에서의 변환 처리의 결과에 의거하여 사용될 UI 오브젝트의 리소스를 선택하고, 각각의 속성(property)을 설정한다(단계 S34). 이 때에 필요한 UI 오브젝트의 리소스는 개별UI리소스로서 개별리소스기억영역(56)에 또는 공통UI리소스로서 공통UI리소스기억영역(58)에 기억된다. 이어서, 상기 UI생성부(13)는 각각의 UI 오브젝트를 포함하는 UI의 플롯(plot) 처리를 행한다(단계 S35). 이에 따라, UI생성처리가 종료되고, 상기 UI생성부(13)는 도 18의 단계 S17로 이동하여 UI 표시 처리를 행한다.
이에 따라, 상기 휴대전화(1)는 독립 UI를 사용하는 어플리케이션을 실행하면서, 독립 UI의 UI정의파일에 의거하여 독립 UI를 표시부(24)에 표시할 수 있게 된다. 예를 들면, TV 리모콘의 어플리케이션에 의해 TV 리모콘의 UI정의파일이 특정되는 경우에는, 상술된 도 16(A)에 도시된 바와 같이 UI가 표시된다. 상기 에어컨디셔너 리모콘의 어플리케이션에 의해 에어컨디셔너 리모콘 UI의 UI정의파일이 특정되는 경우에는, 도 16(B)에 도시된 바와 같이 UI가 표시된다. 또한, 합성 UI를 사용하는 어플리케이션의 실행에 따라 합성UI정의파일에 의거하여 합성 UI를 표시부(24)에 표시할 수도 있다.
다음으로, 도 20에 도시된 흐름도를 참조하여, 도 18에 도시된 단계 S21에서의 UI합성처리, 즉 복수의 UI의 생성이 지시되었을 때에 행해지는 처리에 대해서 추가로 설명한다.
도 20에 도시된 UI합성처리가 시작되면, 상기 UI합성처리부(60)는, 파싱 및 DOM 처리가 완료된 복수의 UI의 각각의 DOM 노드를 구성하는 UI 오브젝트를 모두 추출하고, 각각의 UI 오브젝트의 속성정보를 해석한다(단계 S51). 도 14에 도시된 바와 같이, 각각의 UI 오브젝트의 해석해야 할 속성 정보는, 각각의 UI 오브젝트의 우선순위정보(priority)를 포함하여 여러가지가 있다.
모든 UI 오브젝트의 속성 정보를 해석한 후, 상기 UI합성처리부(60)는, 추출된 UI 오브젝트들 가운데, 합성 UI에 채용될 UI 오브젝트를 선택(추출)하기 위하여 자동 선택이 지시되는지의 여부를 판정한다(단계 S52).
단계 S52에서의 자동 선택에 의해 UI 합성이 지시되는 경우에는, 상기 UI오브젝트선택처리부(62)가 UI오브젝트자동선택처리를 행한다(단계 S53). 이에 따라, 합성 UI를 구성하는 UI 오브젝트로서 채용될 UI 오브젝트가 자동으로 추출된다. 상기 UI오브젝트자동선택처리에서는, 예를 들면 각각의 UI 오브젝트에 대해서 해석한 속성 정보의 우선순위정보로서 priority 0∼2의 값을 갖는 UI 오브젝트를 합성 UI에 채용하는 등의 소정의 규칙에 의거하여, 상기 UI오브젝트선택처리부(62)가 UI 오브젝트를 자동으로 선택(추출)한다.
이와는 달리, 단계 S52에서 자동선택에 의한 UI 합성이 지시되지 않는 경우에는, 상기 UI오브젝트선택처리부(62)가 유저에 의한 UI 오브젝트의 선택 처리를 행한다(단계 S54). 이에 따라, 유저에 의한 선택에 의거하여 합성 UI를 구성하는 UI 오브젝트로서 채용될 UI 오브젝트가 추출된다. UI 오브젝트의 유저에 의한 선택 처리에서는, 유저에 의한 입력 조작에 의거하여 유저가 선택한 UI 오브젝트가 합성 UI에 채용된다(채용될 오브젝트로서 추출됨). 이 경우, 상기 UI오브젝트선택처리부(14)는, UI오브젝트선택화면 상에서, 선택된 UI 오브젝트의 크기가 UI 표시 영역에서 차지하는 합계의 점유율을 계산하고, 상기 UI 표시 영역에 핏팅될 수 없는 UI 오브젝트의 선택(추출)을 방지하게 하는 것이 바람직하다.
합성 UI에 채용될 UI 오브젝트가 모두 선택(추출)된 후, 상기 자동레이아웃처리부(64)는, 선택(추출)한 UI 오브젝트를 UI표시 영역에 가상적으로 배치하는 처리를 행한다(단계 S56). 이 때, 상기 UI리소스정형부(65)는, 선택한 UI 오브젝트의 표시 사이즈를 필요에 따라 조절한다. 또한, 상기 자동레이아웃처리부(64)는, UI 오브젝트가 또다른 UI 오브젝트에 너무 접근하지 않도록, UI 오브젝트 주위에 적절한 간격(마진)을 설정한다.
선택한 UI 오브젝트의 배치 처리가 완료되면, 상기 UI합성처리부(60)는, 확인된 레이아웃의 UI 오브젝트들을 단 하나의 DOM 노드로서 집약시킨다(단계 S57). 다음으로, 상기 합성UI정의파일생성부(63)는, 선택한 UI 오브젝트들의 UI오브젝트정의정보에 의거하여, 선택한 UI 오브젝트로 구성되는 합성 UI를 정의하는 합성UI정의파일을 생성한다(단계 S58). 이와 같이 생성된 합성UI정의파일은, XML 형식의 하나의 파일로서, 상기 기억부(50)의 합성UI정의파일기억영역(56)에 기억된다.
단계 S58에서 합성UI정의파일이 생성된 후, 상기 UI합성처리부(60)는, 합성 UI에 대하여 선택(추출)된 UI 오브젝트에 의거하여 관련 어플리케이션 정보를 생성한다(단계 S59). 여기에서 생성된 관련 어플리케이션 정보는, 합성 UI에 대하여 선택(추출)된 각각의 UI 오브젝트에 대해 유저에 의한 입력이 있는 경우에, 해당 UI 오브젝트에 관련된 어플리케이션을 제어하기 위한 정보이다. 선택된 UI 오브젝트에 기초한 관련 어플리케이션 정보가 생성된 후, 상기 UI합성처리부(60)의 합성UI정의파일생성부(63)는 상기 관련 어플리케이션 정보를 합성UI정의파일과 연관시켜, 상기 관련어플리케이션정보기억영역(55)에 기억시킨다(단계 S60). 그 후, 상기 UI합성처리부(60)는, UI합성처리의 완료를 상기 어플리케이션실행부(11)에 통지하고(단계 S61), UI합성처리를 종료한다.
이에 따라, 생성된 합성 UI(합성 유저인터페이스 오브젝트 그룹)를 바로 표시부(24)에 표시할 수 있게 된다. 또한, 생성된 합성 UI를 바로 사용하지 않고도, 추후에 상기 합성UI정의파일기억영역(56)에 기억된 합성UI정의파일을 검색 및 사용할 수도 있다.
상술된 UI합성처리 이후에, 도 18을 참조하여 설명한 전반적인 UI생성처리를 통하여, 독립 UI들로부터 선택(추출)된 UI 오브젝트로 합성 UI가 생성된다. 예를 들면, 도 16(A)에 도시된 TV 수상기의 리모콘 어플리케이션 UI 및 도 16(B)에 도시된 에어컨디셔너의 리모콘 어플리케이션 UI로부터 선택된 UI 오브젝트를 사용하여, 도 21에 도시된 합성 UI(합성 유저인터페이스 오브젝트 그룹)를 생성할 수 있게 된다.
도 21은 UI 오브젝트 속성 정보의 우선순위값(priority)이 0∼2인 각각의 UI의 UI 오브젝트들을 채용하는 기준에 의거하여, 상기 UI오브젝트선택처리부(62)에 의하여 UI 오브젝트의 자동 선택에 의해 생성된 예시적인 합성 UI(합성 유저인터페이스 오브젝트 그룹)를 보여준다. 도 21에 도시된 합성 UI에서는, 상기 터치패널(20)의 UI 표시 영역이 2개의 영역, 즉 TV 리모콘 UI로부터 선택된 UI 오브젝트를 배치하기 위한 상부 영역 및 에어컨디셔너 리모콘 UI로부터 선택된 UI 오브젝트를 배치하기 위한 하부 영역으로 분할된다.
상술된 바와 같이, 본 실시예에 따르면, 2개의 XML 파일을 해석하고, 우선순위가 높은 UI 오브젝트들을 추출하여, 그들을 자동 레이아웃함으로써 복수의 UI가 합성된다. 이에 따라, 유저는 복수의 어플리케이션 가운데 또는 상기 어플리케이션들에 기초한 UI를 전환하지 않으면서도, 복수의 UI를 하나의 합성 UI로 사용할 수 있게 된다.
(제2실시예)
도 1은 본 발명의 제2실시예에 따른 UI 생성장치인 휴대 단말의 개략적인 구성을 예시한 블럭도이다.
도 1에 도시된 휴대 단말(2)은, 예를 들면 PDA(Personal Digital Assistance) 등의 휴대통신단말이며, 터치패널(21), 제어부(80) 및 기억부(50)를 구비한다. 상기 터치패널(21)은, 버튼 등의 소프트키(UI 오브젝트)를 포함하는 UI를 표시하기 위한 표시부(23)로서의 기능 및 손가락, 펜 등에 의한 소프트키(UI 오브젝트)로의 입력을 감지하기 위한 입력부(25)로서의 기능을 가진다. 상기 터치패널(21)은, 예를 들면 표면탄성방식(surface elastic type)의 터치패널, 액정 디스플레이에 이미지 센서 기능이 부가되어 일체로 구성된 이미지센서패널, 또는 여타의 적합한 터치패널일 수도 있다. 상기 제어부(80)는, 상기 기억부(50)에 기억되어 있는 프로그램에 따라 상기 터치패널(21)과 연동하여 동작을 행하기 위한 부분에 입력수단판정부(71) 및 UI제어부(90)를 구비하고 있다. 상기 제어부(80)는, 예를 들면 CPU(중앙처리장치) 등의 임의인 적합한 프로세서일 수도 있고, 상기 제어부(80)의 각 기능은, 해당 프로세서 상에서 실행되는 소프트웨어나 또는 각 기능의 처리에 특화된 전용의 프로세서(예를 들면, DSP(Digital Signal Processor))로 구성될 수도 있다. 상기 입력수단판정부(71)는, 입력장치의 종별을 판정하는 입력장치판정부(72) 및 입력 위치를 판정하기 위한 입력위치판정부(73)를 구비한다. 상기 UI제어부(90)는 UI생성부(13)와 오브젝트제어부(91)를 구비하고, 상기 UI생성부(13)는, 도 13에서의 구성과 동일한 방식으로 UI합성처리부(60)를 포함한다. 상기 UI생성부(13) 및 UI합성처리부(60)의 기능들은 도 13에서의 구성과 동일하므로, 그 상세한 설명은 생략한다. 상기 오브젝트제어부(91)는, 입력을 수신한 소프트키(UI 오브젝트)와 연관된 동작 정보(어플리케이션)를 기억부(50)로부터 취득하고, 해당 어플리케이션 프로그램에 따라 UI 오브젝트의 기능(동작)을 실행한다. 상기 기억부(50)는, 도 13에서의 구성과 동일한 방식으로, 상기 어플리케이션기억영역(51), UI정의파일기억영역(52), 개별UI리소스기억영역(도시되지 않음), 공통UI리소스기억영역(도시되지 않음), 관련어플리케이션정보기억영역(도시되지 않음), 합성UI정의파일기억영역(도시되지 않음)을 구비하고, 예를 들면 휘발성메모리(SRAM 등), 비휘발성메모리(EEPROM 등), 또는 여타의 적합한 기억매체일 수도 있다. 상기 기억부(50)의 각 기억영역의 기억 내용은 도 13에서의 구성과 동일하므로, 그 상세한 설명은 생략한다.
상기 터치패널(21)에는, 상기 UI제어부(90)에 의해 독립 UI 또는 합성 UI 중 어느 것의 유저인터페이스가 표시된다. 상기 UI제어부(90)의 UI생성부(13)는, 상기 기억부(50)의 UI정의파일기억영역(52)을 참조하여, UI 생성에 필요한 UI정의파일을 취득한다. 상기 UI생성부(13)는, XML 형식으로 기술된 UI정의파일에 대하여 파싱 및 DOM(Document 오브젝트 Model) 처리 등을 행하여 UI를 생성하고, 상기 생성한 UI를 상기 UI제어부(90)가 터치패널(21)에 표시한다. 상기 터치패널(21)에 합성 UI를 표시할 경우, 상기 UI제어부(90)의 UI합성처리부(60)는, UI정의파일에 포함된 각종의 UI 오브젝트를 정의하는 UI오브젝트정의정보를 해석한다. 이어서, 상기 UI합성처리부(60)는, 자동 선택 또는 유저에 의한 입력에 의하여 다수의 UI 오브젝트들 가운데 필요로 하는 UI 오브젝트를 선택하는 처리를 행함으로써(예를 들면, 각각의 UI 오브젝트의 레이아웃 정보(UI 오브젝트의 표시 위치 및 표시 사이즈에 관한 정보), 우선순위 등을 고려하여), 합성 UI를 생성한다.
상기 터치패널(21)에 표시된 UI 오브젝트에 대하여 유저가 입력 조작을 행하는 경우, 상기 입력장치판정부(71)는, 상기 입력장치판정부(71)로부터의 유저 입력의 장치에 대한 정보(펜, 손가락 등의 입력수단) 및 상기 입력위치판정부(73)로부터의 위치에 대한 정보(터치패널 상에서의 좌표)를 취득한다.
상기 입력장치판정부(72)는, 상기 터치패널(21)로의 입력을 검출할 수 있고, 상기 입력의 접촉 면적을 산출해서 입력장치(수단)를 판별할 수 있다. 예를 들면, 상기 표면탄성방식의 터치패널(21)의 이용 시에는, 입력에 의해 표면탄성파의 흡수량만큼 신호값이 변화되므로, 상기 입력장치판정부(72)는 이러한 변화가 발생한 시간을 적분함으로써 접촉 면적을 산출할 수 있다. 예를 들면, 상기 입력장치판정부(72)는, 상기 터치패널(21)에의 접촉 면적이 소정의 값 미만일 경우에는, 입력을 위하여 펜이 사용되는 것으로 판정하는 한편, 상기 터치패널(21)에의 접촉 면적이 소정의 값 이상인 경우에는, 입력을 위해 손가락이 사용되는 것으로 판정한다.
또한, 상기 입력장치판정부(72)로서 이미지센서를 사용할 수도 있다. 예를 들면, 상기 터치패널(21)로서 액정 디스플레이에 이미지 센서 기능이 부가되어 일체로 구성되는 이미지 패널의 사용 시에는, 손가락 또는 펜과 같은 입력디바이스(입력수단)가 상기 이미지 패널의 표면에 접촉하면, 화소마다 수광량이 전하로 변환되어, 전 영역의 화소를 읽어 대상 이미지를 재현할 수 있게 된다. 이에 따라, 상기 입력장치판정부(72)는, 대상 이미지의 특징부에 의거하여 입력장치를 판정할 수 있다. 또한, 상기 터치패널(21)에 대한 입력 조작을 행하는 입력장치의 판정을 위하여 이미지센서 대신에 카메라를 사용할 수도 있다.
상기 터치패널(21)로의 입력이 검출되면, 상기 입력위치판정부(73)가 입력 위치를 판정한다. 예를 들면, 상기 표면탄성방식의 터치패널(21)의 이용 시, 상기 입력위치판정부(73)는, 진동을 주고나서 반사된 진동이 되돌아올 때까지의 시간을 측량함으로써 입력 위치를 판정할 수 있다. 또한, 상기 입력위치판정부(73)는, 예를 들면 터치패널(21)로서 액정 디스플레이에 이미지 센서 기능이 부가되어 일체로 구성되는 이미지 패널을 사용하는 경우, 대상 이미지의 특징부의 표시 위치에 의거하여, 입력 위치를 판정할 수 있다.
상기 터치패널(21) 상의 복수의 위치에서 동시적인 입력들이 있는 경우에는, 상기 입력들에 대하여, 상기 입력장치판정부(72)가 각각의 입력장치들을 판정하고, 상기 입력위치판정부(73)는 각각의 입력 위치들을 판정한다.
상기 오브젝트제어부(91)는, 상기 입력위치판정부(73)에 의해 판정되는 입력 위치에 따라, 상기 터치패널(21)의 입력 위치에 표시된 UI 오브젝트와 연관된 기능을 실행한다. 예를 들면, 상기 오브젝트제어부(91)는, "전원키"로의 입력에 응답하여 전원의 ON과 OFF를 전환시키거나, 또는 "숫자키"로의 입력에 응답하여 소정의 프로그램을 선국하는 동작을 행한다. 또한, 상기 오브젝트제어부(91)는, 상기 입력장치판정부(72)에 의해 판정되는 입력장치에 의거하여, UI 오브젝트의 기능을 전환할 수 있다. 예를 들면, 상기 터치패널(21)로의 입력이 검출되어, 해당 입력이 상기 입력장치판정부(72)에 의해 제1입력수단에 의한 메인 입력(예를 들면, 펜에 의한 입력)인 것으로 판정되는 경우에는, 상기 오브젝트제어부(91)가 해당 입력 위치에서 UI 오브젝트의 일반적인 기능을 실행한다. 상기 오브젝트제어부(91)는, 상기 입력장치판정부(72)에 의해 상기 터치패널(21)로의 입력이 제2입력수단에 의한 서브 입력(예를 들면, 손가락에 의한 입력)인 것으로 판정되는 경우에는, 일반적인 기능과는 다른 또다른 기능을 실행할 수도 있다. 더욱이, 상기 오브젝트제어부(91)는, 입력의 수에 의거하여 UI 오브젝트의 기능을 바꿀 수도 있다. 예를 들면, 상기 터치패널(21)로의 입력 수가 하나인 경우에는, 해당 입력 위치에서의 UI 오브젝트의 일반적인 기능이 실행되는 반면, 상기 터치패널(21)ㄹ의 입력 수가 2개 이상인 경우에는, 일반적인 기능과는 다른 또다른 기능이 실행된다.
도 2는 본 발명의 제2실시예에 따른 휴대 단말의 동작을 예시한 흐름도이다. 본 실시예는 메인 입력을 위한 제1입력수단(입력장치)이 펜이고, 서브 입력을 위한 제2입력수단(입력장치)은 손가락인 것으로 설명하고 있지만, 상기 제1입력 및 제2입력은 여타의 적합한 입력수단에 의하여 이루어질 수 있다.
전원 공급 등에 의한 휴대 단말(2)의 기동 시, 상기 제어부(80)는 상기 터치패널(21)로의 입력수단의 수를 카운트하기 위한 입력수 n, 및 경과 시간을 나타내는 파라미터인 경과 시간 t를 초기화한다(n=0, t=0)(단계 S001). 상기 터치패널(21)로의 입력(접촉)이 있는 경우(예를 들면, 터치패널에 펜 또는 손가락이 접촉하는 경우), 상기 입력수단판정부(71)는, 이전의 입력 정보(예를 들면, 터치패널(21)에 어느 입력장치가 접촉하고 있는지) 등에 의거하여, 상기 입력이 이미 접촉을 완료한 입력인지의 여부를 판정한다(단계 S003). 상기 입력이 새로운 입력인 경우, 상기 제어부(80)는 상기 터치패널(21)에 접촉하고 있는 입력수 n을 1 만큼 증가시킨다(n=n+1)(단계 S004). 이어서, 상기 입력위치판정부(73)가 상기 입력의 접촉 좌표(Xn, Yn)를 취득/보유하고(단계 S005), 상기 입력장치판정부(72)는 상기 입력의 접촉 면적 Zn을 취득/보유한 후(단계 S006), 처리는 입력 시의 제어 흐름으로 되돌아간다(단계 S007).
이와는 대조적으로, 단계 S002에서 상기 터치패널(21)로의 입력이 접수되지 않거나 또는 해제되면(예를 들면, 터치패널로부터 펜 또는 손가락이 떨어지면), 상기 제어부(80)는 입력수 n이 0 보다 큰지의 여부를 판정한다(단계 S009). 상기 입력수 n이 0 보다 큰 경우에는, 하나의 입력이 비접촉(해제) 상태가 되므로, 상기 제어부(80)는 입력수 n을 감산시킨다(단계 S010). 상기 입력장치판정부(72)는, 상기 터치패널(21)로부터 해제된 입력수단이 손가락인지의 여부를 판정한다(단계 S011). 상기 입력장치판정부(72)가 해제된 입력수단이 손가락인 것으로 판정하는 경우에는, 상기 처리가 해제 시의 제어 흐름으로 이동한다(단계 S012).
단계 S002∼S012로부터의 처리는, 휴대 단말(2)이 동작하고 있는 동안 루프(loop)로서 행해지고, 상기 제어부(80)는 루프의 회수에 따라 경과 시간 t를 증가시킨다(t++)(단계 S008).
도 3은 입력 시의 제어 흐름의 상세를 예시한 흐름도이다. 상기 입력장치판정부(72)는, 입력의 접촉 면적 Zi(1≤i≤n)가 손가락의 면적 역치 A보다 큰지의 여부를 판정한다(단계 S101). 상기 입력장치판정부(72)는, 접촉 면적 Zi가 면적 역치 A보다 큰 경우(단계 S101의 Yes), 입력 수단이 손가락인 것으로 판정하는 한편(Ti=YUBI)(단계 S102), 접촉 면적 Zi가 면적 역치 A 이하인 경우에는(단계 S201의 No), 입력 수단이 펜인 것으로 판정한다(Ti=PEN)(단계 S103). 상기 단계 S101∼S103은 입력수 n 만큼 루프로서 행하여진다. 다음으로, 입력수 n이 1인 경우에는(단계 S104의 Yes), 처리 1이 행하여지는 반면(단계 S106), 입력수 n이 1이 아니고, 입력 수단이 펜인 경우에는(단계 S105의 YES), 처리 2가 행하여진다(단계 S107).
도 4는 도 3의 단계 S106에 도시된 처리 1(입력수 n이 1인 경우에 행하여진 처리)의 상세를 예시한 흐름도이다. 상기 오브젝트제어부(91)는, 접촉 좌표(X1, Y1) 상에서 UI 오브젝트 S1의 오브젝트정의정보를 UI정의파일(52)로부터 취득한다(단계 S201). 상기 입력수단이 제1입력수단으로서 펜(메인 입력)인 경우(단계 S202에서 T1=PEN), 상기 UI제어부(90)는 입력 이벤트에 응답하여, UI 오브젝트 S1로의 메인 입력에 대한 동작(메인 동작)을 실행한다(단계 S203). 상기 입력수단이 제2입력수단으로서 손가락(서브 입력)인 경우에는(단계 S202에서 T1=YUBI), 상기 UI제어부(90)는 입력 이벤트에 응답하여, UI 오브젝트 S1로의 서브 입력에 대한 동작(서브 동작)을 실행한다(단계 S204).
도 6은 도 4의 단계 S204에 도시된 UI 오브젝트로의 서브 입력에 응답하여 동작(서브 동작)의 상세를 예시한 흐름도이다. 상기 제어부(80)는, 손가락에 의한 입력(서브 입력)의 입력 좌표(Xn, Yn)에 기초한 손가락 입력의 UI 영역을 판정한다(단계 S401). 손가락 입력의 입력 영역(손가락 입력의 접촉 영역(면적), 해당 손가락 입력을 내부에 포함하는 소정의 영역(예를 들면, 손가락에 의한 입력 위치 주위의 사각형이나 원형 영역) 등)이 합성 UI에 포함된 인터페이스들 간의 경계에 있는 경우, 상기 제어부(80)는, 손가락 입력(누름) 시의 영역 정보인 UI 영역 At에 "UI 영역 경계" 플래그를 설정한다(단계 S402). 손가락 입력이 소정의 UI 영역에 대한 것이라면, 상기 제어부(80)는 상기 UI 영역에 관한 정보를 UI 영역 At에 설정한다(단계 S403). 상기 제어부(80)는 상기 UI 영역 At를 기억부(50)에 기억시킨다. 여기서, UI 영역 At는, 예를 들면 도 25(b)에 도시된 합성 UI의 a1∼a3 및 도 25(a)에 도시된 독립 UI의 b1의 각각의 영역을 의미한다. UI 영역 At에 UI 영역 경계 플래그가 설정되는 경우(단계 S404의 Yes), 상기 UI합성처리부(60)는, UI 영역 경계를 이동시키고 합성 UI의 각 UI 영역의 크기를 변경하기 위하여 상기 합성 UI의 자동레이아웃처리를 시작한다(단계 S405). 상기 자동레이아웃처리에서는, UI 영역 경계를 손가락 입력의 접수가 종료된 위치로 이동시키기 위하여 합성 UI의 재합성 처리가 행하여진다. 상기 UI합성처리부(60)는, 손가락 입력의 좌표의 변화에 따라, 각 UI 영역의 면적을 계산하고, 해당 면적에 따라 표시될 UI 오브젝트를 선택하여, 합성 UI를 재구성한다. 상기 자동레이아웃처리는, 손가락이 터치패널(21)로부터 릴리즈(release, 떨어지다)될 때까지 계속해서 행하여진다. UI 영역 At가 영역 경계가 아닌 경우에는, 상기 자동레이아웃처리를 행하지 않으면서도 서브 동작이 종료된다(단계 S404의 No).
도 5는 도 3의 단계 S107에 도시된 처리 2(입력수 n이 1이 아니고, 입력장치가 펜인 경우에 행하여진 처리)의 상세를 예시한 흐름도이다. 상기 오브젝트제어부(91)는, 입력 i(1<i≤n)에 대응하는 접촉 좌표(Xi, Yi) 상에서 UI 오브젝트 Si의 오브젝트정의정보를 UI정의파일(52)로부터 취득한다(단계 S301). 이어서, 상기 오브젝트제어부(91)는, 펜 및 손가락에 의한 복수의 입력에 대응하여 UI 오브젝트의 처리를 실행한다(단계 S302). 도 3의 단계 S104에서 입력수 n이 1보다 큰 것으로 판정하고, 단계 S105에서의 새로운 입력이 펜인지의 여부의 판정을 통하여, 예를 들면 손가락(제2입력수단)이 터치패널(21)을 터치하면서, 펜(제1입력수단)에 의하여 소정의 소프트키(UI 오브젝트)가 선택되는 경우, 상기 처리 2가 행하여진다.
도 8은 도 5의 단계 S302에 도시된 펜 및 손가락에 의한 복수의 입력에 대응하는 UI 오브젝트 처리의 상세를 예시한 흐름도이다. 상기 오브젝트제어부(91)는, 상기 UI정의파일(52)로부터 입력 i(1<i≤n)에 대응하는 접촉 좌표 (Xi, Yi) 상의 UI 오브젝트 Si의 오브젝트정의정보를 취득한다(단계 S601). 상기 오브젝트정의파일의 취득 후의 처리는 제1입력수단으로서 펜 입력의 입력 상태에 따라 크게 구분된다. UI 오브젝트가 개별적으로 특정되는 경우, 예컨대 펜 입력이 터치패널(21) 상의 개개의 UI 오브젝트를 가리키는 경우, 상기 오브젝트제어부(91)는 개별적으로 특정된 UI 오브젝트를 리스트화하고, 상기 리스트를 재합성 리스트 G로서 상기 기억부(50)에 기억시킨다(단계 S603). 펜 입력이 터치패널(21) 상에서, 예를 들면 원을 그림으로써 합성 UI의 소정의 영역 내의 UI 오브젝트를 선택하는 경우, 상기 오브젝트제어부(91)는 소정의 영역 내의 UI 오브젝트를 리스트화하고, 상기 리스트를 재합성 리스트 G로서 상기 기억부(50)에 기억시킨다(단계 S602). 예를 들어, 상기 재합성 리스트 G는, 합성 UI에 표시된 UI 오브젝트들 가운데, 유저가 다른 UI 오브젝트와의 치환을 원하는 것을 리스트화한 것일 수도 있다. 다음으로, 상기 UI생성부(13)의 UI합성처리부(60)는, 상기 기억부(50)를 참조하여 재합성 리스트 G가 존재하는 지의 여부를 확인한다(단계 S604). 재합성 리스트 G가 있는 경우, 상기 UI합성처리부(60)는, 재합성 리스트 G에 포함된 UI 오브젝트와 다른 UI 오브젝트를 치환한 UI가 상기 터치패널(21) 상에 표시되도록 재합성 UI의 데이터의 재합성 처리를 행한다. 다음으로, 상기 UI제어부(90)는 재합성 처리에 의해 생성된 합성 UI를 상기 터치패널(21) 상에 표시한다(단계 S605). 상기 재합성 처리는, 예를 들면 재합성 리스트 G에 포함된 UI 오브젝트(제1입력수단에 의해 선택된 UI 오브젝트)를 다른 UI 오브젝트로 치환할 수 있다. 더욱이, 상기 재합성 처리는, 예를 들면 재합성 리스트 G에 포함된 UI 오브젝트(제1입력수단에 의해 선택된 UI 오브젝트)를 다른 UI 오브젝트로 치환할 수도 있다. 또한, 특히 상기 재합성 처리는, 재합성 리스트 G에 포함된 UI 오브젝트를, 여타의 UI 오브젝트들 가운데 우선순위가 높은 UI 오브젝트로 치환할 수도 있다.
도 7은 도 2의 단계 S012에 도시된 릴리즈 시의 제어 흐름을 예시한 흐름도이다. 상기 제어부(80)는, 상기 입력위치판정부(73)로부터 취득한 손가락 입력의 좌표 (Xn, Yn)에 의거하여, 손가락 입력이 해제된(제2입력의 접수가 종료된 경우) UI 영역을 판정한다(단계 S501). 상기 손가락 입력이 해제되었을 때, 손가락 입력의 입력 영역이 상기 터치패널(21)의 표시 영역의 경계(예를 들면, 터치패널(21)의 표시부(21)의 가장 외측 영역 또는 상기 가장 외측 영역에서 소정의 거리만큼의 내측 영역 등)를 포함하는 경우, 상기 제어부(80)는, 릴리즈 시의 영역 정보인 UI 영역 Bt에 "표시 영역 경계" 플래그를 설정한다(단계 S502). 상기 손가락 입력이 소정의 UI 영역에 대한 것이라면, 상기 제어부(80)는 UI 영역에 관한 정보를 UI 영역 Bt에 설정한다(단계 S503). 상기 제어부(80)는, 설정된 UI 영역 Bt를 상기 기억부(50)에 기억시킨다. 상기 제어부(80)는 또한 표시 영역의 경계와 손가락 입력의 좌표 사이의 터치패널(21) 상의 거리가 소정의 거리보다 짧은 경우, 상기 손가락 입력의 입력 영역이 표시 영역의 경계를 포함하는 것이라고 판정할 수도 있다. 다음으로 상기 제어부(80)는, 상기 기억부(50)에 기억된 입력 시의 영역 정보로서 UI 영역 At를 참조하고, 상기 UI 영역 At에 UI 영역 경계 플래그가 설정되어 있는 경우에는, 자동레이아웃처리가 행하여지는 것으로 판정한다(단계 S504). 자동레이아웃처리가 행하여지지 않는 경우, 상기 제어부(80)는 릴리즈 시의 UI 영역 Bt를 판정한다(단계 S505). 릴리즈 시의 UI 영역 Bt가 입력 시의 UI 영역 At와 다른 경우, 상기 UI합성처리부(60)는 UI교환처리를 행한다(단계 S506). 상기 UI교환처리에 있어서, 상기 UI합성처리부(60)는, 릴리즈 시의 UI 영역 Bt에서의 인터페이스와, 입력 시의 UI 영역 At에서의 인터페이스를 교환하여 합성 UI를 재합성하고, 상기 UI제어부(90)는 상기 합성 UI를 터치패널(21) 상에 표시한다. 릴리즈 시의 UI 영역 Bt가 표시 영역의 경계 상에 있는 경우, 상기 UI합성처리부(60)는 UI합성패턴변경처리를 행한다(단계 S507). 상기 UI합성패턴변경처리에 있어서, 상기 UI합성처리부(60)는, 입력 시의 UI 영역 구성과는 다른 UI 영역 구성으로 합성 UI를 재합성하고, 상기 UI제어부(90)는 상기 합성 UI를 터치패널(21) 상에 표시한다. 예를 들면, UI합성패턴변경처리에 있어서, 상기 UI합성처리부(60)는, 수직방향으로 배치된 합성 UI의 인터페이스의 일부를 수평방향으로 배치함으로써 합성 UI를 재합성할 수 있다. 자동레이아웃처리가 행하여진 경우에는, 상기 제어부(80)가 상기 자동레이아웃처리를 취소한다(단계 S508). 자동레이아웃처리의 취소에 의해 손가락 입력(제2입력)의 종료 위치가 확인되면, 상기 UI합성처리부(60)는, 합성 UI의 인터페이스들의 표시 영역들 간의 경계를, 손가락 입력의 시작 위치부터 손가락 입력의 종료 위치까지 이동시키도록 재합성 처리를 행한다.
(제2실시예에 따른 UI 교환 처리)
도 9는 본 발명의 제2실시예에 따른 휴대 단말의 UI 교환 처리(단계 S506)를 예시한 도면이다. 도 9(a)에서, 휴대 단말(2)의 터치패널(21)은 합성 UI를 표시하고 있는데, 상기 합성 UI는 메일 어플리케이션 UI(a1), TV 어플리케이션 UI(a2) 및 웹 브라우저 어플리케이션 UI(a3)가 합성된 것이다. 도 9(a)의 휴대 단말(2)에 대하여, 제2입력수단으로서 손가락에 의한 입력(서브 입력)이 시작 위치 T1에서 개시하여, 종료 위치 T2에서 해제되면, 상기 휴대 단말(2)의 터치패널(21)의 합성 UI에서는, 시작 위치 T1의 UI 영역 At에 대응하는 TV 어플리케이션 UI(a2) 및 종료 위치 T2의 UI 영역 Bt에 대응하는 메일 어플리케이션 UI(a1)가 교환된다.
본 실시예에 따르면, 우선, 도 9(a)에 도시된 바와 같이 손가락 입력이 시작 위치 T1에 있을 때, 도 2에 도시된 단계 S002∼S007에서의 처리가 행하여져, 손가락 입력에 대응하는 입력 시의 제어 흐름을 행하게 된다. 도 3에 도시된 입력 시의 제어 흐름에서는 입력수 n이 1이기 때문에, 단계 S106에서의 처리 1이 행하여진다. 도 4에 도시된 처리 1에 있어서는, 손가락 입력(서브 입력)에 대응하는 서브 동작이 행하여지고(단계 S204), 도 6에 도시된 서브 동작에서는, 손가락 입력에 의해 특정된 UI 영역 At(본 실시예에서는 a1)가 상기 기억부(50)에 기억된다(단계 S403).
이어서, 도 9(a)에 도시된 바와 같이 손가락 입력이 종료 위치 T2에서 해제되면, 도 2에 도시된 단계 S002에서의 처리가 단계 S009∼S012로 분기되어, 상기 손가락 입력에 대응하는 릴리즈 시의 흐름 제어를 행하게 된다(단계 S012). 도 7에 도시된 릴리즈 시의 제어 흐름에 있어서는, 릴리즈 시의 UI 영역 Bt(본 실시예에서는 a1) 및 입력 시의 UI 영역 At(본 실시예에서는 a2)가 다르기 때문에, Bt와 At의 교환 처리가 행하여진다(단계 S506).
이와 같이, 본 실시예에 따르면, 유저는 제2입력수단으로서 손가락에 의한 입력(서브 입력)을 소정의 UI 영역에서 시작하고, 그것을 다른 UI 영역에서 해제함으로써, 매우 간단한 조작으로 합성 UI의 UI 영역을 교환할 수 있다.
(제2실시예에 따른 UI합성패턴변경처리)
도 10은 본 발명의 제2실시예에 따른 휴대 단말에 의한 UI합성패턴변경처리(단계 S507)를 예시한 도면이다. 도 10(a)에 도시된 바와 같이, 상기 휴대 단말(2)의 터치패널(21)은 합성 UI를 표시하고 있는데, 상기 합성 UI는 메일 어플리케이션 UI(a1), TV 어플리케이션 UI(a2) 및 웹 브라우저 어플리케이션 UI(a3)가 수직방향으로 배치된 세 영역에 표시된 것이다. 도 10(a)에 도시된 휴대 단말(2)에 대하여, 제2입력수단으로서 손가락에 의한 입력(서브 입력)이 시작 위치 T1에서 개시되어, 터치패널(21)의 표시 영역의 경계를 포함하는 종료 위치 T2에서 해제되면, 상기 휴대 단말(2)의 터치패널(21)의 합성 UI에서는, 시작 위치 T1에서의 UI 영역에 대응하는 TV 어플리케이션 UI(a2) 및 종료 위치 T2에서의 UI 영역에 대응하는 웹 브라우저 어플리케이션 UI(a3)의 배치가 수평방향의 배치(도 10(b))로 변경된다.
본 실시예에 따르면, 우선, 도 10(a)에 도시된 바와 같이 손가락 입력이 시작 위치 T1에 있을 때, 도 2에 도시된 단계 S002∼S007로 처리가 진행되어, 손가락 입력에 대응하는 입력 시의 제어 흐름을 행하게 된다. 도 3에 도시된 입력 시의 제어 흐름에서는 입력수 n이 1이기 때문에, 단계 S106에서의 처리 1이 행하여진다. 도 4에 도시된 처리 1에 있어서는, 손가락 입력(서브 입력)에 대응하는 서브 동작이 행하여지고(단계 S204), 도 6에 도시된 서브 동작에서는, 손가락 입력으로 가리키는 UI 영역 At(본 실시예에서는 a1)가 상기 기억부(50)에 기억된다(단계 S403).
이어서, 도 10(a)에 도시된 바와 같이 손가락 입력이 종료 위치 T2에서 해제되면, 도 2에 도시된 단계 S002에서의 처리가 단계 S009∼S012로 분기되어, 상기 손가락 입력에 대응하는 릴리즈 시의 제어 흐름을 행하게 된다(단계 S012). 도 7에 도시된 릴리즈 시의 제어 흐름은, 릴리즈 시의 UI 영역 Bt가 터치패널(21)의 표시 영역의 경계를 포함하기 때문에, 릴리즈 시의 UI 영역 Bt 및 입력 시의 UI 영역 At의 배치를 변경하기 위한 처리를 행한다(단계 S507). 제2입력수단으로서 손가락에 의한 입력의 입력 영역이 표시 영역의 경계를 포함하는 경우는, 종료 위치 T2의 영역이 터치패널(21)의 표시 영역의 가장 외측 영역을 포함하는 경우일 수도 있다. 더욱이, 제2입력수단으로서 손가락에 의한 입력의 입력 영역이 표시 영역의 경계를 포함하는 경우는, 제2입력수단으로서 손가락에 의한 입력의 주위에 입력영역판정윈도우 W1이 표시되어, 상기 입력영역판정윈도우 W1이 터치패널(21)의 표시 영역의 가장 외측 영역을 포함하는 경우일 수도 있다.
이와 같이, 본 실시예에 따르면, 유저는 제2입력수단으로서 손가락에 의한 입력(서브 입력)을 소정의 UI 영역에서 시작하고, 표시 영역의 경계에서 상기 지시를 해제함으로써, 매우 간단한 조작으로 합성 UI의 UI 영역들의 배치를 변경할 수 있다.
(제2실시예에 따른 자동 레이아웃)
도 11은 본 발명의 제2실시예에 따른 휴대 단말의 자동 레이아웃(단계 S405)을 예시한 도면이다. 도 11(a)에서는, 상기 휴대 단말(2)의 터치패널(21)이 합성 UI를 표시하고 있는데, 상기 합성 UI는 TV 리모콘 어플리케이션 UI(a4), 에어컨디셔너 리모콘 어플리케이션 UI(a5) 및 비디오 리모콘 어플리케이션 UI(a6)가 합성되는 것이다. 도 9(a)에 도시된 휴대 단말(2)에 대하여, 제2입력수단으로서 손가락에 의한 입력(서브 입력)이 시작 위치 T1에서 개시되어, 종료 위치 T2에서 해제되면, 휴대 단말(2)의 터치패널(21)에서는 각 UI 영역 간의 경계(점)가 이동되고, 각 UI 영역의 크기 및 표시될 UI 오브젝트들이 변경된다(도11(b)).
본 실시예에 따르면, 우선, 도 11(a)에 도시된 바와 같이 손가락 입력이 시작 위치 T1에 있을 때, 도 2에 도시된 단계 S002∼S007에서의 처리가 행하여져, 손가락 입력에 대응하는 입력 시의 제어 흐름을 행하게 된다. 도 3에 도시된 입력 시의 제어 흐름에서는 입력수 n이 1이기 때문에, 단계 S106에서의 처리 1이 행하여진다. 도 4에 도시된 처리 1에 있어서는, 손가락 입력(서브 입력)에 대응하는 서브 동작이 행하여지고(단계 S204), 도 6에 도시된 서브 동작에 의하여, UI 영역 At에 "UI 영역 경계" 플래그가 설정된 다음(단계 S402), 자동레이아웃처리가 개시된다(단계 S405).
이어서, 도 11(a)에 도시된 바와 같이 손가락 입력이 종료 위치 T2에서 해제되면, 도 2에 도시된 단계 S002에서의 처리가 단계 S009∼S012로 분기되어, 손가락 입력에 대응하는 릴리즈 시의 제어 흐름을 행하게 된다(단계 S012). 도 7에 도시된 릴리즈 시의 제어 흐름에 있어서는, 합성 UI의 자동 레이아웃이 실행 중이기 때문에, 상기 자동 레이아웃이 취소되고, 합성 UI의 인터페이스들의 표시 영역들 간의 경계를, 손가락 입력의 시작 위치부터 손가락 입력의 종료 위치까지 이동시키도록 재합성 처리가 행하여진다(단계 S508).
이와 같이, 본 실시예에 따르면, 유저는 제2입력수단으로서 손가락에 의한 입력(서브 입력)을 합성 UI에서의 인터페이스들 간의 경계(점)에서 시작하고, 그것을 다른 위치에서 해제함으로써, 매우 간단한 조작으로 합성 UI의 구성을 변경할 수 있다.
(제2실시예에 따른 UI 전환)
도 12는 본 발명의 제2실시예에 따른 휴대 단말에 의한 UI들의 전환을 예시한 도면이다. 도 12(a)에 도시된 바와 같이, 상기 휴대 단말(2)의 터치패널(21)은 합성 UI를 표시하고 있는데, 상기 합성 UI는 TV 리모콘 어플리케이션 UI(a4), 에어컨디셔너 리모콘 어플리케이션 UI(a5) 및 비디오 리모콘 어플리케이션 UI(a6)가 합성된 것이다. 도 12(a)에서, 상기 합성 UI는 메뉴키 B1 및 스위치키 B2를 포함한다. 도 12(a)에 도시된 휴대 단말(2)에 대하여, 제2입력수단으로서 손가락에 의한 입력(서브 입력) T3이 있는 경우, 상기 터치패널(21)과 손가락(T3)이 접촉한 상태에서, 펜 입력 T4가 메뉴키 B1 및 스위치키 B2 주위를 둘러싸도록 행하여지면, 상기 휴대 단말(2)의 터치패널(21) 상에 표시된 합성 UI에서는, 도 12(a)에서 특정된 메뉴키 B1 및 스위치키 B2가 음성키 B3 및 화상키 B4로 치환된다(도12(b)).
본 실시예에 따르면, 도 12(a)에 도시된 바와 같이 손가락 입력 T3이 있는 경우, 도 2에 도시된 단계 S002∼S007에서의 처리가 행하여져, 손가락 입력에 대응하는 입력 시의 제어 흐름을 행하게 된다. 도 3에 도시된 입력 시의 제어 흐름에서는 입력수 n이 1이기 때문에, 단계 S106에서의 처리 1이 행하여진다. 도 4에 도시된 처리(1)에 있어서는, 손가락 입력(서브 입력)에 대응하는 서브 동작이 행하여지고(단계 S204), 도 6에 도시된 서브 동작에서는, 손가락 입력이 가리키는 UI 영역 At가 상기 기억부(50)에 기억된다(단계 S401).
도 12(a)에서는, 손가락 입력 T3이 접촉하고 있는 상태에서, 펜 입력 T4(메인 입력)이 터치패널(21)에 행하여진다. 이에 응답하여, 도 2에 도시된 단계 S002∼S007로 처리가 진행되어, 상기 손가락 입력에 대응하는 입력 시의 제어 흐름을 행하게 된다. 도 3에 도시된 입력 시의 제어 흐름에 있어서, 입력수 n은 2이고, 입력을 위해 펜이 사용되므로, 단계 S107에서의 처리 2가 행하여진다. 도 5에 도시된 처리 2에 있어서는, 펜 및 손가락에 의한 복수의 입력에 대응하는 UI 오브젝트 처리가 행하여진다(단계 S302). 도 8에 도시된 바와 같이, 상기 터치패널(21) 상에서, 제1입력수단으로서 펜에 의해 UI 오브젝트의 영역이 특정되기 때문에, 상기 펜 입력에 의해 특정된 영역 내의 UI 오브젝트(본 실시예에서는 메뉴키 B1 및 스위치키 B2)가 재합성 리스트 G에 기억된다(단계 S602). 제1입력수단으로서 펜에 의해, 예를 들면 메뉴키 B1이 개별적으로 특정되는 경우에는, 상기 펜 입력에 의해 특정된 UI 오브젝트(메뉴키 B1)가 재합성 리스트 G에 기억된다. 재합성 리스트 G가 있는 경우에는, 재합성 리스트 G에 포함된 UI 오브젝트와 다른 UI오브젝트를 치환하는 UI가 터치패널(21) 상에 표시되도록 합성 UI가 재합성된다(단계 S605). 손가락 입력 T2가 있는 상태에서의 펜 입력 T3의 릴리즈 동작은, 도 2에 도시된 단계 S101로부터의 분기에 의한 합성 UI의 재합성 처리를 야기하지 않는다.
이와 같이, 본 실시예에 따르면, 유저는 제2입력수단으로서 손가락에 의한 입력(서브 입력)이 터치패널 상에서 있는 상태에서, 제1입력수단으로서 펜에 의한 입력(메인 입력)에 의해 합성 UI에서의 UI 오브젝트를 선택(개별 선택 또는 영역 선택)하기 위한 매우 간단한 조작으로, 유저가 합성 UI에 표시하기 원하는 UI 오브젝트로 상기 합성 UI에서의 UI 오브젝트를 치환할 수 있다. 재합성 처리에 있어서는, 펜 입력에 의해 선택된 UI 오브젝트가 합성 UI에 추가적으로 표시될 수도 있고, 합성 UI에 표시된 UI 오브젝트들 가운데 우선순위가 낮은 UI 오브젝트를 치환할 수도 있다. 또한, 이러한 UI 오브젝트의 추가 및 치환 타이밍은, 펜 입력에 의해 선택되는 시점일 수도 있다.
본 발명은 상술된 실시예들로 한정되는 것이 아니고, 수많은 변경 및 변형이 가능하다는 점에 유의한다. 예를 들면, 상기 실시예에서는 표면탄성방식의 터치센서가 사용되었지만, 본 발명은 센서방식의 터치센서를 사용하여 구현될 수도 있다. 또한, 상기 실시예에서는 PDA를 예로 들어 설명하였지만, 본 발명은 휴대전화와 같은 휴대무선단말, 휴대게임기, 휴대오디오플레이어, 휴대비디오플레이어, 휴대전자사전, 휴대전자서적뷰어 등의 휴대 단말에 폭넓게 적용하는 것도 가능하다. 더욱이, 상기 상세한 설명에서는 메인 입력으로서 펜 입력이 한정되고, 서브 입력으로서 손가락 입력이 한정되어 있지만, 본 발명은 메인 입력으로 손가락 입력이 한정되고, 서브 입력으로 펜 입력이 한정되는 경우에도 적용가능하다. 본 발명은 또한 입력수가 3 이상인 경우에도 적용가능하다.
1 휴대전화
2 휴대 단말
20,21 터치패널
24,23 표시부
22,25 입력부
10,80 제어부
11 어플리케이션프로그램실행부
12 유저인터페이스취득부
13 유저인터페이스생성부
14 시간측정부
15 유저인터페이스이벤트처리부
30 무선통신부
40 적외선통신부
50 기억부
71 입력수단판정부
72 입력장치판정부
73 입력위치판정부
90 유저인터페이스제어부
91 오브젝트제어부
50 기억부
51 어플리케이션기억영역
52 유저인터페이스정의파일기억영역
53 개별유저인터페이스리소스기억영역
54 공통유저인터페이스리소스기억영역
55 관련어플리케이션프로그램정보기억영역
56 합성유저인터페이스정의파일기억영역
60 유저인터페이스합성처리부
61 유저인터페이스오브젝트정의정보해석부
62 유저인터페이스오브젝트선택처리부
63 합성유저인터페이스정의파일생성부
64 자동레이아웃처리부
65 유저인터페이스리소스정형부
2 휴대 단말
20,21 터치패널
24,23 표시부
22,25 입력부
10,80 제어부
11 어플리케이션프로그램실행부
12 유저인터페이스취득부
13 유저인터페이스생성부
14 시간측정부
15 유저인터페이스이벤트처리부
30 무선통신부
40 적외선통신부
50 기억부
71 입력수단판정부
72 입력장치판정부
73 입력위치판정부
90 유저인터페이스제어부
91 오브젝트제어부
50 기억부
51 어플리케이션기억영역
52 유저인터페이스정의파일기억영역
53 개별유저인터페이스리소스기억영역
54 공통유저인터페이스리소스기억영역
55 관련어플리케이션프로그램정보기억영역
56 합성유저인터페이스정의파일기억영역
60 유저인터페이스합성처리부
61 유저인터페이스오브젝트정의정보해석부
62 유저인터페이스오브젝트선택처리부
63 합성유저인터페이스정의파일생성부
64 자동레이아웃처리부
65 유저인터페이스리소스정형부
Claims (8)
- 어플리케이션 프로그램을 기억할 수 있는 기억부;
상기 기억부에 기억되어 있는 어플리케이션 프로그램에 의거하여, 하나의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 유저인터페이스에 대응하는 독립 유저인터페이스 오브젝트 그룹(stand-alone user interface object group)을 표시하도록 제어하고, 복수의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 복수의 유저인터페이스에 각각 대응하는 독립 유저인터페이스 오브젝트 그룹들로부터 추출된 유저인터페이스 오브젝트들에 대한 합성 처리를 행하여 합성 유저인터페이스 오브젝트 그룹(compound user interface object group)을 표시하도록 제어하기 위한 제어부;
상기 독립 유저인터페이스 오브젝트 그룹 또는 상기 합성 유저인터페이스 오브젝트 그룹을 표시하기 위한 표시부; 및
제1입력수단에 의한 제1입력과 제2입력수단에 의한 제2입력을 접수하기 위하여, 상기 표시부와 관련하여 상기 표시부의 전면(front face)에 배치된 입력부를 포함하며,
상기 입력부가 제1입력을 접수하면, 상기 제어부는 상기 제1입력의 접수 위치에 대응하는 유저인터페이스 오브젝트의 기능을 실행하며,
상기 제어부가 상기 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하면서, 상기 입력부가 상기 제2입력을 접수하면, 상기 제어부는, 상기 입력부가 상기 제2입력의 접수를 시작한 위치 및 상기 입력부가 상기 제2입력의 접수를 종료한 위치에 따라, 상기 합성 유저인터페이스 오브젝트 그룹의 재합성 처리를 행하고, 재합성된 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하는 유저인터페이스 생성장치. - 제1항에 있어서,
상기 제어부는, 상기 합성 유저인터페이스 오브젝트 그룹에서, 상기 제2입력의 접수 위치에 대응하게 표시된 유저인터페이스의 표시 위치 및 상기 입력부가 상기 제2입력의 접수를 종료한 위치에 대응하게 표시된 유저인터페이스의 표시 위치를 교환하기 위한 재합성 처리를 행하는 유저인터페이스 생성장치. - 제1항에 있어서,
상기 입력부가 상기 제2입력의 접수를 종료한 위치에서, 상기 제2입력의 입력 영역이 상기 표시부의 표시 영역의 경계를 포함하는 경우, 상기 제어부는, 상기 합성 유저인터페이스 오브젝트 그룹에서 각각의 유저인터페이스의 배치를 변경하기 위한 재합성 처리를 행하는 유저인터페이스 생성장치. - 제1항에 있어서,
상기 입력부가 상기 제2입력의 접수를 시작한 위치에서, 상기 제2입력의 입력 영역이 유저인터페이스들의 표시 영역들 간의 경계를 포함하는 경우,
상기 제어부는, 상기 입력부가 상기 제2입력의 접수를 종료한 위치까지, 상기 표시 영역들 간의 경계를 이동시키기 위한 재합성 처리를 행하는 유저인터페이스 생성장치. - 어플리케이션 프로그램을 기억할 수 있는 기억부;
상기 기억부에 기억되어 있는 어플리케이션 프로그램에 의거하여, 하나의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 유저인터페이스에 대응하는 독립 유저인터페이스 오브젝트 그룹을 표시하도록 제어하고, 복수의 유저인터페이스를 생성하기 위한 지시를 수신하면, 당해 지시의 복수의 유저인터페이스에 각각 대응하는 독립 유저인터페이스 오브젝트 그룹들로부터 추출된 유저인터페이스 오브젝트들의 합성 처리를 행하여 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하기 위한 제어부;
상기 독립 유저인터페이스 오브젝트 그룹 또는 상기 합성 유저인터페이스 오브젝트 그룹을 표시하기 위한 표시부; 및
제1입력수단에 의한 제1입력과 제2입력수단에 의한 제2입력을 접수하기 위하여, 상기 표시부와 관련하여 상기 표시부의 전면에 배치된 입력부를 포함하며,
상기 입력부가 제1입력을 접수하면, 상기 제어부는 상기 제1입력의 접수 위치에 대응하는 유저인터페이스 오브젝트의 기능을 실행하며,
상기 제어부가 상기 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하면서, 상기 입력부가 제2입력을 접수하는 경우, 그리고 상기 제2입력의 누름이 계속되는 동안, 상기 입력부가 상기 합성 유저인터페이스 오브젝트 그룹의 유저인터페이스 오브젝트를 선택하도록 제1입력을 접수하는 경우, 상기 제어부는, 상기 제1입력에 의해 선택된 상기 유저인터페이스 오브젝트를, 또다른 유저인터페이스 오브젝트로 변경하기 위해 재합성 처리가 행하여지는 합성 유저인터페이스 오브젝트 그룹을 표시하도록 제어하는 유저인터페이스 생성장치. - 제5항에 있어서,
상기 제1입력은, 상기 합성 유저인터페이스 오브젝트 그룹의 소정의 영역에 포함된 유저인터페이스 오브젝트를 선택하는 것인 유저인터페이스 생성장치. - 제5항 또는 제6항에 있어서,
상기 제어부는, 상기 제1입력에 의해 선택된 유저인터페이스 오브젝트를 상기 합성 유저인터페이스 오브젝트 그룹에 추가적으로 표시하여, 상기 재합성 처리를 행하는 유저인터페이스 생성장치. - 제5항 또는 제6항에 있어서,
상기 제어부는, 상기 제1입력에 의해 선택된 유저인터페이스 오브젝트를, 상기 유저인터페이스 오브젝트 그룹에 포함된 유저인터페이스 오브젝트들 가운데 우선순위가 낮은 유저인터페이스 오브젝트로 치환하여 상기 재합성 처리를 행하는 유저인터페이스 생성장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2008-220511 | 2008-08-28 | ||
JP2008220511 | 2008-08-28 | ||
PCT/JP2009/065008 WO2010024358A1 (ja) | 2008-08-28 | 2009-08-27 | ユーザインタフェース生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110038712A true KR20110038712A (ko) | 2011-04-14 |
KR101256016B1 KR101256016B1 (ko) | 2013-04-18 |
Family
ID=41721523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020117004506A KR101256016B1 (ko) | 2008-08-28 | 2009-08-27 | 유저인터페이스 생성장치 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8739074B2 (ko) |
JP (1) | JP5518716B2 (ko) |
KR (1) | KR101256016B1 (ko) |
CN (1) | CN102132243B (ko) |
WO (1) | WO2010024358A1 (ko) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5056875B2 (ja) * | 2010-03-17 | 2012-10-24 | ブラザー工業株式会社 | 印刷制御装置,プログラム,および印刷設定画面の表示方法 |
CN106843715B (zh) | 2010-10-05 | 2020-06-26 | 西里克斯系统公司 | 用于远程化的应用的触摸支持 |
CN102609167A (zh) * | 2011-01-25 | 2012-07-25 | 联想(北京)有限公司 | 电子设备及其显示方法 |
US8863232B1 (en) | 2011-02-04 | 2014-10-14 | hopTo Inc. | System for and methods of controlling user access to applications and/or programs of a computer |
US9767195B2 (en) | 2011-04-21 | 2017-09-19 | Touchstream Technologies, Inc. | Virtualized hosting and displaying of content using a swappable media player |
US8904289B2 (en) * | 2011-04-21 | 2014-12-02 | Touchstream Technologies, Inc. | Play control of content on a display device |
CN102426506A (zh) * | 2011-09-30 | 2012-04-25 | 宇龙计算机通信科技(深圳)有限公司 | 编辑方法及编辑装置 |
US9823917B2 (en) * | 2011-10-20 | 2017-11-21 | Facebook, Inc. | Update application user interfaces on client devices |
US8839292B1 (en) * | 2011-12-13 | 2014-09-16 | Google Inc. | Systems and methods for rendering multiple applications on television screens |
JP5770121B2 (ja) * | 2012-02-08 | 2015-08-26 | 株式会社東芝 | 手書き入力装置、手書き入力プログラム、手書き入力方法 |
CN102638716A (zh) * | 2012-03-21 | 2012-08-15 | 华为技术有限公司 | 实现移动终端遥控电视的方法、装置和系统 |
TW201349085A (zh) * | 2012-05-22 | 2013-12-01 | Pegatron Corp | 多媒體檔案管理方法、數位媒體控制器以及多媒體檔案管理系統 |
US9419848B1 (en) | 2012-05-25 | 2016-08-16 | hopTo Inc. | System for and method of providing a document sharing service in combination with remote access to document applications |
US8713658B1 (en) | 2012-05-25 | 2014-04-29 | Graphon Corporation | System for and method of providing single sign-on (SSO) capability in an application publishing environment |
US10001918B2 (en) * | 2012-11-21 | 2018-06-19 | Algotec Systems Ltd. | Method and system for providing a specialized computer input device |
USD845978S1 (en) | 2013-01-23 | 2019-04-16 | Yandex Europe Ag | Display screen with graphical user interface |
USD785014S1 (en) * | 2013-04-05 | 2017-04-25 | Thales Avionics, Inc. | Display screen or portion thereof with graphical user interface |
USD851663S1 (en) * | 2013-04-05 | 2019-06-18 | Thales Avionics, Inc. | Display screen or portion thereof with graphical user interface |
CN103607620B (zh) * | 2013-11-22 | 2020-12-15 | 乐融致新电子科技(天津)有限公司 | 控制智能电视的移动通信终端方法及装置 |
JP5850033B2 (ja) * | 2013-12-05 | 2016-02-03 | 横河電機株式会社 | フィールド機器管理装置、機器情報表示方法、コンピュータプログラムおよび記録媒体 |
US9189207B2 (en) * | 2014-03-11 | 2015-11-17 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and systems for dynamic runtime generation of customized applications |
CN104219583B (zh) * | 2014-09-05 | 2018-01-02 | 四川长虹电器股份有限公司 | 通过移动终端操作电视的用户界面的方法和系统 |
CN104317498A (zh) * | 2014-10-21 | 2015-01-28 | 天津三星通信技术研究有限公司 | 便携式终端及其操作方法 |
KR102386480B1 (ko) * | 2015-10-05 | 2022-04-15 | 삼성전자주식회사 | 전자 기기의 입력 식별 방법 및 장치 |
KR102642923B1 (ko) | 2016-07-28 | 2024-03-05 | 삼성전자주식회사 | 외부 디바이스를 제어하기 위한 gui를 생성하는 디바이스 및 방법 |
WO2018038136A1 (ja) * | 2016-08-24 | 2018-03-01 | ナーブ株式会社 | 画像表示装置、画像表示方法、及び画像表示プログラム |
JP6278575B1 (ja) * | 2016-11-21 | 2018-02-14 | 株式会社コナミデジタルエンタテインメント | ゲーム制御装置、ゲームシステム、及びプログラム |
JP6878934B2 (ja) * | 2017-02-10 | 2021-06-02 | オムロン株式会社 | 情報処理装置、情報処理システム、ユーザインターフェイスの作成方法、およびユーザインターフェイスの作成プログラム |
KR102309031B1 (ko) * | 2017-04-27 | 2021-10-06 | 삼성전자 주식회사 | 지능형 에이전트 관리 방법 및 장치 |
CN110035171B (zh) * | 2018-01-12 | 2022-06-07 | 荷兰移动驱动器公司 | 电子设备及操作辅助方法 |
US11237851B1 (en) | 2020-07-14 | 2022-02-01 | Xerox Corporation | Simultaneous generation of differently interactive device menus automatically from an initial device menu |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0683522A (ja) | 1992-09-01 | 1994-03-25 | Fujitsu Ltd | 座標入力方式 |
US8479122B2 (en) * | 2004-07-30 | 2013-07-02 | Apple Inc. | Gestures for touch sensitive input devices |
JP2001036652A (ja) | 1999-07-23 | 2001-02-09 | Nippon Conlux Co Ltd | 携帯電話機およびこれを利用した機器遠隔制御方法 |
JP2001069580A (ja) * | 1999-08-31 | 2001-03-16 | Matsushita Electric Ind Co Ltd | Av機器コントロール装置 |
US7299424B2 (en) * | 2002-05-14 | 2007-11-20 | Microsoft Corporation | Lasso select |
JP3800626B2 (ja) | 2003-01-30 | 2006-07-26 | ソニー株式会社 | 制御装置および方法、情報処理装置および方法、記録媒体、並びにプログラム |
JP4158105B2 (ja) * | 2003-09-25 | 2008-10-01 | ソニー株式会社 | 車載装置及び車載装置の制御方法 |
US8169410B2 (en) * | 2004-10-20 | 2012-05-01 | Nintendo Co., Ltd. | Gesture inputs for a portable display device |
JP4106058B2 (ja) | 2005-01-04 | 2008-06-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ウィンドウ内におけるフレーム再配置を行うための情報処理装置、フレームの再配置方法、およびプログラム |
US8373651B2 (en) * | 2005-07-15 | 2013-02-12 | Research In Motion Limited | Systems and methods for inputting data using multi-character keys |
US7954064B2 (en) * | 2005-10-27 | 2011-05-31 | Apple Inc. | Multiple dashboards |
JP4700539B2 (ja) * | 2006-03-22 | 2011-06-15 | パナソニック株式会社 | 表示装置 |
US7773075B2 (en) | 2006-03-22 | 2010-08-10 | Panasonic Corporation | Display apparatus |
JP2008186095A (ja) * | 2007-01-26 | 2008-08-14 | Canon Inc | 画像処理装置及び画像処理方法、及びプログラム |
JP2008071357A (ja) * | 2007-09-19 | 2008-03-27 | Fujitsu Ltd | 文書処理プログラム、および文書処理方法 |
US20090327975A1 (en) * | 2008-06-27 | 2009-12-31 | Stedman Roy W | Multi-Touch Sorting Gesture |
-
2009
- 2009-08-27 JP JP2010526770A patent/JP5518716B2/ja not_active Expired - Fee Related
- 2009-08-27 KR KR1020117004506A patent/KR101256016B1/ko active IP Right Grant
- 2009-08-27 CN CN2009801334473A patent/CN102132243B/zh not_active Expired - Fee Related
- 2009-08-27 US US13/060,547 patent/US8739074B2/en not_active Expired - Fee Related
- 2009-08-27 WO PCT/JP2009/065008 patent/WO2010024358A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20110154228A1 (en) | 2011-06-23 |
KR101256016B1 (ko) | 2013-04-18 |
CN102132243A (zh) | 2011-07-20 |
US8739074B2 (en) | 2014-05-27 |
JPWO2010024358A1 (ja) | 2012-01-26 |
JP5518716B2 (ja) | 2014-06-11 |
CN102132243B (zh) | 2013-10-09 |
WO2010024358A1 (ja) | 2010-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101256016B1 (ko) | 유저인터페이스 생성장치 | |
KR101256014B1 (ko) | 유저인터페이스 생성장치 | |
JP5351165B2 (ja) | ユーザインタフェース生成装置 | |
JP5406176B2 (ja) | ユーザインタフェース生成装置 | |
KR101450640B1 (ko) | 유저인터페이스생성장치 | |
JP4071726B2 (ja) | 携帯型情報機器、携帯型情報機器における文字の表示方法、およびその方法を実現するためのプログラム | |
KR101201856B1 (ko) | 유저인터페이스생성장치 | |
US9497313B2 (en) | User interface generation apparatus | |
KR101161763B1 (ko) | 개선된 메뉴 표시 방법 및 이를 위한 디지털 처리 장치 | |
JP2006005695A (ja) | 携帯端末装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160318 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170322 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180316 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190319 Year of fee payment: 7 |