KR101450640B1 - 유저인터페이스생성장치 - Google Patents

유저인터페이스생성장치 Download PDF

Info

Publication number
KR101450640B1
KR101450640B1 KR1020107029123A KR20107029123A KR101450640B1 KR 101450640 B1 KR101450640 B1 KR 101450640B1 KR 1020107029123 A KR1020107029123 A KR 1020107029123A KR 20107029123 A KR20107029123 A KR 20107029123A KR 101450640 B1 KR101450640 B1 KR 101450640B1
Authority
KR
South Korea
Prior art keywords
user interface
unit
interface object
margin
information
Prior art date
Application number
KR1020107029123A
Other languages
English (en)
Other versions
KR20110014223A (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 KR20110014223A publication Critical patent/KR20110014223A/ko
Application granted granted Critical
Publication of KR101450640B1 publication Critical patent/KR101450640B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/0487Interaction 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/0488Interaction 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/04886Interaction 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality

Abstract

유저인터페이스생성장치(1)는 어플리케이션프로그램실행부(11), 유저인터페이스생성부(13), 유저인터페이스표시부(24), 및 유저인터페이스로 이루어지는 오브젝트들을 정의하는 오브젝트정의정보 뿐만 아니라 장치 자체의 특성에 관한 정보를 저장하기 위한 기억부(50)를 구비한다. 상기 유저인터페이스생성부(13)는, 상기 기억부(50)에 저장된 오브젝트정의정보를 선택하고, 상기 선택된 오브젝트가 오브젝트정의정보와 상기 장치 자체의 특성에 관한 정보에 의거하여 배치될 때의 마진을 설정하며, 상기 마진에 의거하여 상기 표시부의 소정의 영역에 오브젝트를 배치함으로써 합성유저인터페이스를 생성한다.

Description

유저인터페이스생성장치{USER INTERFACE GENERATION DEVICE}
본 출원은 2008년 6월 27일에 출원된 일본특허출원 제2008-168945호의 우선권을 주장하고 있으며, 그 전문이 본 명세서에서 인용참조된다.
본 발명은 유저인터페이스생성장치에 관한 것으로, 보다 상세하게는, 휴대단말의 유저인터페이스를 생성하는 유저인터페이스생성장치에 관한 것이다.
휴대전화로 대표되는 휴대단말의 유저인터페이스(이하, 적절하게 "UI"라고 약기함)는 유저가 휴대단말을 조작할 때의 조작성에 큰 영향을 끼친다. 이에 따라, 휴대단말의 UI는 유저가 휴대단말을 구입할 때의 중요한 요소 가운데 한 가지가 된다.
최근, 휴대단말은 현저히 다기능화되어, 애니메이션과 3D를 이용하여 표현력이 풍부한 UI를 구비한 휴대단말도 많다. 또한, 유저가 원하는 대로 고객맞춤형이 가능한 UI를 구비한 휴대단말도 있다. 이러한 휴대단말은 유저에게 있어서 편리성을 현저히 향상시키고 있다.
종래의 휴대단말은, 제조사와 기종 간에 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 등을 들 수 있다.
또한, 최근 휴대단말은, 단말 본체의 다기능화 및 고성능화에 따라, 동시에 복수의 태스크를 병행하여 실행할 수 있는 멀티-태스크 처리에 대응하는 0S(Operating System)를 탑재하는 것이 증가하고 있다. 더욱이, 병행하여 동시에 처리하는 복수의 태스크에 각각의 표시영역(윈도우)를 할당하여, 출력 화면의 표시를 다중화하는 멀티-윈도우 기능을 갖는 휴대단말도 널리 보급되고 있다.
첨언하면, 예컨대 일본특허공개 제2001-36652호 공보에는, 적외선통신부를 구비한 휴대전화단말을 사용하여, 적외선 통신에 의해 복수의 외부기기를 원격조작할 수 있도록 한 방식이 개시되어 있다. 이 일본특허공개 제2001-36652호 공보에 기재된 휴대전화단말은, 외부기기와의 통신을 행하는 외부제어부를 구비하고 있다. 이 휴대전화단말은, 외부기기를 원격제어하기 위한 외부기기제어정보를, 전화회선 등을 거쳐 취득하거나 또는 외부기기로부터 수신하여 기억하고, 상기 외부기기제어정보에 의거하여 외부기기를 원격제어할 수 있다. 즉, 상기 단말에 포함된 어플리케이션프로그램(이하, 간단히 "어플리케이션"이라고 함)을 변경함으로써, 통상적으로는 휴대전화로 사용하는 단말본체를, 복수의 외부기기를 원격조작하는 원격제어장치(이하, 간단히 "리모콘"이라고 함)로 사용할 수 있다.
상기 일본특허공개 제2001-36652호 공보에 개시되어 있는 휴대전화단말에 의하면, 각 외부기기에 대응하는 각각의 외부기기제어정보에 의거하여, 1대의 휴대전화단말에서 복수의 외부기기를 원격조작할 수 있다. 그러므로, 복수의 외부기기 각각에 대하여 개별 리모콘 단말을 별도로 사용하는 번잡한 조작이 필요없게 되고, 유저의 편리성을 높일 수 있다.
이러한 원격제어하는 복수의 외부기기를 원격으로 전환할 수 있는 리모콘의 기능을 상술한 멀티-태스크 처리가 가능한 휴대단말에서 실현하는 경우, 리모콘 어플리케이션에서 빠져나와 또다른 리모콘 어플리케이션을 기동시킬 필요는 없다. 즉, 복수의 어플리케이션을 단 하나의 단말에서 기동시켜, 그들 가운데 원하는 리모콘 어플리케이션을 적절하게 사용하는 것이 가능하게 된다.
하지만, 복수의 어플리케이션을 빈번히 전환하는 조작은 번잡하다.
상기 휴대단말에 상술한 멀티-윈도우 기능을 조합시키면, 복수의 윈도우에 복수의 어플리케이션을 조작하는 UI를 각각 표시하는 것도 가능하게 된다. 이에 따라, 복수의 어플리케이션 간에 변환없이, 단 하나의 화면 상에서 어플리케이션들을 동시에 사용할 수 있게 된다.
예를 들면, 도 18(A)에 나타내는 바와 같이 TV 리모콘 단말 단독으로 있으면, 도 18(B)에 나타내는 바와 같이, 예를 들면 터치패널(200)을 구비한 휴대단말(100) 상에 TV 리모콘 어플리케이션의 UI를, 그 조작성을 유지한 채로 재현할 수도 있다. 도 18(A)에 도시된 리모콘 단말의 숫자키와 같은 키 또는 버튼은 기계식 키이지만, 상기 숫자키 또는 버튼은 오브젝트로 재현되어, 도 18(B)에 도시된 휴대단말(100)의 터치패널(200) 상에 표시된다. 이러한 방식으로 터치패널에 표시된 UI를 구성하는 각종 키 또는 버튼 그리고 정보표시영역 등을 "UI오브젝트"라고 한다. 또한, 상기 TV 리모콘 단말과 유사한 방식으로, 도 18(C)에 단독으로 도시된 에어컨디셔너의 리모콘에 있어서도, 도 18(D)에 도시된 바와 같이, 에어컨디셔너의 리모콘 어플리케이션의 UI가, 그 조작성을 유지한 채로 상기 휴대단말(100)의 터치패널(200) 상에 재현될 수도 있다. 더욱이, 각각의 어플리케이션의 UI를 XML을 베이스로서 기술하면, 상이한 제조사의 또다른 단말에 어플리케이션을 이식하더라도, UI를 기술한 XML 파일을 처리하는 것만으로 또다른 단말에서 거의 같은 UI를 용이하게 재현할 수 있다.
하지만, 상기 예시에 있어서, TV 시청 중에 에어컨디셔너의 조작을 행하기 위해서는, TV와 에어컨디셔너 양자 모두 번거로운 조작이 필요한 상황도 상정된다. 이러한 경우, TV 및 에어컨디셔너 양자 모두에 대한 어플리케이션을, 멀티-태스크 기능과 멀티-윈도우 기능을 이용하여, 표시부의 표시영역을 분할하여 동시에 표시할 수도 있다. 하지만, 각 어플리케이션은 단독으로 사용되는 것을 상정한 UI만을 구비하고 있으므로, 상기 UI의 동시 표시는 도 19(A)∼(D)에 도시된 바와 같은 표시를 초래한다.
도 19(A)∼(D)는, 멀티-태스크 및 멀티-윈도우의 기능을 갖는 휴대단말(100)을 사용하여, 2개의 어플리케이션의 UI를 동시 표시할 때의 상태를 도시한 도면이다. 도면에 도시된 예시에서는, 터치패널(200)의 표시부를 상하로 분할한 각 윈도우 내에서 각각의 UI를 그대로 재현하므로, 각각의 UI의 일부만이 표시되어 있다. 화면 상에 표시할 수 없는 부분의 조작을 행하기 위해서, 각 윈도우의 우측에는 스크롤바가 제공된다.
예를 들면, 도 19(A)에 도시된 상태에서 TV의 음량을 조절하고 싶은 경우, 유저는 TV 리모콘 UI의 윈도우의 스크롤바를 이동하여, 도 19(B)에 도시된 바와 같이, TV 리모콘 UI의 표시 영역을 이동시켜야 한다. 마찬가지로, 예컨대 도 19(C)에 도시된 상태에서 에어컨디셔너의 온도를 조절하고 싶은 경우, 유저는 에어컨디셔너의 리모콘 UI의 윈도우의 스크롤바를 이동하여, 도 19(D)에 도시된 바와 같이, 에어컨디셔너의 리모콘 UI의 표시 영역을 이동시켜야 한다. 더욱이, 멀티-윈도우 기능에 의해 복수의 어플리케이션을 기동하는 경우, UI를 서로 중첩하여 표시할 때는, 입력 조작을 개시하기 전에 윈도우를 선택하여 기동시켜야 한다.
한 화면용으로 디자인된 UI를 멀티-윈도우 기능을 이용하여 표시한 경우에는, 각 UI오브젝트 모두를 한 화면 내에 나타낼 수 없게 되므로, UI의 조작성이 악화되어 버린다.
복수의 UI오브젝트를 한 화면 내에 나타내기 위해서는, 복수의 UI오브젝트를 축소시키고 나서 배치하거나, 또는 복수의 UI오브젝트를 상호간에 근접시켜 배치함으로써, 표시 면적이 한정되어 있는 UI의 표시 영역을 효과적으로 활용하는 것도 고려될 수 있다.
하지만, 복수의 UI오브젝트를 근접시켜 배치하는 경우, UI의 표시영역을 효과적으로 활용하는 것을 우선하여 UI오브젝트의 배치를 행하면, UI 전체로서의 조작성 및 가시성이 악화될 수도 있다. 예를 들면, 한 화면의 UI 표시영역에 작은 UI오브젝트를 밀집시켜 다수 배치하면, 각 UI오브젝트는 주위의 다른 UI오브젝트와 너무 근접하게 되어, 유저가 원하는 UI오브젝트를 손가락 등으로 조작하는 것이 곤란하게 된다.
따라서, 이러한 사정을 고려하여 본 발명의 목적은, 복수의 UI오브젝트로 UI를 구성할 때, UI오브젝트의 특성에 대응하는 조작성 및 가시성을 확보하면서, UI의 표시 영역에 각 UI오브젝트를 배치할 수 있는 유저인터페이스생성장치를 제공하는 것에 있다.
상기 목적을 달성하기 위하여, 제1형태에 따른 유저인터페이스생성장치는,
어플리케이션프로그램에 의거하여 각종의 기능을 실현하는 어플리케이션프로그램실행부;
상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 상기 어플리케이션프로그램실행부에 지시하기 위해 유저인터페이스를 생성하는 유저인터페이스생성부;
상기 유저인터페이스생성부에 의해 생성되는 유저인터페이스를 표시하는 표시부; 및
상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 각각 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보(단말의존정보)를 저장하는 기억부를 포함하여 이루어지고,
상기 유저인터페이스생성부는, 상기 기억부에 저장된 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보와 상기 장치의존정보에 의거하여, 상기 선택된 유저인터페이스오브젝트정의정보에 대응하는 유저인터페이스오브젝트를 배치할 때 확보해야 할 마진을 설정하며, 상기 마진에 의거하여 선택된 유저인터페이스오브젝트를 상기 표시부 상의 소정의 표시영역에 배치함으로써, 합성유저인터페이스를 생성하는 것을 요지로 한다.
본 발명의 제2형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트가 상이한 유저인터페이스정의파일에 포함되는 경우, 유저인터페이스오브젝트 양자 모두가 동일한 유저인터페이스정의파일에 포함되는 경우에, 그들 간에 설정되는 마진보다, 상기 유저인터페이스오브젝트와 그것에 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 더 크게 설정하는 것을 요지로 한다.
본 발명의 제3형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 장치의존정보는, 상기 유저인터페이스가 유저 조작을 접수할 때의 기준으로 사용되는 면적을 나타내는 기준 사이즈에 관한 정보를 포함하고,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트 양자 모두가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 의거하여, 상기 유저인터페이스오브젝트와 상기 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 설정하는 것을 요지로 한다.
본 발명의 제4형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 장치의존정보는, 상기 유저인터페이스가 유저 조작을 접수할 때의 기준으로 사용되는 면적을 나타내는 기준 사이즈에 관한 정보를 포함하고,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 의거하여, 상기 표시부의 끝에 배치되는 경우의 상기 유저인터페이스오브젝트와 상기 표시부의 끝 간의 마진을 설정하는 것을 요지로 한다.
본 발명의 제5형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 장치의존정보는, 상기 표시부의 주변을 한정하는 부재의 형상에 의거하여 결정된 정보를 포함하고,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 장치의존정보에 의거하여, 상기 유저인터페이스오브젝트가 상기 표시부의 끝에 배치되는 경우의 마진을 설정하는 것을 요지로 한다.
본 발명의 제6형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스오브젝트와 또다른 유저인터페이스오브젝트 간의 관련성에 관한 정보를 포함하고,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트가 상기 관련성에 관한 정보에 따라 서로 관련성이 높은 경우, 상기 유저인터페이스오브젝트와 상기 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을, 상기 유저인터페이스오브젝트와 상기 관련성에 관한 정보를 가지지 않은 다른 유저인터페이스오브젝트 간의 마진보다도 작게 설정하는 것을 요지로 한다.
본 발명의 제7형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서, 상기 유저인터페이스로의 조작입력수단을 판별하는 조작입력수단판별부를 더 포함하고,
상기 장치의존정보는, 상기 유저인터페이스에 대한 입력을 행하기 위한 복수의 조작입력수단에 대응하는 기준 사이즈에 관한 정보를 포함하며,
상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 관한 정보에 의거하여, 상기 조작입력수단판별부에 의해 판별된 조작입력수단에 따라, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 설정하는 것을 요지로 한다.
본 발명의 제8형태는, 상기 제1형태에 따른 유저인터페이스생성장치에 있어서, 상기 유저인터페이스를 거쳐 상기 어플리케이션프로그램실행부에 상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 지시하는 입력을 접수하는 조작입력접수부, 및
상기 조작입력접수부로의 조작입력수단을 판별하는 조작입력수단판별부를 더 포함하고,
상기 유저인터페이스생성부는, 상기 조작입력수단판별부에서 판별된 조작입력수단에 따라 상기 장치의존정보를 재기록하는 것을 요지로 한다.
본 발명의 제9형태는, 상기 제8형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스생성부는, 상기 합성유저인터페이스가 상기 표시부에 표시되는 동안, 상기 조작입력수단판별부에 의하여 상기 조작입력수단의 변경이 검출된 경우, 현재 조작입력수단에 따라 상기 장치의존정보를 재기록하고, 현재 장치의존정보에 의거하여 새로운 합성유저인터페이스를 생성하는 것을 요지로 한다.
본 발명에 따르면, 복수의 UI오브젝트로 UI를 구성할 때, UI오브젝트의 특성에 대응하는 조작성 및 가시성을 확보하면서, UI의 표시 영역에 각 UI오브젝트를 배치할 수 있는 유저인터페이스생성장치를 제공할 수 있다.
도 1은 본 발명에 따른 유저인터페이스생성장치의 개략적인 구성을 예시한 블럭도;
도 2는 본 발명에 따른 유저인터페이스정의파일의 구성을 설명하는 개념도;
도 3은 본 발명에 따른 합성유저인터페이스정의파일의 구성을 설명하는 개념도;
도 4는 각 유저인터페이스정의파일에 의거하여 생성되는 여러가지의 리모콘 어플리케이션용 유저인터페이스를 예시한 도면;
도 5는 본 발명의 일 실시예에 따른 자동레이아웃처리를 설명하는 플로우차트;
도 6은 본 발명의 실시예에 따른 조작수단의 변경에 수반되는 UI재합성처리에 의한 예시적인 합성유저인터페이스를 예시한 도면;
도 7은 본 발명의 실시예에 따른 조작수단의 변경에 수반되는 UI재합성처리를 설명하는 플로우차트;
도 8은 본 발명의 실시예에 따른 마진설정처리의 상세를 설명하는 플로우차트;
도 9는 유저인터페이스오브젝트의 타입 및 입력수단에 대응하는 상이한 마진을 설정하는 예를 설명하는 도면;
도 10은 도 9에서 설정된 마진에 의거하여 유저인터페이스오브젝트를 배치하는 예를 설명하는 도면;
도 11은 유저인터페이스오브젝트의 표시 사이즈와 기준 사이즈에 대응하는 상이한 마진을 설정하는 예를 설명하는 도면;
도 12는 인접하는 유저인터페이스오브젝트의 타입에 대응하는 상이한 마진을 설정하여 배치하는 예를 설명하는 도면;
도 13은 유저인터페이스오브젝트를 유저인터페이스표시영역의 끝부분에 배치하는 경우의 마진의 설정에 대하여 설명하는 도면;
도 14는 터치패널을 포위하는 부재의 가장자리부의 형상에 따라 유저인터페이스오브젝트를 유저인터페이스표시영역의 끝부분에 배치하는 경우의 마진의 설정에 대하여 설명하는 도면;
도 15는 유저인터페이스오브젝트가 원래 속하는 유저인터페이스에 따라 상이한 마진을 설정하는 예를 설명하는 도면;
도 16은 유저인터페이스오브젝트들 간의 관련성에 따라 상이한 마진을 설정하는 예를 설명하는 도면;
도 17은 마진설정처리에 의거하여 유저인터페이스오브젝트를 배치하는 예를 설명하는 도면;
도 18은 종래의 원격제어장치를 휴대단말의 유저인터페이스로 재현한 예를 설명하는 도면; 및
도 19는 종래의 휴대단말에서 2개의 유저인터페이스를 합성한 예를 설명하는 도면이다.
이하, 본 발명의 일 실시예를 첨부 도면들을 참조하여 설명하기로 한다. 후술하는 실시예에 있어서, 본 발명에 따른 유저인터페이스(이하, "UI"라고 함)의 일례로서, 각종 외부기기의 원격제어가 가능한 원격제어기능을 구비한 휴대전화를 사용한다. 하지만, 본 발명에 따른 UI생성장치는 휴대전화에 한정되는 것이 아니라, 예를 들면 랩탑 컴퓨터, PDA 등과 같은 임의의 휴대단말 등에 적용할 수도 있다. 또한, 본 발명에 따른 UI생성장치는 그것의 실장을 필요로 하는 장치로도 적용가능하지만, 휴대단말로 한정되는 것은 아니다. 본 발명은 복수의 UI를 동시에 사용할 수 있도록 합성하는 것을 주목적으로 한다는 점에 유의한다. 그러므로, 각 UI에 의해 지시를 받는 어플리케이션은 원격제어기능으로 한정되는 것이 아니라, 본 발명은 임의의 각종 어플리케이션에도 적용가능하다.
도 1은 본 발명의 일 실시예에 따른 UI생성장치인 휴대전화의 개략적인 구성을 나타내는 블럭도이다.
휴대전화(1)는, 전체 조작을 제어하는 제어부(10), 유저에 의한 입력을 접수하고, 각 어플리케이션에 따라 입력결과 등의 표시를 행하는 터치패널(20)을 포함하고 있다. 상기 터치패널(20)은, 유저에 의한 입력을 접수하는 매트릭스 스위치 (matrix switch)등으로 구성되고, 액정디스플레이 등으로 구성된 표시부(24)의 최상부에 배치된 입력부(22)를 구비한다. 상기 터치패널(20)의 입력부(22)는, 유저의 손가락 또는 스타일러스와 같은 펜형 입력장치 등이 접촉하는 것을 검지하여, 상기 접촉에 의한 입력에 대응하는 신호를 출력한다. 상기 표시부(24)는, 어플리케이션프로그램에 따라 표시하고, 유저에 의한 입력을 접수하는 각종 키나 버튼 등의 UI오브젝트로 구성되는 UI의 이미지를 소정의 UI 표시영역에 표시한다.
또한, 상기 휴대전화(1)는, 기지국(도시되지 않음)과 음성 통화, 이메일의 데이터 등 각종 정보를 인터넷이나 무선 등을 이용하여 송수신하는 무선통신부(30), 각종 외부기기(도시되지 않음)와 적외선을 이용하여 통신을 행하는 적외선통신부(40)를 포함한다. 무선통신부(30)를 사용하여, 상기 휴대전화(1)는 인터넷이나 무선 등을 거쳐 외부기기와 각종 데이터의 송수신을 행한다.
상기 휴대전화(1)는 조작키부(80) 및 스타일러스수납부(90)도 구비하고 있다. 상기 조작키부(80)는, 휴대전화(1) 본체에 배치된 기계식 스위치 등으로 구성되는 복수의 키 또는 상기 표시부(24)에 표시되는 포인터를 이동시키기 위한 방향지시키 또는 방향지시장치 등을 포함한다. 상기 조작키부(80)는, 유저에 의한 조작입력에 대응하는 신호를 제어부(10)에 송신한다. 상기 조작키부(80)를 구성하는 각종 키는, 사용되는 어플리케이션에 따라서 그 용도 및 기능이 규정된다. 따라서, 본 실시예에 따라 터치패널(20)의 입력부(22)와 조작키부(80)를 포함하도록 조작입력접수부가 구성된다.
상기 스타일러스수납부(90)는, 터치패널(20)의 입력부(22)에 대하여 입력을 행하는 펜형 입력장치인 스타일러스를 수납한다. 상기 스타일러스수납부(90)에 스타일러스를 수납함에 의해, 상기 스타일러스를 휴대전화(1)의 본체 내에 수납할 수 있다. 상기 스타일러스수납부(90)는, 스타일러스의 탈착을 검지하는 스위치(도시되지 않음)를 갖추고 있다. 즉, 이 스위치는 스타일러스가 스타일러스수납부(90)에 수납되는 동작과, 스타일러스수납부(90)로부터 추출되는 동작에 의하여 각각 턴 온 및 턴 오프된다. 따라서, 스타일러스수납부(90)로부터의 신호에 의하여, 상기 제어부(10)는 스타일러스수납부(90)에 스타일러스가 수납되어 있는지의 여부를, 즉 휴대전화(1) 본체에 스타일러스가 수납되어 있는지의 여부를 판별할 수 있다.
나아가, 상기 휴대전화(1)에는 입력 정보와 각종 어플리케이션 등을 기억하거나, 워크메모리(work memory)로서의 기능도 하는 기억부(50)가 제공된다. 상기 기억부(50)는, 어플리케이션기억영역(51), UI정의파일기억영역(52), 개별UI리소스기억영역(53), 공통UI리소스기억영역(54), 관련어플리케이션정보기억영역(55), 합성UI정의파일기억영역(56) 및 단말의존정보기억영역(57)을 포함한다.
상기 제어부(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) 처리 및 D0M(Document 0bject Mode) 처리를 행하여, 실제로 사용되는 UI를 생성한다. 상기 UI생성부(13)는, XML의 형식으로 기술된 UI 정보를 XML 엔진을 이용하여 해석하여, UI정의파일에 의거하여 생성된 UI를 터치패널(20)의 표시부(24)에 표시한다.
상기 UI생성부(13)는, 합성 UI를 포함하는 각종 UI의 생성에 관한 각종 처리를 행한다. 이하, UI생성부(13)의 상세에 대하여 후술한다.
상기 조작수단검출부(14)는, 유저가 입력 조작을 행하는 수단을 검출한다. 예를 들면, 터치패널(20)의 입력부(22)로부터의 입력 신호가 있으면, 상기 조작수단검출부(14)는 유저가 터치패널로 입력을 행하고 있는 것으로 판별한다. 한편, 조작키부(80)로부터의 입력 신호가 있으면, 상기 조작수단검출부(14)는 유저가 조작키에 의해 입력을 행하고 있는 것으로 판별한다.
상기 터치패널(20)의 입력부(22)로부터의 입력이 검출되었을 때, 입력부(22) 상에서 입력이 검지된 영역의 면적이 소정의 면적 이상인 경우에는, 상기 조작수단검출부(14)는 유저가 손가락에 의한 입력을 행하고 있는 것으로 판별한다. 한편, 입력이 검지된 영역의 면적이 소정의 면적 이하로 매우 작은 면적의 입력인 경우에는, 상기 조작수단검출부(14)는, 유저가 스타일러스와 같은 포인트형 입력장치를 이용하여 입력을 행하고 있는 것으로 판별한다. 그 외에도, 스타일러스수납부(90)로부터 스타일러스가 추출된 것이 검출되면, 상기 조작수단검출부(14)는, 그 후에 스타일러스에 의한 입력이 행하여지는 것을 판별한다. 더욱이, 스타일러스수납부(90)에 스타일러스가 수납된 것이 검지되면, 상기 조작수단검출부(14)는, 그 후에 행하여지는 입력은 스타일러스에 의한 입력이 아닌 것으로 판별한다. 즉, 이 경우, 상기 조작수단검출부(14)는, 터치패널(20) 상에서 손가락에 의한 입력이 행하여지거나 또는 조작키부(80)로부터의 입력이 행하여지는 것을 예상한다.
나아가, 소정의 조작에 따라 상기 표시부(24)에 입력 스폿을 지정하는 포인터가 표시된 경우, 상기 조작수단검출부(14)는, 상기 포인터를 이동시키기 위해 조작키부(80)의 방향지시키 또는 방향지시장치로부터의 입력이 행하여지는 것을 예상한다.
상기 UI처리부(15)는, UI생성부(13)가 생성한 UI에 대하여, 유저에 의한 입력부(22)로의 입력에 의거하여 발생되는 이벤트를 처리하고, 상기 어플리케이션실행부(11)에 대하여 적절히 각종 기능의 실행을 지시한다.
상술한 UI생성부(13)는, 복수의 UI정의파일에 의거하여 UI의 합성처리를 행하는 UI합성처리부(60)를 구비한다. 상기 UI합성처리부(60)는, UI오브젝트정의정보해석부(61), UI오브젝트선택처리부(62), 합성UI정의파일생성부(63), UI리소스정형부(64)와, 자동레이아웃처리부(70)를 포함한다.
상기 UI오브젝트정의정보해석부(61)는 UI정의파일에 포함된 각종의 UI오브젝트를 정의하는 UI오브젝트정의정보를 해석한다.
상기 UI오브젝트선택처리부(62)는, 다수의 UI오브젝트 가운데 필요로 하는 UI오브젝트를, 자동적으로 또는 유저의 입력에 의해 선택하는 처리를 행한다. 유저의 입력에 의해 선택을 행하는 경우, UI오브젝트선택처리부(62)는, 표시부(24)에 표시될 UI오브젝트를 정의하는 UI오브젝트정의정보를 해석함으로써, 유저에 의한 UI오브젝트의 선택 입력을 접수하는 선택화면을 생성하는 처리 및 제어를 행한다. 이하, UI오브젝트의 정보를 표시부(24)에 표시하여, 유저에 의한 선택입력을 접수하는 화면을 "UI오브젝트선택화면" 또는 간단히 "선택화면"이라고 한다.
상기 UI오브젝트선택처리부(62)는, UI오브젝트선택화면상에서, 선택된 UI오브젝트가 소정의 UI표시영역 내에 차지하는 점유율을 적산하는 점유율적산부(도시되지 않음)를 포함한다. 상기 점유율적산부는, 각 UI오브젝트의 UI오브젝트정의정보에 포함되는 UI오브젝트속성정보와 상기 단말의존정보기억영역(57)에 저장된 단말의존정보(장치의존정보)에 의거하여 UI오브젝트의 점유율을 적산한다.
상기 합성UI정의파일생성부(63)는, UI합성처리부(60)에 의해 합성된 UI를 합성UI정의파일로서 생성하여 출력한다.
상기 UI리소스정형부(64)는, 각 UI오브젝트의 표시 사이즈에 의거하여, 선택된 UI오브젝트의 프리뷰 처리 또는 UI를 합성할 때에 이용되는 리소스의 데이터의 확대 또는 축소 처리를 행한다. 이 경우, 상기 개별UI리소스기억영역(53) 또는 공통UI리소스기억영역(54)에 저장되어 있는 리소스의 데이터를 읽어 내어 사용한다.
상기 자동레이아웃처리부(70)는, UI를 합성할 때의 레이아웃에 관한 제어 및 처리를 행한다. 그러므로, 상기 자동레이아웃처리부(70)는, 배치설정부(71), 배치가부판정부(72), 축소오브젝트선택부(73), 사이즈하한값설정부(74) 및 마진설정부(75)를 포함한다.
상기 배치설정부(71)는, 소정의 순서에 따라서 UI오브젝트의 배치를 행한다. 상기 배치가부판정부(72)는, 배치설정부(71)에 의해 배치된 UI오브젝트가 소정의 UI 표시영역 내에 배치가능한지의 여부를 판정한다. 상기 축소오브젝트선택부(73)는, 배치가부판정부(72)에 의해 UI오브젝트가 소정의 UI 표시영역 내에 배치될 수 없다고 판정된 경우, 소정의 순서에 따라, 축소될 UI오브젝트를 선택한다. 상기 사이즈하한값설정부(74)는, 단말의존정보 또는 UI오브젝트정의정보에 따라서, UI오브젝트마다 축소의 하한값을 설정한다. 상기 마진설정부(75)는, UI오브젝트를 배치할 때에, 상기 UI오브젝트가 또다른 UI오브젝트 또는 UI 표시영역의 가장자리부에 근접하여 배치되지 않도록, 상기 UI오브젝트의 주위에 적절한 간격의 설정을 행한다. 이하, 이러한 각 UI오브젝트의 주위로 제공되는 간격을 "마진"이라고 한다.
상기 기억부(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정의파일을 저장한다. 상기 단말의존정보기억영역(57)은, 단말 자체로 이용가능한 폰트 정보, 입력 장치 정보, 화상 사이즈 정보, 기준 사이즈 정보, 현재의 입력수단에 관한 정보, 후술하는 주변 마진 정보 등의, 상기 단말 및 표시부(24)에 의존하는, 상기 단말고유의 특성을 나타내는 정보인 단말의존정보(장치의존정보)를 저장한다.
다음으로, 본 실시예에 따른 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)로의 입력에 대응하는 처리를 행한다.
도 2는 UI정의파일의 구성을 설명하는 개념도이다. 도 2에 나타내는 바와 같이, 휴대전화(1)의 기억부(50)의 UI정의파일기억영역(52)은 각 UI가 UI 전체를 생성할 때의 일련의 생성 규칙을 정의하는 UI정의파일을 저장한다. 도 2에는 UI정의파일 (1)∼(6)의 6개의 UI정의파일을 저장하고 있지만, 사용되는 UI에 따라서 UI정의파일기억영역(52)에는 임의의 수의 UI정의파일을 저장할 수 있다.
또한, 각 UI정의파일은, 도 2에 나타내는 바와 같이, 복수의 UI오브젝트정의정보를 포함한다. 도 2에는 UI정의파일(2)이 6개의 UI오브젝트정의정보((2)-1∼(2)-6)를 포함하고 있지만, 실제로는, 상기 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)의 일부분에 입력이 되었을 때), 어플리케이션에 대한 동작을 특정하는 정보;
(6) UI오브젝트를 유효 또는 무효로 하는 정보: 상기 UI오브젝트를 UI 표시영역에 표시하는지의 여부, 또는 UI오브젝트를 기동하는지의 여부를 특정하는 정보;
(7) UI오브젝트의 우선순위 정보: 상기 UI오브젝트와 다른 UI오브젝트 간의 관계에 의거하여, 복수의 UI가 합성될 때, 상기 UI오브젝트의 우선순위를 나타내는 정보; 및
(8) 상기 UI오브젝트와 다른 UI오브젝트 간의 관련성 정보: 상기 UI오브젝트가 다른 UI오브젝트와 소정의 관련성을 가지는 경우에 상기 관련성을 특정하는 정보.
본 실시예에 따르면, 유저의 선택에 의거하여, 단 하나의 UI 표시영역 내에 복수의 UI오브젝트가 표시된다. 이때, 단 하나의 UI로부터 복수의 UI오브젝트를 선택하여 채용하는 것 또는 복수의 UI로부터 복수의 UI오브젝트를 선택하여 채용할 수도 있다. 각각의 UI에는 대응하는 UI정의파일이 존재하지만, 유저가 임의로 선택한 UI오브젝트로 구성되는 합성 UI에는 원래 대응하는 UI정의파일이 존재하지 않는다. 그러므로, 유저에 의해 선택된 UI오브젝트로 구성되는 합성 UI가 생성되는 경우에는, 상기 합성 UI에 의거하여 합성UI정의파일이 생성되어 저장되게 된다.
도 3은 합성UI정의파일의 구성을 설명하는 개념도이다. 상기 합성UI정의파일은, 복수의 UI정의파일에 포함되는 UI오브젝트정의정보를 부분적으로 추출하여 하나의 UI정의파일로 모은 것이다. 복수의 UI가 합성되는 경우, 상기 UI합성처리부(60)의 UI오브젝트선택처리부(62)는 각 UI정의파일에 의거하여 UI오브젝트선택화면을 생성하여, 유저가 선택한 UI오브젝트의 UI오브젝트정의정보를 추출한다. 상기 합성UI정의파일생성부(63)는, 추출된 UI오브젝트정의정보를 정리하여 하나의 합성UI정의파일로 한다. 이것은 유저의 시점으로 보면, 복수의 UI에서 UI오브젝트가 선택되고 사용되어 하나의 합성 UI를 생성한 것을 의미한다. 상기 UI합성처리부(60)는, 합성UI정의파일을 생성할 때, 필요에 따라 UI오브젝트정의정보를 처리하고 나서, 합성 UI로서 하나의 정의파일에 모을 수 있다. 도 3에 나타내는 예시에서는, 3가지의 UI정의파일 (2), (4), (5)로부터, 각각 몇 개의 UI오브젝트정의정보를 추출한 것을 모아서, 새로운 합성UI정의파일 (1)을 생성한 모양을 개념적으로 도시하고 있다.
예를 들면, 도 4는 도 2 및 도 3에 도시된 바와 같이 유저인터페이스정의파일에 의거하여 생성된 여러가지의 리모콘 어플리케이션용 UI를 표시한 예를 나타내는 도면이다. UI정의파일이 XML에 기초한 UIML의 파일형식으로 기술되고, 이러한 UIML 파일을 해석하여 UI를 생성하는 경우에는, 표시부(24)의 소정의 UI 표시영역내에 맞추어지도록 하나의 화면용 UI가 생성된다. 각각의 UI의 UI정의파일에서는, 각 UI를 구성하는 UI오브젝트에 대하여, UI오브젝트정의정보에 의해 각종 속성이 정의되어 있다.
이러한 UI는 각각 단독으로 사용되는 것을 상정하여(즉, 합성 UI로서 사용되는 것을 상정하지 않은) 구성될 수도 있다. 하지만, 이 경우에는, UI합성처리부(60)가 상술한 합성 UI 생성의 처리를 행한다면, 유저가 임의적으로 선택한 복수의 UI오브젝트를 채용한 하나의 합성 UI를 구성하는 합성UI정의파일을 생성할 수 있다.
다음으로, 본 실시예에 따른 합성 UI를 생성하는 자동레이아웃처리에 대하여 설명한다. 본 실시예에 따르면, 복수의 UI의 UI오브젝트를 합성하여 합성 UI를 생성하는 경우, 상기 복수의 UI오브젝트를 자동으로 선택하여, 표시부(24) 상에서 소정의 UI 표시영역에 배치한다. 즉, 이 자동레이아웃처리에 의하면, 합성 UI를 생성하기 위해, UI합성처리부(60)가 소정의 조건에 따라서 UI오브젝트를 선택하는 처리를 행하기 때문에, 합성 UI를 구성하는 UI오브젝트를 유저가 하나씩 선택하는 조작을 행할 필요는 없다.
도 4는 UI의 자동 합성에 사용될, 우선도가 높은 UI오브젝트로 구성된 UI를 도시한 도면이다. 이들 각 UI를 구성하는 UI오브젝트는, 각 UI가 각각 대응하는 어플리케이션에 의거하여 기본적이면서도 중요한 기능의 실행을 지시할 때에 필요한 것이다.
각 UI에 대응하는 UI정의파일은 모든 UI오브젝트의 UI오브젝트정의정보를 포함한다. 또한, 각 UI의 UI정의파일에 포함되는 UI오브젝트정의정보는, 각 UI오브젝트가 상기 UI에서 어느정도 우선순위가 높은 UI오브젝트인지를 나타내는, 상술한 (7)의 "우선순위 정보"도 포함한다.
상기 우선순위 정보는, 복수의 UI를 자동으로 합성하는 처리를 행할 때, 상기 UI를 구성하는 각 UI오브젝트에 대하여, UI오브젝트가 필수적인 요소로서 반드시 선택되어야 하는지, 중요한 UI오브젝트로서 선택되는 것이 바람직한 지, 또는 다른 UI오브젝트와 비교하면 중요도가 높지 않기 때문에 상황에 따라 생략할 수 있는 지의 여부를 나타낸다. 도 4에 나타낸 각 UI에서는, 각 UI정의파일에 포함되는 UI오브젝트정의정보에 의거하여, 우선도의 정보가 필수적인 UI오브젝트 및 우선도가 높은 UI오브젝트를 추출하고 있다. 이와 같이, 각 UI가 합성되는 때에, 선택되어야 하는 UI오브젝트가 미리 규정된다.
또한, UI오브젝트를 자동 선택하여 배치하는 경우, 반드시 선택되어야 하는 UI오브젝트를 특정하기 위해서, 우선순위 정보에 상기 우선순위의 소정의 역치가 제공된다. 이에 따라, 우선순위가 역치 내에 있는 UI오브젝트가 반드시 선택된다. 이하, 필수적인 UI오브젝트의 UI오브젝트정의정보에 포함되는 우선순위 정보를 "필수정보"라고 한다.
이하, 도 4에 나타내는 모든 UI를 자동으로 합성하는 자동레이아웃처리에 대하여 설명한다. 도 4에 나타내는 각 UI는 통상적으로 단독으로 사용되므로, UI 모두를 합성하여 표시부(24) 상에서 소정의 UI 표시영역에 배치하는 것은 할 수 없게 된다. 따라서, 조작성을 확보하기 위해서 각 UI오브젝트에 적절한 마진을 설정하면서, 각 UI오브젝트를 축소하는 처리를 포함하는 자동레이아웃처리를 행하게 된다.
도 5는 본 실시예에 따른 UI오브젝트의 자동레이아웃처리를 설명하는 플로우차트이다. 자동레이아웃처리가 개시되면, 사이즈하한값설정부(74)는 선택된 복수의 UI에 포함되는 각 UI오브젝트에 대하여, UI오브젝트를 축소할 때에 사용되는 표시사이즈하한값(최소값)을 설정한다(단계 S12). 이 처리에 의하여, UI오브젝트의 축소처리를 행할 때, UI합성처리부(60)가 UI오브젝트를 너무 축소하여 조작성을 해하는 것이 없도록 축소의 하한값이 설정된다.
이 UI오브젝트의 표시 사이즈의 하한값의 설정처리에서는, UI오브젝트정의정보해석부(61)가 해석한 각 UI정의파일에 포함되는 각 UI오브젝트의 UI오브젝트정의정보에 대하여, 상기 사이즈하한값설정부(74)가 각 UI오브젝트의 타입에 대응하는 적절한 하한값을 설정한다. 각 UI오브젝트를 축소할 때의 사이즈의 하한값은 여러가지의 파라미터에 의거하여 설정될 수도 있다.
예를 들면, 상기 사이즈하한값설정부(74)는, 표시 사이즈의 하한값을 설정하는 UI오브젝트가 버튼 또는 체크박스 등의 유저 조작 타입인지, 혹은 단지 화상 등을 표시하는 타입인지 등의 UI오브젝트의 타입에 의거하여, 소정의 표시 사이즈하한값을 설정한다. 즉, 단지 화상을 표시하기 위한 UI오브젝트는 가시성을 확보할 수 있는 범위로 상당히 축소될 수도 있는 반면, 유저 조작 타입의 UI오브젝트는 조작성을 확보하기 위해서 너무 지나치게 축소되지 않도록 설정된다.
또한, 상기 사이즈하한값설정부(74)는, 단말의존정보기억영역(57)에 저장된 단말의존정보에도 의거하여, UI오브젝트의 표시 사이즈의 하한값을 설정한다. 이 단말의존정보는, 유저가 손가락을 사용하여 입력하는 경우의 입력부(22)의 구성 및 사양에 기초한 정보나, 스타일러스와 같은 전용의 입력장치를 사용하여 입력하는 경우의 입력장치정보도 포함한다. 축소 대상의 UI오브젝트가 유저 조작 타입인 경우, 예를 들면 스타일러스를 사용하여 입력을 행하는 경우, 유저의 손가락에 의한 입력의 경우보다도 작은 하한값을 설정할 수 있다. 이는 유저가 스타일러스를 사용하여 입력을 행하는 경우, 손가락으로 입력하는 경우보다도 더욱 세밀한 조작을 행할 수 있기 때문이다.
이에 따라, 상기 사이즈하한값설정부(74)는, 각 UI오브젝트의 UI오브젝트정의정보에 포함되는 각종의 속성을 나타내는 정보 및 단말의존정보기억영역(57)에 저장된 각종의 단말의존정보(장치의존정보)에 의거하여, 각 UI오브젝트에 대하여 설정한 계수의 초기값을 갱신하여 새로운 계수값을 설정한다. 이에 따라, UI오브젝트의 축소처리를 행할 때, 지나치게 축소하여 조작성이나 가시성을 저하시키는 것을 피하게 된다.
다음으로, 상기 마진설정부(75)는, 각각의 UI오브젝트를 배치할 때, 상기 UI오브젝트와 인접한 UI오브젝트 간에 마진을 설정하는 마진설정처리를 행한다(단계 S13). 이 마진설정처리에 의하여 UI오브젝트들이 너무 근접하여 배치되는 것이 방지되고, 유저의 조작성이 악화되는 것이 방지된다. 이하, 상기 마진설정처리에 대하여 상세히 후술한다.
다음으로, 상기 배치설정부(71)는, UI오브젝트정의정보에 포함되는 디폴트표시사이즈정보, 단계 S13의 마진설정처리에 의해 설정된 마진에 의거하여, 각 UI오브젝트를 가상적으로 배치하는 배치설정처리를 행한다(단계 S14). 이 때, 상기 배치설정부(71)는, 동일한 UI정의파일에 포함되는 UI오브젝트들을 서로 근접하여 배치한다. 또한, UI오브젝트정의정보해석부(61)가 해석한 상술한 (8)의 "상기 UI오브젝트와 다른 오브젝트 간의 관련성 정보" 등에 의거하여, 상기 배치설정부(71)는 동일한 UI정의파일에 포함되는 UI오브젝트 가운데 관련성이 높은 UI오브젝트들을, 상대적인 위치 관계(UI오브젝트가 원래 속하는 UI에서의 위치 관계)를 반영하여 서로 근접시켜 배치한다.
단계 S14의 배치설정처리가 완료되면, 상기 배치가부판정부(72)는 이 배치설정처리에 의한 UI오브젝트의 가상적인 배치에 의거하여, 합성 UI의 모든 UI오브젝트가 소정의 UI 표시영역 내에 맞추어지도록 배치가능한지의 여부를 판정한다(단계 S15). 모든 UI오브젝트가 배치가능한 것으로 판정된 경우(단계 S15의 Yes), 상기 자동레이아웃처리부(70)는 가상적으로 배치된 UI오브젝트를 실제로 표시부(24)에 표시하여, 자동레이아웃처리를 완료하게 된다(단계 S16).
이와는 대조적으로, 합성 UI의 모든 UI오브젝트가 소정의 UI 표시영역 내에 맞추어지도록 배치될 수 없는 것으로 판정된 경우, 상기 축소오브젝트선택부(73)는 단계 S12의 표시사이즈하한값설정처리의 결과에 의거하여, 축소가능한 UI오브젝트가 존재하는지의 여부를 판정한다(단계 S17).
단계 S17에서 축소가능한 UI오브젝트가 없는 것으로 판정된 경우, 상기 자동레이아웃처리부(70)는 자동 레이아웃이 불가한 것으로 판정하여(단계 S18), 상기 자동레이아웃처리를 종료한다. 이 때, 상기 자동레이아웃처리부(70)는 자동레이아웃 불가의 취지를 표시부(24)에 표시할 수 있다. 또한, 이 때, 배치할 UI오브젝트의 선택의 재시도나, 합성할 UI의 선택의 재시도 등을 행하도록 유저에 요구하는 것이 바람직하다. 이와 같이 처리하는 것으로 조작성을 희생하여 무리하게 UI를 합성하는 것이 방지된다.
단계 S17에서 축소가능한 UI오브젝트가 있다고 판정된 경우, 상기 자동레이아웃처리부(70)는, 축소오브젝트선택부(73)에 의해 우선적으로 표시 사이즈를 축소해야 할 것으로 선택되는 UI오브젝트를 선택 및 축소한다(단계 S19). 이 경우, 단계 S12에서 설정된 표시사이즈하한값을 토대로 축소처리를 행한다.
단계 S19에서 축소해야 할 UI오브젝트의 선택처리는, 예를 들면 UI오브젝트정의정보에 포함된 각 UI오브젝트마다 설정된 우선도에 의거하여 행한다. 즉, 각 UI오브젝트의 UI오브젝트정의정보에 포함되는 우선순위 정보에 의거하여, 우선순위가 낮은 UI오브젝트는 중요성이 낮은 것으로 판단하여, 그 중요성이 낮은 UI오브젝트를 우선적으로 축소해야 할 UI오브젝트로서 선택한다.
단계 S19에서 축소해야 할 UI오브젝트의 선택처리에서는, 유저가 UI오브젝트를 선택하여 채용하는 경우, 그 선택 순서에 의거하여 우선적으로 축소해야 할 UI오브젝트로서 선택하는 것도 가능하다. 예를 들면, 선택순서가 빠른 것은 중요한 UI오브젝트라고 판단하여, 우선적으로 축소하면 안되는 반면, 선택순서가 느린 것이 됨에 따라서 중요도가 낮은 UI오브젝트라고 판단하여, 우선적으로 축소할 수가 있다. 축소해야 할 UI오브젝트가 자동으로 선택되는 경우, UI오브젝트정의정보에 포함되는 선택된 UI오브젝트의 타입에 의거하여 축소해야 할 UI오브젝트를 선택하거나, 원래 동일한 UI정의파일에 정의되어 있던 UI오브젝트를 그룹화하여, 그룹 단위로 축소해야 할 UI오브젝트를 선택할 수 있다.
단계 S19의 축소처리가 행하여진 후, 다시 한번 마진설정처리(단계 S13) 및 배치설정처리(단계 S14)를 거치고 나서, 상기 배치가부판정부(72)는, 합성된 UI가 소정의 표시영역 내에 배치가능한지의 여부를 판정한다(단계 S15). 그 후, 자동레이아웃처리가 완료되거나(단계 S16) 또는 자동 레이아웃이 불가라고 판정될 때까지(단계 S18), 이러한 처리를 계속한다.
이상의 자동레이아웃처리에 의하여 도 4에 나타내는 모든 UI를 자동으로 합성하는 경우, 예를 들면 도 6에 나타내는 것과 같은 합성 UI를 생성할 수가 있다. 입력수단이 유저의 손가락인 경우, 도 6(A)에 나타내는 바와 같은, 손가락의 접촉면적에 대응하는 축소하한값에 의거한 합성 UI가 생성된다. 입력수단이 스타일러스인 경우에는, 도 6(B)에 나타내는 바와 같이, 스타일러스의 접촉면적에 대응하는 축소하한값에 의거한 합성 UI가 생성된다. 도 6(A) 및 도 6(B)를 비교해 보면 명백한 바와 같이, 스타일러스로 입력하는 경우 쪽이, 입력에 관한(유저 조작 타입의) UI오브젝트의 하한값을 작게 설정할 수 있기 때문에, 보다 많은 UI오브젝트를 배치할 수 있다.
이하의 설명에 있어서, 유저가 휴대전화(1)를 조작할 때, 그 조작수단이 터치패널(20)의 입력부(22)에 닿는 표준 접촉면적의 크기를 "기준 사이즈"라고 한다. 도 6(A) 및 도 6(B)의 상부에, "손가락의 접촉면적의 크기"에 의거하는 기준 사이즈와 "스타일러스의 접촉면적의 크기"에 의거하는 기준 사이즈를 각각 예시하여 도시하고 있다.
이러한 기준 사이즈는 각각의 유저에 대하여 그리고 각각의 조작수단(손가락 또는 스타일러스)에 대하여 상이할 수도 있기 때문에, 소정의 각 기준 사이즈를 미리 설정해 두는 것과, 최초에 휴대전화(1)를 기동하여 초기 설정을 행할 때 유저에게 등록을 재촉하는 것이 바람직하다. 각 기준 사이즈를 등록할 때, 이들을 단말의존정보(장치의존정보)로 하여 기억부(50)의 단말의존정보기억영역(57)에 저장한다. 스타일러스 등 단말부속장치를 조작수단으로 이용하는 경우의 기준 사이즈는 단말의존정보로서 미리 등록할 수도 있다.
이렇게 하여 합성 UI가 생성되면, 합성UI정의파일생성부(63)는 상기 생성된 합성 UI에 대응하는 합성UI정의파일을 생성한다. 상기 UI합성처리부(60)는, 생성된 합성UI정의파일을 합성UI정의파일기억영역(56)에 저장한다. 그 후, 합성UI정의파일기억영역(56)에 저장된 합성UI정의파일을 읽어냄으로써, 상기 UI생성부(13)는 터치패널(20)의 표시부(22) 상에 한번 생성한 합성 UI를 재현할 수 있다.
다음으로, 본 실시예에 따른 조작수단의 변경에 수반되는 UI재합성처리에 대하여 설명한다. 이 처리는 생성한 합성 UI를 사용하면서, 유저가 입력조작을 행하는 조작수단이 변경된 경우에 상기 변경된 조작수단에 따라, 사용 중의 합성 UI를 재합성한다.
이하, 도 7에 도시된 플로우차트를 참조하여 본 실시예에 따른 조작수단의 변경에 수반되는 UI재합성처리를 설명한다.
상기 조작수단의 변경을 검출하는 모드(이하, "조작수단검출모드"라고 함)를 개시한 후, 상기 제어부(10)의 조작수단검출부(14)는 유저가 입력조작에 사용하는 조작수단의 검출을 행한다(단계 S31). 즉, 상기 조작수단검출부(14)는, 터치패널(20)의 입력부(22), 조작키부(80), 스타일러스수납부(90)로부터의 입력을 감시하여, 이것들의 각 기능부로부터의 입력을 검출한다. 입력을 검출하면, 상기 조작수단검출부(14)는 상기 입력에 의거하여 조작수단이 변경되었는지의 여부를 판정한다(단계 S32).
예를 들어, 터치패널(20)로부터의 입력이 검출되고, 그 이전의 입력은 조작키부(80)로부터 검출되어 있는 경우, 상기 조작수단검출부(14)는 조작수단이 조작키부(80)로부터 터치패널(20)로 변경된 것으로 판정한다.
또한, 상기 터치패널(20)의 입력부(22)로의 입력의 접촉면적이 변화하여 소정값 이상으로 된 경우, 상기 조작수단검출부(14)는, 조작수단이 스타일러스로부터 유저의 "손가락"으로 변화되었다고 판정한다. 이와는 대조적으로, 터치패널(20)의 입력부(22)로의 입력의 접촉면적이 변화하여 소정값 이하가 된 경우에는, 상기 조작수단검출부(14)는, 조작수단이 유저의 손가락에서 스타일러스로 변화되었다고 판정한다.
더욱이, 스타일러스수납부(90)로부터 스타일러스가 추출된 것이 검출된 경우, 상기 조작수단검출부(14)는, 이후의 조작은 터치패널(20) 상에서 스타일러스에 의해 행하여진다고 판정한다. 이와는 대조적으로, 스타일러스수납부(90)에 스타일러스가 수납된 것이 검출된 경우, 상기 조작수단검출부(14)는, 이후의 조작은 터치패널(20) 상에서 손가락에 의해 행하여지거나, 또는 조작키부(80)에 의해 행하여진다고 판정한다.
상술된 바와 같이, 단계 S32에서 조작수단이 변경되었다고 판정된 경우에는, UI합성처리부(60)가 단말의존정보기억영역(57)에 단말의존정보로서 저장된 기준 사이즈를, 상기 검출된 조작수단에 따라서 변경한다(단계 S33). 예를 들어, 조작수단이 "손가락"으로 변경된 경우, 기준 사이즈를 "손가락"의 접촉면적의 크기에 의거하는 사이즈로 변경한다. 이와 마찬가지로, 조작수단이 스타일러스로 변경된 경우, 기준 사이즈를 스타일러스의 선단의 접촉면적에 의거하는 사이즈로 변경한다.
다음으로, 상기 제어부(10)는, 터치패널(20)의 표시부(24)에 표시되어 있는 UI가 합성UI정의파일에 의거하여 생성된 합성 UI인지의 여부를 판정한다(단계 S34). 상기 표시부(24)에 표시되어 있는 UI가 합성 UI가 아닌 경우(즉, 단독으로 사용되는 것으로 상정된 UI), 조작수단이 변경되어 기준 사이즈가 변경되었다고 해도, 현재 표시된 UI 이외의 다른 UI를 구성하는 UI오브젝트를 추가하는 필요성은 낮게 된다. 즉, 단독으로 사용되는 것으로 상정된 UI를 사용하고 있는 경우, 현재 표시되어 있는 UI를 UI재합성처리하여 상기 UI의 구성을 변화시키는 필요성은 낮게 된다. 따라서, 그 경우에는, 상기 UI의 변경(재합성) 처리는 행하지 않으면서, 상기 제어부(10)가 단계 S31로 되돌아간다.
이와는 대조적으로, 단계 S34에서 표시부(24)에 표시되어 있는 UI가 합성 UI인 경우, 상기 UI합성처리부(60)는, 상기 합성 UI의 합성UI정의파일에 포함되는 UI오브젝트에 대하여, 단계 S33에서 변경된 기준 사이즈에 의거하여, UI합성처리를 다시 실행한다(단계 S35). 이 때, 도 5의 단계 S13에서 설정한 각종 마진 가운데, 적절한 마진에 의거하여 UI합성처리를 다시 행한다. 그 다음, 상기 UI생성부(13)는, 다시 UI합성처리가 행하여진 각 UI오브젝트를 표시부(24)에 표시하여, UI의 표시를 갱신하게 된다(단계 S36). 그런 다음, 상기 처리는 단계 S31로 되돌아가, 조작수단의 차기 변경을 검출하게 된다.
단계 S32에서 조작수단이 변경되지 않은 경우, 상기 조작수단의 변경의 검출이 종료되었는지, 즉 조작수단검출모드가 종료되었는지의 여부를 판정한다(단계 S37). 조작수단검출모드가 아직 종료되어 있지 않은 경우에는, 상기 처리가 단계 S31로 되돌아가, 상기 조작수단의 차기 변경을 검출하게 된다. 단계 S37에서 조작수단검출모드가 종료된 것으로 검출된 경우, 상기 조작수단의 변경에 수반되는 UI재합성처리를 종료한다. 따라서, 상기 조작수단검출부(14)가 본 실시예에 따른 조작입력수단판별부를 구성하게 된다.
이에 따라, 유저에 의한 입력의 조작수단이 변경되면, 휴대전화(1)는 새로운 조작수단을 판정하여, 각 조작수단에 따라 최적의 합성 UI를 유저에 제공한다. 즉, 도 6(A)에 나타내는 바와 같은 합성 UI를 터치패널(20)의 표시부(24)에 표시하는 동안, 스타일러스를 스타일러스수납부(90)로부터 추출하면, 합성 UI가 재합성되어 도 6(B)에 도시된 바와 같은 합성 UI의 표시로 화면이 변경된다. 즉, 스타일러스에 의한 조작에 대하여, 손가락에 의한 조작의 경우보다도 다수의 UI오브젝트가 보다 작은 사이즈로 표시된다. 그 후, 스타일러스를 스타일러스수납부(90)에 수납하면, 도 6(A)에 도시된 바와 같이 손가락으로 조작하는데 적절한 합성 UI로 화면이 되돌아간다.
또한, 스타일러스를 추출하여 도 6(B)에 도시된 바와 같은 합성 UI로 화면이 변경된 후에도, 입력조작을 위해 스타일러스를 사용하지 않고, 손가락으로 터치패널(20)을 터치하는 경우에, 그 손가락의 접촉면적(기준 사이즈)에 의거하여 도 6(A)에 도시된 바와 같은 합성 UI로 화면이 전환될 수 있다. 그 후, 스타일러스를 사용하여 터치패널(20)을 터치하는 경우, 도 6(B)에 도시된 바와 같은 합성 UI로 화면이 변경될 수도 있다.
또한, 조작키부(80)를 구성하는 키를 누르는 동작에 의거하여, 표시부(24)에 표시되는 합성 UI를, 조작키에 의한 조작용(즉, 터치패널을 사용하지 않음) 합성 UI로 바꾸는 것도 가능하다. 더욱이, 표시부(24)에 입력 스폿을 지정하기 위하여 포인터를 표시한 때, 상기 표시부(24)에 표시된 포인터를 조작하기 적합한 합성 UI를 표시할 수도 있다. 단말이 포인터의 화상을 고객맞춤형으로 할 수 있는 경우, 표시되는 포인터의 화상의 크기에 의거하여 기준 사이즈를 산출하여, 그 기준 사이즈에 따라 합성 UI를 표시할 수 있다.
다음으로, 도 5를 참조하여 설명한 자동레이아웃처리에 있어서의 마진설정처리(단계 S13)의 상세를 설명한다. 도 5에 도시된 자동레이아웃처리의 단계 S13에서의 마진설정처리는, 각각의 UI오브젝트를 배치할 때에 인접하는 UI오브젝트들 간에 필요한 마진(간격)을 설정한다. 각각의 UI오브젝트의 마진은, 여러가지의 조건에 의거하여 설정할 수가 있고, 복수의 마진도 규정될 수 있다.
본 실시예에 따르면, UI오브젝트를 배치할 때, 최초에, 각종 마진 가운데 사용될 가능성이 있는 것을 모두 설정한다. 최초에 모든 마진을 설정함으로써, 그 후 각 UI오브젝트를 사용하여 어떠한 레이아웃처리를 행하더라도, 그 레이아웃에 대응하는 적절한 마진을 사용할 수 있다.
본 실시예에 따른 마진설정처리는, 각 UI오브젝트에 대하여, 마진 A 내지 마진 F의 6종의 마진을 설정한다. 이 마진설정처리는, 어떤 UI오브젝트와 그 주위에 배치될 수도 있는 또다른 UI오브젝트의 상호관계에 의거하여 적절한 마진을 설정한다.
이하, 마진 A 내지 마진 F의 각각의 마진에 대하여 설명을 나열한다. 이하, 마진을 설정하는 대상이 되는 UI오브젝트를 "대상 UI오브젝트"라고 하고, 상기 대상 UI오브젝트에 인접하는 UI오브젝트를 "인접 UI오브젝트"라고 한다.
마진 A: 대상 UI오브젝트와 인접 UI오브젝트가 원래 같은 UI정의파일에 포함되지만, 상술한 (1)의 "UI오브젝트타입정보"에 따른 상이한 타입인 경우에 사용되는 마진.
("원래 같은 UI정의파일에 포함되고"란, UI를 단독으로 기동시킨 경우에 UI오브젝트가 같은 UI에 포함되는 것을 의미한다. 또한, "UI오브젝트타입정보에 따른 상이한 타입"이란, 예를 들면 한편이 버튼이나 키 등의 유저 조작을 접수하는 UI오브젝트인 반면, 다른 편은 텍스트박스나 화상표시 등 유저 조작을 접수하지 않는 UI오브젝트인 경우 등을 의미한다는 점에 유의한다.)
마진 B: 대상 UI오브젝트와 인접 UI오브젝트가 원래 같은 UI정의파일에 포함되고, (1)의 "UI오브젝트타입정보"에 따른 같은 타입인 경우에 사용하는 마진.
마진 C: 대상 UI오브젝트를, 터치패널(20)의 표시부(24)의 가장자리부에 배치하는 경우의 마진.
마진 D: 대상 UI오브젝트와 인접 UI오브젝트가 원래 다른 UI정의파일에 포함되고, (1)의 "UI오브젝트타입정보"에 따른 상이한 타입인 경우에 사용하는 마진.
마진 E: 대상 UI오브젝트와 인접 UI오브젝트가 원래 다른 UI정의파일에 포함되고, (1)의 "UI오브젝트타입정보"에 따른 같은 타입인 경우에 사용하는 마진.
마진 F: 대상 UI오브젝트와 인접 UI오브젝트의 UI오브젝트정의정보에 각각 포함된, 상술한 (8)의 "UI오브젝트들의 관련성 정보"가 나타내는 관련성이 높은 경우에 설정하는 마진.
("관련성 정보가 나타내는 관련성이 높은" UI오브젝트란, 예를 들면 TV 리모콘 UI의 채널 선택의 업/다운이나 혹은 오디오 리모콘 UI의 음량의 업/다운과 같은 "페어(pair)" 또는 그룹으로 사용하는 것이 상정되는 UI오브젝트를 의미한다는 점에 유의한다.)
이하, 도 8의 플로우차트 및 도 9 내지 도 16을 참조하여, 본 실시예에 따른 마진설정처리의 흐름에 대하여 설명한다.
우선, 마진설정처리가 개시되면, 상기 마진설정부(75)는 합성 UI를 구성하기 위해서 선택된 UI오브젝트들 가운데 대상 UI오브젝트로서 마진이 설정되어 있지 않은 UI오브젝트를 하나 선택한다(단계 S51). 일단 대상 UI오브젝트가 선택되면, 상기 마진설정부(75)는 상기 선택된 대상 UI오브젝트의 UI오브젝트정의정보를 해석하여, (1)의 "UI오브젝트의 타입"을 판정한다(단계 S32).
대상 UI오브젝트의 타입을 판정함으로써, 각 UI오브젝트의 기능에 대응하는 마진을 설정할 수 있다. 도 9는 이러한 방식으로 각 UI오브젝트의 기능에 따라 설정된 마진의 예를 나타내는 도면이다. 각 열은 UI오브젝트의 타입을 나타내고, 좌측으로부터 우측으로의 순서로, 버튼(Button), 텍스트박스(TextBox), 체크박스(Checkbox) 또는 스크롤바(Scrollbar)의 기능을 가지는 UI오브젝트의 예를 나타낸다. 각 UI오브젝트의 주위를 둘러싸는 파선은 상기 UI오브젝트로 설정된 마진의 영역을 나타낸다. 이 마진의 영역은 가상적으로 설정하고, 표시부(24)에는 파선을 표시되지 않도록 하는 것이 바람직하다.
키나 버튼과 같이 유저가 손가락으로 조작하는 경우와 스타일러스 등에 의해 조작하는 경우에 상정되는 UI오브젝트에 있어서는, 그 입력수단에 대응하여 마진을 설정한다. 즉, 도면에 도시된 바와 같이, 손가락에 의한 입력을 상정하는 버튼의 UI오브젝트가 크기가 작은 경우, 유저의 손가락의 접촉면적의 크기를 고려하여 충분한 마진을 설정해야 한다. 이와는 대조적으로, 스타일러스나 키에 의한 입력을 상정하는 버튼의 UI오브젝트에 있어서는, 미세하게 위치를 지정하는 입력이 가능하기 때문에, 도면에 도시된 바와 같이 UI오브젝트의 크기에 그다지 의존하지 않는 (거의 일정한) 마진을 설정할 수 있다. 여기서, "키에 의한 입력"이란, 조작키부(80)의 방향지시키 등을 사용하여 표시부(24)에 표시되는 선택 후보를 이동 및 결정하기 위한 입력, 또는 조작키부(80)의 방향지시장치를 사용하여 포인터 등을 이동시켜 UI오브젝트를 결정하기 위한 입력을 상정하고 있다. 또한, UI오브젝트의 타입이 텍스트박스인 경우, 즉 유저의 입력을 접수하지 않은 UI오브젝트인 경우, 입력수단에 상관없이 일정한 작은 마진을 설정할 수 있다. UI오브젝트의 타입이 체크박스나 스크롤바인 경우에는, 도면에 도시된 바와 같이, 어느정도 입력수단을 고려하여 마진을 설정해야 한다.
입력수단을 고려하여, 각 UI오브젝트의 타입에 의거하여, 마진을 설정하는 것과, 상술된 방식으로 마진에 의거하여 레이아웃을 디자인하는 것은, 예를 들면 도 10에 나타내는 바와 같은 배치를 제공할 수 있다. 도 10(A) 및 도 10(B)는 입력수단이 유저의 손가락인 경우의 마진을 설정하고, 상기 설정에 따라 소정의 레이아웃을 제공함으로써 합성 UI를 생성한 예를 도시하고 있다. 도 10(A)는 가상적인 마진을 파선을 이용하여 시각적으로 밝힌 도면인 반면, 도 10(B)는 UI오브젝트를 실제로 표시한 예를 도시한 도면이다. 도 1O(C) 및 도 10(D)는 입력수단이 스타일러스인 경우의 마진을 설정하여 합성 UI를 생성한 예를 나타내는 도면이다. 도 10(C)는 마진을 파선으로 나타낸 도면인 반면, 도 10(D)는 UI오브젝트를 실제로 표시한 예를 도시하는 도면이다. 이에 따라, 유저가 손가락으로 입력하는 경우에는, 조작성을 고려하여 충분한 마진을 설정하여 버튼끼리의 간격을 넓히게 된다. 이와는 대조적으로, 스타일러스를 사용하는 등의 미세한 입력을 행하는 경우에 있어서, 작은 마진을 설정하는 것에 의해 UI 표시영역이 효율적으로 활용할 수 있다. 이 경우, 더욱 많은 UI오브젝트를 추가하는 것도 가능하다.
다음으로, 단계 S53에서 대상 UI오브젝트의 타입의 판정 결과가 유저의 조작을 접수하는 버튼이나 키(이하, "유저 조작 타입"이라고 함)인 경우, 상기 마진설정부(75)는 마진 A로서 소정의 최소 마진을 설정한다(단계 S54). 상기 마진 A는 대상 UI오브젝트와 인접 UI오브젝트의 타입이 다른 경우에 사용되며, 단계 S54에 있어서는, 유저 조작 타입의 대상 UI오브젝트의 주위에, 유저 조작 타입이 아닌 인접 UI오브젝트를 배치하는 경우의 마진을 설정하는 것이 된다. 유저 조작 타입의 UI오브젝트에 인접하는 UI오브젝트가 유저 조작 타입이 아닌 경우에는, 상기 인접하는 UI오브젝트를 잘못 터치하더라도 입력으로 취급되지 않는다. 따라서, 유저 조작 타입의 UI오브젝트끼리가 인접하지 않는 한, 이들 오브젝트끼리 근접하여 배치하더라도 조작성이 악화되지 않기 때문에, 최소 마진이 마진 A로 설정되게 된다.
다음으로, 상기 마진설정부(75)는 대상 UI오브젝트의 UI오브젝트정의정보에 저장된 상술한 (4)의 "UI오브젝트의 표시 사이즈 정보"와, 단말의존정보기억영역(57)에 저장되어 있는 기준 사이즈를 비교한다(단계 S55). 상술된 바와 같이, "기준 사이즈"란, 터치패널(20)의 입력부(22)에 조작수단이 접촉하게 되는 표준 접촉면적의 크기, 즉 조작하는 유저의 손가락이나 스타일러스의 접촉면적의 크기를 의미한다.
단계 S56에서 (4)의 UI오브젝트의 표시 사이즈가 기준 사이즈보다도 크지 않은 경우, 상기 마진설정부(75)는 (4)의 UI오브젝트의 표시 사이즈와 기준 사이즈 간의 차이에 의거하여 마진 B를 설정한다(단계 S57). 여기서, (4)의 UI오브젝트의 표시 사이즈가 기준 사이즈보다도 크지 않은 경우란, 도 11(A)에 나타내는 바와 같이, 대상 UI오브젝트의 표시 사이즈보다도 입력하는 손가락의 접촉면적 쪽이 큰 경우를 의미한다. 이 경우, 유저 조작 타입의 UI오브젝트끼리 서로 인접하면, 유저는 인접 UI오브젝트를 의도하지 않게 터치할 수도 있다. 따라서, 대상 UI오브젝트와 인접 UI오브젝트의 타입이 동종인 경우에 사용되는 마진 B로서 충분한 여유를 갖도록 설정해야 한다.
이와 같이, 인접 UI오브젝트에 대응하는 마진을 설정하고, 상기 마진에 의거하여 레이아웃을 디자인함으로써, 예컨대 도 12에 나타내는 바와 같은 배치를 제공한다. 도 12(A)는 UI오브젝트의 타입이 동종인 경우의 마진, 즉 마진 B에 의거하여, 유저 조작 타입의 UI오브젝트(버튼 B)를 다수 배치한 예를 게시하는 도면이다. 이와 같이, 마진 B로 설정한 각 UI오브젝트의 마진의 영역에, 다른 UI오브젝트가 겹치지 않도록 각 UI오브젝트를 배치하므로, 유저 조작 타입의 UI오브젝트가 서로 너무 근접하여 배치되는 것을 방지할 수도 있다. 따라서, 유저가 손가락으로 조작할 때, 의도하지 않게 인접 UI오브젝트를 잘못 터치하게 될 가능성이 저감된다.
도 12(B)는 UI오브젝트의 타입이 이종인 경우의 마진, 즉 마진 A에 의거하여 유저 조작성의 UI오브젝트를 일부 배치한 예를 나타내는 도면이다. 유저 조작 타입의 UI오브젝트(버튼 B)의 인접 UI오브젝트가 유저 조작 타입의 오브젝트가 아닌 경우(예를 들면, 텍스트박스)에는, 이들 UI오브젝트를 근접 배치하더라도 조작성은 악화되지 않는다. 이는 유저가 실수로 UI오브젝트를 터치하더라도, 유저 조작 타입의 UI오브젝트만이 입력을 접수하기 때문이다. 따라서, 다른 타입의 UI오브젝트가 서로 인접하는 경우에는, 상기 UI오브젝트들을 근접 배치하여, UI 표시영역을 효과적으로 활용할 수 있게 된다.
일단 마진 B가 설정되면, 다음으로 상기 마진설정부(75)가 단말의존정보기억영역(57)에 저장되어 있는 터치패널(20)의 표시부(24)의 가장자리 부분에 관한 정보(이하, "가장자리 마진 정보"라고 함)에 의거하여, 마진 C를 설정한다(단계 S58). 이 경우, 대상 UI오브젝트의 표시 사이즈보다도, 입력하는 손가락의 접촉면적 쪽이 크기 때문에, 비교적 작은 대상 UI오브젝트가 표시부(24)의 가장자리에 근접하여 배치되면, 유저가 상기 대상 UI오브젝트를 터치하기 어렵게 된다. 따라서, 이 경우에, 마진 C는 단말의존정보(장치의존정보)인 가장자리 마진 정보에 의거하여, 충분한 마진을 갖도록 설정해야 한다.
이와 같이, 가장자리 마진 정보에 의거하여 마진을 설정하고, 상기 마진에 의거하여 레이아웃을 디자인함으로써, 예를 들면 도 13에 나타내는 바와 같은 배치를 제공한다. 도 13(A)에 나타내는 바와 같이, 유저 조작 타입의 "전원" 버튼의 UI오브젝트의 표시 사이즈가 기준 사이즈보다, 즉 손가락의 접촉면적보다 크기 때문에, UI 표시영역의 끝부분(도 13(A)의 좌측 끝)에 "전원" 버튼이 배치되더라도 조작성은 악화되지 않는다. 하지만, 유저 조작 타입의 버튼 B의 표시 사이즈는 기준 사이즈보다, 즉 손가락의 접촉면적보다 작기 때문에, 버튼 B가 UI 표시영역의 끝부분에 너무 근접 배치되는 경우에 조작성이 악화된다(누르기 어렵게 된다). 따라서, 이러한 UI오브젝트는, UI 표시영역의 끝부분에 너무 근접하지 않도록 마진 C를 설정한다. 도 13(A)에 파선으로 나타내는 UI오브젝트의 마진의 영역은 가상적으로 나타낸 것이고, 표시부(24) 상의 실제 표시는 도 13(B)에 도시되어 있다.
또한, 터치패널(20)을 둘러싸는 부재의 가장자리부의 형상에 의거하여 마진 C를 설정하는 것도 가능하다. 즉, 휴대단말의 터치패널을 둘러싸는 부재가 상기 터치패널에 인접하는 가장자리부에서 챔퍼링되어, 옆에서 볼 때 도 14(B)에 나타내는 바와 같은 형상의 단말의 경우, 유저는 터치패널의 끝부분에 위치하더라도 손가락을 이용하여 UI오브젝트를 터치할 수 있다. 이러한 단말에서는, 도 14(A)에 나타내는 바와 같이 UI 표시영역의 끝부분(도 14(A)의 우측 끝)에 있는 버튼 등의 UI오브젝트를 배치하더라도 조작성이 악화되지 않는다. 따라서, 이 경우에는, UI오브젝트를 UI 표시영역의 끝부분에 근접하여 배치하도록 마진 C를 설정함으로써, UI 표시영역을 효과적으로 활용할 수 있게 된다.
이와는 대조적으로, 휴대단말의 터치패널을 둘러싸는 부재가 터치패널에 인접하는 가장자리부에서 챔퍼링되지 않는 경우, 도 14(C)에 나타내는 바와 같이, 버튼 등의 UI오브젝트를 배치할 때 UI 표시영역의 끝부분(도 14(C)의 우측 가장자리)에 너무 근접시키지 않도록 마진 C를 설정한다. 이는 이러한 단말에서는 도 14(D)에 나타내는 바와 같이 유저의 손가락이 터치패널의 끝부분의 위치를 터치할 수 없기 때문이다.
이러한 처리를 행하기 위해서, 휴대단말의 터치패널을 둘러싸는 부재의 터치패널에 인접하는 가장자리부에서의 형상에 관한 정보, 즉 표시부의 가장자리부를 형성하는 부재의 형상에 의거하여 설정된 정보를 단말의존정보로서 미리 단말의존정보기억영역(57)에 저장한다.
일단 마진 C가 설정되면, 다음으로 상기 마진설정부(75)는 이미 설정된 마진 A 및 B에 의거하여 마진 D 및 E를 설정한다(단계 S61). 마진 A 및 D 양자 모두는 대상 UI오브젝트와 인접 UI오브젝트의 타입이 다른 경우에 사용되는 반면, 마진 B 및 E 양자 모두는 대상 UI오브젝트와 인접 UI오브젝트의 타입이 동종인 경우에 사용된다. 이 점에서, 이들은 각각 서로 유사점을 가지고 있다. 하지만, 마진 A 및 B는 대상 UI오브젝트와 인접 UI오브젝트가 원래 같은 UI정의파일에 포함된 경우에 사용된다.
이와는 대조적으로, 마진 D 및 E는 대상 UI오브젝트와 인접 UI오브젝트가 원래 다른 UI정의파일에 포함된 경우에 사용된다. 이는 UI오브젝트의 조직화된 그룹을 시각적으로 인식하기 쉽게 하기 위하여, 합성 UI를 생성할 때, 원래 같은 UI정의파일에 포함된 UI오브젝트는, 원래 다른 UI정의파일에 포함된 UI오브젝트보다도 근접시켜 설정되어야 한다. 따라서, 상기 마진설정부(75)는 먼저 설정된 마진 A 및 B보다도 약간 크게 설정하는 등의 보정을 행하여 마진 D 및 E를 설정한다.
예를 들면, 도 15(A)에 나타내는 바와 같이, UI오브젝트와 인접 UI오브젝트가 상이한 UI에 속하는 경우의 마진 (1), 즉 마진 D 또는 E는, 각각 UI오브젝트 양자 모두가 같은 UI에 속하는 경우에 사용되는 마진, 즉 이미 설정된 마진 A 또는 B에 의거하여 설정된다. 인접 UI오브젝트가 원래 같은 UI에 속하는 경우에는, (예컨대, 디폴트-사이즈형 마진, 즉 단독 UI에 대한 마진 등의) 약간 작은 마진이 설정되는 반면, 인접 UI오브젝트가 상이한 UI에 속하는 경우에는 약간 큰 마진이 설정된다. 도 15(B)에 도시된 에어컨디셔너 리모콘 UI(단독 UI) 및 도 15(C)에 도시된 비디오 리모콘 UI(단독 UI)의 주요한 UI오브젝트가 자동으로 선택되어 배치되면, 예를 들면 도 15(D)에 도시된 바와 같이 합성 UI를 생성한다. 도면에 도시된 바와 같이, 각 UI오브젝트의 조작성을 유지한 채로, 같은 UI에 속하여 있는 UI오브젝트들을 서로 근접하여 배치할 수 있게 된다. 이와 같이 마진 D 및 E를 설정함으로써, 합성 UI를 구성할 때에 원래 같은 UI에 속하여 있는 UI오브젝트들이 서로 근접하여 배치되므로, 유저가 각각의 UI를 시각적으로 용이하게 구별할 수 있게 된다.
단계 S56에서 (4)의 "UI오브젝트의 표시 사이즈"가 기준 사이즈보다도 큰 경우, 상기 마진설정부(75)는 마진 B 및 C로서 소정의 최소 마진을 설정한다(단계 S59). (4)의 UI오브젝트의 표시 사이즈가 기준 사이즈보다도 큰 경우란, 도 11(B)에 나타내는 바와 같이 입력하는 손가락의 접촉면적보다도 UI오브젝트의 표시 사이즈가 큰 경우를 의미한다. 이 경우, 유저 조작 타입의 UI오브젝트들이 서로 인접하더라도, 유저가 비교적 큰 대상 UI오브젝트에 인접하는 UI오브젝트를 실수로 터치할 가능성이 낮아질 수 있다. 또한, 이 경우에는, 비교적 큰 대상 UI오브젝트가 표시부(24)의 끝부분에 근접하여 배치되더라도, 유저가 상기 대상 UI오브젝트를 터치하기 어렵게 되지는 않는다. 따라서, 대상 UI오브젝트와 인접 UI오브젝트의 타입이 동종인 경우에 사용되는 마진 B와, UI오브젝트가 표시부(24)의 끝부분에 배치되는 경우에 사용되는 마진 C로서 소정의 최소 마진을 설정하더라도 문제가 없다. 단계 S59 이후, 마진설정처리는 단계 S61로 진행된다.
또한, 단계 S53에서 대상 UI오브젝트의 타입의 판정 결과가 유저 조작 타입이 아닌 경우, 즉 대상 UI오브젝트가 유저 조작을 접수하지 않은 타입인 경우, 상기 마진설정부(75)는 마진 A, B 및 C로서 소정의 최소 마진을 설정한다(단계 S60). 대상 UI오브젝트가 유저 조작 타입이 아닌 경우에는, 인접 UI오브젝트가 유저 조작 타입인지의 여부에 관계없이, 이들 UI오브젝트를 서로 근접시키는 것은, 대상 UI오브젝트의 조작성을 악화하지 않는다. 또한, 대상 UI오브젝트가 유저 조작 타입이 아닌 경우, 상기 대상 UI오브젝트를 표시부(24)의 가장자리에 근접하여 배치하더라도 유저의 조작에 영향을 주지 않는다. 따라서, 이 경우에는 마진 A, B 및 C로서 소정의 최소 마진을 설정하더라도 문제가 없다. 단계 S60 이후, 마진설정처리는 단계 S61로 진행된다.
일단 단계 S61로의 처리에 의해 마진 A 내지 E가 설정되면, 다음으로 마진설정부(75)가 대상 UI오브젝트의 (8)의 "UI오브젝트 간의 관련성 정보"를 확인한다(단계 S62). 예를 들면, 도 16(A)에 나타내는 바와 같이, 단독으로 사용하는 TV 리모콘 UI를 구성하는 UI오브젝트에는, "채널 선택 +" 및 "채널 선택 -", 그리고 "음량 +" 및 "음량 -"와 같은 페어로서 대상 오브젝트와 함께 사용되는 UI오브젝트가 존재한다. 2개 이상의 UI오브젝트가 통상적으로 "페어" 또는 그룹으로 사용되는 경우, UI오브젝트는 "관련성이 높다"이다. 관련성이 높은 "페어"의 UI오브젝트의 UI오브젝트정의정보에, (8)의 UI오브젝트들 간의 관련성 정보로서, 미리 도 16(B)에 나타내는 바와 같은 UIML의 속성정보(relate_ID)가 포함된다. 도면에 도시된 예시에 있어서, 각각의 (채널 선택 +, 채널 선택 -) 및 (음량 +, 음량 -)에는 관련성이 높은 UI오브젝트로서 공통 ID가 제공된다. 예를 들면, 채널 선택용 UI오브젝트에는, 도 16(B)의 (2) 및 (3)에 나타내는 바와 같이, 공통 ID로서 relate_ID="select_1"이 제공되는 반면, 음량 제어용 UI오브젝트에는, 도 16(B)의 (4) 및 (5)에 나타내는 바와 같이, relate_ID="volume_1"이 제공된다.
단계 S63에서 합성 UI를 구성하는 UI오브젝트 가운데, 대상 UI오브젝트와 관련성이 높은 UI오브젝트가 있는 경우, 상기 마진설정부(75)는 대상 UI오브젝트를 포함하는 원래 단독으로 사용되는 UI를 해석한다. 이러한 해석 후, 상기 마진설정부(75)는 상기 해석의 결과에 의거하여 마진 F를 설정한다(단계 S64). 어떤 UI오브젝트가 대상 UI오브젝트와 관련성이 높은 경우, 통상적으로 UI오브젝트 양자 모두가 단독으로 사용되는 동일한 UI에 포함된다. 따라서, 상기 마진설정부(75)가 원래 단독으로 사용되는 UI에서 UI오브젝트로 설정된 마진을 판정하여, 이 마진의 크기에 의거하여, 관련성이 없는 다른 UI오브젝트보다도 근접하여 UI오브젝트들을 배치한다.
예를 들어, 원래 UI에서 관련성이 높지 않은 UI오브젝트가 서로 인접하여 배치되는 경우, 도 16(C)에 나타내는 바와 같이, 이들 UI오브젝트가 소정의 간격으로 배치된다. 그러므로, 유저는 이들 UI오브젝트들이 관련성이 높지 않다는 것을 알 수 있게 된다. 도 16(C)에 있어서는, "음량"의 UI오브젝트와 "채널 선택"의 UI오브젝트가 관련성이 높지 않기 때문에, 그들이 서로 인접하여 배치될 때, 어느정도의 마진이 확보된다. 이와는 대조적으로, 원래 UI에서 관련성이 높은 UI오브젝트들이 서로 인접하여 배치되는 경우에는, 도 16(D)에 나타내는 바와 같이, 이들 UI오브젝트들이 다른 인접 UI오브젝트들과 비교해서 근접하여 배치된다. "음량"의 UI오브젝트들이 관련성이 높고, "채널 선택"의 UI오브젝트들도 그러하기 때문에, 인접하여 배치될 때에 상기 UI오브젝트들이 서로 근접하여 배치된다. 따라서, 유저는 이들 UI오브젝트들이 관련성이 높다는 것을 가시적으로 용이하게 인식할 수 있을 뿐만 아니라, UI오브젝트들이 페어로서 사용될 때의 조작성도 향상되게 된다.
상술된 바와 같이, 마진 A 내지 F까지의 설정을 행하여 하나의 UI오브젝트에 대하여 복수의 마진이 설정된다. 예를 들면, 도 11(A)에 나타내는 바와 같이, 기준 사이즈보다도 작은 버튼의 UI오브젝트에 대해서는, 인접 UI오브젝트가 동일 UI에 속하지만 다른 타입인 경우에 사용되는 마진 A로서 (1)의 크기를, 그리고 인접 UI오브젝트가 같은 타입인 경우에 사용되는 마진 B로서 (2)의 크기를 설정하는 것이 바람직하다. 또한, 인접 UI오브젝트가 상이한 UI에 속하고 다른 타입인 경우에 사용되는 마진 D로서 (2)의 크기를, 그리고 인접 UI오브젝트가 같은 타입인 경우에 사용되는 마진 E로서 (3)의 크기를 설정하는 것이 바람직하다. 더욱이, UI 표시영역의 끝부분에 UI오브젝트가 배치되는 경우에 사용되는 마진 C로서 사이즈 (2)가 설정된다. 이와는 대조적으로, 예를 들면 도 11(B)에 나타내는 바와 같이, 기준 사이즈보다도 큰 버튼의 UI오브젝트에 대해서는, 마진 A를 (1)의 크기로, 마진 B를 (2)의 크기로, 마진 D를 (2)의 크기로, 마진 E를 (3)의 크기로 각각 설정하는 것이 바람직하다. UI 표시영역의 끝부분에 UI오브젝트가 배치되는 경우에 사용되는 마진 C로서 (1)의 크기가 설정된다. 또한, "전원" 버튼의 UI오브젝트에는, 페어로서 사용하는 것과 같은 관련성이 높은 UI오브젝트가 존재하지 않기 때문에, 마진 F를 설정하지 않는다.
일단 단계 S64까지의 처리가 종료되면, 상기 마진설정부(75)는 다음으로 합성 UI를 구성하기 위하여 선택된 UI오브젝트에서, 대상 UI오브젝트로서 마진이 아직 설정되어 있지 않은 여하한의 UI오브젝트가 여전히 존재하는지의 여부를 확인한다(단계 S65). 아직 마진의 설정이 되어 있지 않은 UI오브젝트가 있는 경우에는, 단계 S51로 되돌아가 마진설정처리를 속행한다. 이와는 대조적으로, 단계 S65에서 모든 UI오브젝트에 대하여 마진이 설정되었다고 판정된 경우에는, 마진설정처리가 종료된다.
상술된 마진설정처리에 의해 설정된 각종 마진은, UI합성처리부(60)가 각 UI오브젝트의 UI오브젝트정의정보에 포함시켜, 합성UI정의파일기억영역(56)에 저장한다. 따라서, 상기 마진정보는, 이후 행하여지는 자동레이아웃처리에 있어서, UI합성처리부(60)가 합성UI정의파일기억영역(56)으로부터 읽어 내는 것에 의해, 배치 상황에 의거하여 적절히 선택하여 사용할 수가 있다.
상술된 바와 같이 마진설정처리에 의해 마진을 설정하지 않고서(즉, 도 5의 단계 S13를 생략하여), 도 5의 단계 S14 이후의 자동레이아웃처리가 수행되는 경우, 예를 들어 도 17(A)에 나타내는 바와 같이, 마진이 전혀 설정되지 않은 합성 UI를 생성할 수도 있다. 도 17(A)는 단독으로 사용되는 (1)∼(4)의 4개의 UI에서 주요한 UI오브젝트를 선택하여 자동레이아웃처리를 행한 결과를 보여준다. 이러한 합성 UI는 각 UI오브젝트에 마진이 설정되어 있지 않기 때문에, 유저에 대한 조작성 뿐만 아니라 가시성도 좋지 않다.
본 실시예에 따른 마진설정처리에 의해 마진을 설정한 후(즉, 도 5의 단계 S13을 거친 후), 도 5의 단계 S14 이후의 자동레이아웃처리가 수행되면, 예를 들면 도 17(B)에 나타내는 바와 같이, 적절한 마진이 설정된 합성 UI가 생성된다. 이렇게 적절한 마진이 설정된 합성 UI는, 조작성을 현저히 향상시킬 수 있을 뿐만 아니라 잘 조직되어 보이므로, 가시성이 좋지 않은 것에 기인하는 유저의 오조작도 저감시킬 수 있다. 또한, 실제로 합성 UI를 생성하는 경우에는, 각 UI오브젝트 자체 또는 그 배경(예를 들면, 마진)을 상이한 컬러로 페인팅하여 UI오브젝트가 속하는 원래 UI를 구별함에 의해, 각 UI오브젝트의 기능의 가시성을 더욱 향상시킬 수도 있다.
본 발명은 상술한 실시예로만 한정되는 것이 아니라, 수많은 변경 또는 변형이 가능하다는 점에 유의한다. 예를 들면, 본 실시예에 있어서, 마진설정처리의 흐름에서 사용 가능성이 있는 각종의 마진을 미리 모두 설정하고 나서, 추후에 수행되는 배치설정처리에서 필요한 마진을 선택하게 된다. 하지만, 미리 각종의 마진을 설정하는 것은 아니고, 배치설정처리를 행하면서 필요에 따라 소요 마진을 설정할 수도 있다.
또한, 상기 실시예에 있어서는, 터치패널을 구비한 휴대단말에 의하여 UI합성처리가 행해진다. 하지만, 본 발명에 따른 UI합성처리에 있어서는, 터치패널이 필수적인 요소가 아니다. 본 발명은 예컨대 기계식 키를 다수 구비하는 입력부나 또는 포인터 등을 이동시켜 UI오브젝트의 선택 및 결정을 행하는 방향지시장치를 구비한 입력부 등, UI를 합성하여 사용하는 것이 상정되는 임의의 단말에도 적용가능하다.
더욱이, 상기 실시예에 있어서는, 설명의 편의를 위하여, 조작수단검출모드인 경우에, 조작수단의 변경에 수반되는 UI재합성처리를 행하도록 하였지만, 휴대전화(1)는 항상 이러한 모드로 동작되도록 할 수도 있다.
또한, 상기 실시예에 있어서는, 복수의 UI를 구성하는 UI오브젝트로부터 합성 UI를 생성하는 경우에 대하여 설명하였지만, 복수의 UI에 의거하는 합성 뿐만 아니라, 단 하나의 UI에서 복수의 UI오브젝트를 다수 선택하여 UI를 생성하는 경우에 관해서도 본 발명을 적용할 수 있다.
더욱이, 상기 실시예에 있어서는, 각 어플리케이션에 대응하는 UI의 UI정의파일이 미리 UI정의파일기억영역(52)에 저장되어 있지만, 필요한 UI정의파일을 적절히 외부에서 취득하도록 할 수도 있다. 이 경우, UI를 사용하는 어플리케이션으로부터 UI정의파일이 지정되면, 필요한 UI정의파일이 UI정의파일기억영역(52) 또는 합성UI정의파일기억영역(56)에 저장되었는지의 여부를 판정한다. 필요한 UI정의파일이 UI정의파일기억영역(52) 또는 합성UI정의파일기억영역(56)에 존재하지 않는 경우, 상기 제어부(10)의 UI취득부(12)는 무선통신부(30)를 거쳐 외부기기 또는 외부서버(도시되지 않음)로부터 필요한 UI정의파일을 취득한다.
또한, 상술한 각 실시예에서 사용되는 UI정의파일의 일례로서, 이하에 XML에 기초한 UIML 형식의 파일의 예를 나타낸다. 본 예시에 있어서, UI오브젝트는 <template> tag로 정의되므로, <template>와 </template> 사이의 기재가 UI오브젝트정의정보에 상당한다. 여기서는, TV 리모콘 UI를 구성하는 UI정의파일(TV1_interface.uiml)로부터, "전원"의 UI오브젝트와 "채널 선택 +"의 UI오브젝트의 UI오브젝트정의정보의 일례를 나타낸다. 밑줄 친 부분 가운데, priority의 속성은 우선순위 정보(수치가 0에 가까울수록 우선도가 높음)를 나타내고, relate의 속성은 다른 UI오브젝트들과의 관련성 정보를 나타내며, size의 속성은 사이즈 정보를 나타낸다.
Figure 112010085630401-pct00001
본 발명에 의하면, (합성 UI의) UI오브젝트의 레이아웃이 디자인되는 경우, UI오브젝트의 타입이나 사이즈 및 인접하는 UI오브젝트의 타입 뿐만 아니라, 휴대단말의 조작부 및 표시부의 사양에 대응하는 단말의존정보(장치의존정보)에 의거하여, 각 UI오브젝트의 주위에 적절한 간격(마진)이 제공된다. 이에 따라, 합성 UI를 표시하는 경우, 조작성을 악화시키지 않으면서 레이아웃을 디자인할 수 있게 된다.
1 휴대전화
10 제어부
11 어플리케이션프로그램실행부
12 유저인터페이스취득부
13 유저인터페이스생성부
14 조작수단검출부
15 UI처리부
20 터치패널
22 입력부
24 표시부
30 무선통신부
40 적외선통신부
50 기억부
51 어플리케이션프로그램기억영역
52 유저인터페이스정의파일기억영역
53 개별유저인터페이스리소스기억영역
54 공통유저인터페이스리소스기억영역
55 관련어플리케이션프로그램정보기억영역
56 합성유저인터페이스정의파일기억영역
57 단말의존정보기억영역
60 유저인터페이스합성처리부
61 유저인터페이스오브젝트정의정보해석부
62 유저인터페이스오브젝트선택처리부
63 합성유저인터페이스정의파일생성부
64 유저인터페이스리소스정형부
70 자동레이아웃처리부
71 배치설정부
72 배치가부판정부
73 축소오브젝트선택부
74 사이즈하한값설정부
75 마진설정부
80 조작키부
90 스타일러스수납부

Claims (9)

  1. 유저인터페이스생성장치에 있어서,
    어플리케이션프로그램에 의거하여 각종의 기능을 실현하는 어플리케이션프로그램실행부;
    상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 상기 어플리케이션프로그램실행부에 지시하기 위해 유저인터페이스를 생성하는 유저인터페이스생성부;
    상기 유저인터페이스생성부에 의해 생성되는 유저인터페이스를 표시하는 표시부; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 각각 포함하는 유저인터페이스정의파일을 복수 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보를 저장하는 기억부를 포함하여 이루어지고,
    상기 유저인터페이스생성부는, 상기 기억부에 저장된 복수의 유저인터페이스정의파일로부터 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보와 상기 장치의존정보에 의거하여, 상기 선택된 유저인터페이스오브젝트정의정보에 대응하는 유저인터페이스오브젝트를 배치할 때 확보해야 할 마진을 설정하며, 상기 마진에 의거하여 선택된 유저인터페이스오브젝트를 상기 표시부 상의 소정의 표시영역에 배치함으로써, 복수의 유저인터페이스로부터 복수의 유저인터페이스오브젝트 중 일부를 선택하여 하나의 유저인터페이스로서 합성한 합성유저인터페이스를 생성하는 유저인터페이스생성장치.
  2. 유저인터페이스생성장치에 있어서,
    어플리케이션프로그램에 의거하여 각종의 기능을 실현하는 어플리케이션프로그램실행부;
    상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 상기 어플리케이션프로그램실행부에 지시하기 위해 유저인터페이스를 생성하는 유저인터페이스생성부;
    상기 유저인터페이스생성부에 의해 생성되는 유저인터페이스를 표시하는 표시부; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 각각 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보를 저장하는 기억부를 포함하여 이루어지고,
    상기 유저인터페이스생성부는, 상기 기억부에 저장된 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보와 상기 장치의존정보에 의거하여, 상기 선택된 유저인터페이스오브젝트정의정보에 대응하는 유저인터페이스오브젝트를 배치할 때 확보해야 할 마진을 설정하며, 상기 마진에 의거하여 선택된 유저인터페이스오브젝트를 상기 표시부 상의 소정의 표시영역에 배치함으로써, 합성유저인터페이스를 생성하며,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트가 상이한 유저인터페이스정의파일에 포함되는 경우, 유저인터페이스오브젝트 양자 모두가 동일한 유저인터페이스정의파일에 포함되는 경우에, 그들 간에 설정되는 마진보다, 상기 유저인터페이스오브젝트와 그것에 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 더 크게 설정하는 유저인터페이스생성장치.
  3. 제1항에 있어서,
    상기 장치의존정보는, 상기 유저인터페이스가 유저 조작을 접수할 때의 기준으로 사용되는 면적을 나타내는 기준 사이즈에 관한 정보를 포함하고,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트 양자 모두가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 의거하여, 상기 유저인터페이스오브젝트와 상기 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 설정하는 유저인터페이스생성장치.
  4. 제1항에 있어서,
    상기 장치의존정보는, 상기 유저인터페이스가 유저 조작을 접수할 때의 기준으로 사용되는 면적을 나타내는 기준 사이즈에 관한 정보를 포함하고,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 의거하여, 상기 표시부의 끝에 배치되는 경우의 상기 유저인터페이스오브젝트와 상기 표시부의 끝 간의 마진을 설정하는 유저인터페이스생성장치.
  5. 유저인터페이스생성장치에 있어서,
    어플리케이션프로그램에 의거하여 각종의 기능을 실현하는 어플리케이션프로그램실행부;
    상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 상기 어플리케이션프로그램실행부에 지시하기 위해 유저인터페이스를 생성하는 유저인터페이스생성부;
    상기 유저인터페이스생성부에 의해 생성되는 유저인터페이스를 표시하는 표시부; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 각각 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보를 저장하는 기억부를 포함하여 이루어지고,
    상기 유저인터페이스생성부는, 상기 기억부에 저장된 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보와 상기 장치의존정보에 의거하여, 상기 선택된 유저인터페이스오브젝트정의정보에 대응하는 유저인터페이스오브젝트를 배치할 때 확보해야 할 마진을 설정하며, 상기 마진에 의거하여 선택된 유저인터페이스오브젝트를 상기 표시부 상의 소정의 표시영역에 배치함으로써, 합성유저인터페이스를 생성하며,
    상기 장치의존정보는, 상기 표시부의 주변을 한정하는 부재의 형상에 의거하여 결정된 정보를 포함하고,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 장치의존정보에 의거하여, 상기 유저인터페이스오브젝트가 상기 표시부의 끝에 배치되는 경우의 마진을 설정하는 유저인터페이스생성장치.
  6. 유저인터페이스생성장치에 있어서,
    어플리케이션프로그램에 의거하여 각종의 기능을 실현하는 어플리케이션프로그램실행부;
    상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 상기 어플리케이션프로그램실행부에 지시하기 위해 유저인터페이스를 생성하는 유저인터페이스생성부;
    상기 유저인터페이스생성부에 의해 생성되는 유저인터페이스를 표시하는 표시부; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 각각 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보를 저장하는 기억부를 포함하여 이루어지고,
    상기 유저인터페이스생성부는, 상기 기억부에 저장된 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보와 상기 장치의존정보에 의거하여, 상기 선택된 유저인터페이스오브젝트정의정보에 대응하는 유저인터페이스오브젝트를 배치할 때 확보해야 할 마진을 설정하며, 상기 마진에 의거하여 선택된 유저인터페이스오브젝트를 상기 표시부 상의 소정의 표시영역에 배치함으로써, 합성유저인터페이스를 생성하며,
    상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스오브젝트와 또다른 유저인터페이스오브젝트 간의 관련성에 관한 정보를 포함하고,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트가 상기 관련성에 관한 정보에 따라 서로 관련성이 높은 경우, 상기 유저인터페이스오브젝트와 상기 인접하여 배치되는 유저인터페이스오브젝트 간의 마진을, 상기 유저인터페이스오브젝트와 상기 관련성에 관한 정보를 가지지 않은 다른 유저인터페이스오브젝트 간의 마진보다도 작게 설정하는 유저인터페이스생성장치.
  7. 제1항에 있어서,
    상기 유저인터페이스로의 조작입력수단을 판별하는 조작입력수단판별부를 더 포함하여 이루어지고,
    상기 장치의존정보는, 상기 유저인터페이스에 대한 입력을 행하기 위한 복수의 조작입력수단에 대응하는 기준 사이즈에 관한 정보를 포함하며,
    상기 유저인터페이스생성부는, 상기 유저인터페이스오브젝트가 유저 조작을 접수하는 타입의 유저인터페이스오브젝트인 경우, 상기 유저인터페이스오브젝트의 표시 사이즈와 상기 기준 사이즈에 관한 정보에 의거하여, 상기 조작입력수단판별부에 의해 판별된 조작입력수단에 따라, 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트에 인접하여 배치되는 또다른 유저인터페이스오브젝트 간의 마진을 설정하는 유저인터페이스생성장치.
  8. 제1항에 있어서,
    상기 유저인터페이스를 거쳐 상기 어플리케이션프로그램실행부에 상기 어플리케이션프로그램에 의거하는 소정의 기능의 실행을 지시하는 입력을 접수하는 조작입력접수부, 및
    상기 조작입력접수부로의 조작입력수단을 판별하는 조작입력수단판별부를 더 포함하여 이루어지고,
    상기 유저인터페이스생성부는, 상기 조작입력수단판별부에서 판별된 조작입력수단에 따라 상기 장치의존정보를 재기록하는 유저인터페이스생성장치.
  9. 제8항에 있어서,
    상기 합성유저인터페이스가 상기 표시부에 표시되는 동안, 상기 조작입력수단판별부에 의하여 상기 조작입력수단의 변경이 검출된 경우, 상기 유저인터페이스생성부는, 현재 조작입력수단에 따라 상기 장치의존정보를 재기록하고, 현재 장치의존정보에 의거하여 새로운 합성유저인터페이스를 생성하는 유저인터페이스생성장치.
KR1020107029123A 2008-06-27 2009-06-26 유저인터페이스생성장치 KR101450640B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2008-168945 2008-06-27
JP2008168945 2008-06-27
PCT/JP2009/061771 WO2009157560A1 (ja) 2008-06-27 2009-06-26 ユーザインタフェース生成装置

Publications (2)

Publication Number Publication Date
KR20110014223A KR20110014223A (ko) 2011-02-10
KR101450640B1 true KR101450640B1 (ko) 2014-10-14

Family

ID=41444620

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107029123A KR101450640B1 (ko) 2008-06-27 2009-06-26 유저인터페이스생성장치

Country Status (4)

Country Link
US (1) US9081591B2 (ko)
JP (1) JP5431321B2 (ko)
KR (1) KR101450640B1 (ko)
WO (1) WO2009157560A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102713804A (zh) * 2010-02-19 2012-10-03 日本电气株式会社 移动终端及其控制方法
KR101047899B1 (ko) * 2011-02-18 2011-07-08 삼일데이타시스템 주식회사 휴대단말기의 사용자 인터페이스 자동 생성과 이를 이용한 설비 제어시스템
JP2012203653A (ja) * 2011-03-25 2012-10-22 Ntt Docomo Inc 情報端末、表示制御方法及び表示制御プログラム
WO2012153374A1 (ja) * 2011-05-06 2012-11-15 富士通株式会社 情報処理装置,表示装置,キーサイズ変更プログラム,及びキーサイズ変更方法
CH705457A1 (de) 2011-08-31 2013-03-15 Ferag Ag Generieren einer Benutzerschnittstelle auf einer Anzeige.
PL2776439T3 (pl) 2011-11-09 2018-12-31 Janssen Sciences Ireland Uc Pochodne puryny do leczenia zakażeń wirusowych
US20130290851A1 (en) * 2012-04-30 2013-10-31 Microsoft Corporation User interface web services
US8904313B2 (en) * 2012-05-24 2014-12-02 International Business Machines Corporation Gestural control for quantitative inputs
CN105377833B (zh) 2013-05-24 2018-11-06 爱尔兰詹森科学公司 用于治疗病毒感染和另外的疾病的吡啶酮衍生物
EA202090258A3 (ru) 2013-06-27 2020-07-31 Янссен Сайенсиз Айрлэнд Юси Производные пирроло[3,2-d]пиримидина для лечения вирусных инфекций и других заболеваний
US9189207B2 (en) * 2014-03-11 2015-11-17 Telefonaktiebolaget L M Ericsson (Publ) Methods and systems for dynamic runtime generation of customized applications
US9432734B2 (en) 2014-09-10 2016-08-30 Telefonaktiebolaget L M Ericsson (Publ) Multi-person and multi-device content personalization
US10963539B2 (en) 2014-09-10 2021-03-30 Mk Systems Usa Inc. Interactive web application editor
JP2017117239A (ja) * 2015-12-24 2017-06-29 ブラザー工業株式会社 プログラムおよび情報処理装置
US10417183B2 (en) * 2017-03-14 2019-09-17 Salesforce.Com, Inc. Database and file structure configurations for managing text strings to be provided by a graphical user interface
JP7110637B2 (ja) * 2018-03-19 2022-08-02 株式会社リコー 表示入力装置、画像形成装置、画面表示方法およびプログラム
JP7058558B2 (ja) * 2018-05-30 2022-04-22 三菱電機株式会社 監視画面作成装置および監視画面作成方法
KR20210056563A (ko) * 2019-11-11 2021-05-20 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
CN113467605B (zh) * 2020-03-31 2024-04-02 托比股份公司 用于对可视化数据进行预处理的方法、计算机程序产品和处理电路系统
KR20210156523A (ko) * 2020-06-18 2021-12-27 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 사용자 인터페이스 정의 파일을 이용한 사용자 인터페이스 표시
US11513655B2 (en) 2020-06-26 2022-11-29 Google Llc Simplified user interface generation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683537A (ja) * 1992-09-01 1994-03-25 Ricoh Co Ltd タッチパネル式情報処理装置
JPH09138731A (ja) * 1995-11-15 1997-05-27 Mitsubishi Electric Corp グラフィカルユーザインタフェース
JP2003271310A (ja) * 2002-03-13 2003-09-26 Canon Inc 情報入出力装置、その制御方法および該制御方法を実現するためのプログラム
KR20050091992A (ko) * 2003-01-30 2005-09-16 소니 가부시끼 가이샤 제어 장치 및 방법, 정보 처리 장치 및 방법, 기록 매체,그리고 프로그램

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001036652A (ja) 1999-07-23 2001-02-09 Nippon Conlux Co Ltd 携帯電話機およびこれを利用した機器遠隔制御方法
US6829615B2 (en) * 2000-02-25 2004-12-07 International Business Machines Corporation Object type relationship graphical user interface
JP4158105B2 (ja) * 2003-09-25 2008-10-01 ソニー株式会社 車載装置及び車載装置の制御方法
US8065629B1 (en) * 2004-06-22 2011-11-22 Apple Inc. Displaying icon layouts in different resolutions
US7266777B2 (en) * 2004-09-08 2007-09-04 Universal Electronics Inc. Configurable controlling device having an associated editing program
US7594171B2 (en) * 2004-10-01 2009-09-22 Adobe Systems Incorporated Rule-based text layout
US8001476B2 (en) * 2004-11-16 2011-08-16 Open Text Inc. Cellular user interface
JP2006350819A (ja) * 2005-06-17 2006-12-28 Toshiba Corp 家電機器制御システム
JP2007066099A (ja) * 2005-08-31 2007-03-15 Canon Inc Gui構成システム、gui構成方法及びプログラム
US9842097B2 (en) * 2007-01-30 2017-12-12 Oracle International Corporation Browser extension for web form fill
US8726190B2 (en) * 2007-09-28 2014-05-13 Adobe Systems Incorporated Automatically transformed graphical user interface

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683537A (ja) * 1992-09-01 1994-03-25 Ricoh Co Ltd タッチパネル式情報処理装置
JPH09138731A (ja) * 1995-11-15 1997-05-27 Mitsubishi Electric Corp グラフィカルユーザインタフェース
JP2003271310A (ja) * 2002-03-13 2003-09-26 Canon Inc 情報入出力装置、その制御方法および該制御方法を実現するためのプログラム
KR20050091992A (ko) * 2003-01-30 2005-09-16 소니 가부시끼 가이샤 제어 장치 및 방법, 정보 처리 장치 및 방법, 기록 매체,그리고 프로그램

Also Published As

Publication number Publication date
JPWO2009157560A1 (ja) 2011-12-15
WO2009157560A1 (ja) 2009-12-30
JP5431321B2 (ja) 2014-03-05
US20110107244A1 (en) 2011-05-05
KR20110014223A (ko) 2011-02-10
US9081591B2 (en) 2015-07-14

Similar Documents

Publication Publication Date Title
KR101450640B1 (ko) 유저인터페이스생성장치
JP5406176B2 (ja) ユーザインタフェース生成装置
JP5351165B2 (ja) ユーザインタフェース生成装置
KR101256016B1 (ko) 유저인터페이스 생성장치
KR101256014B1 (ko) 유저인터페이스 생성장치
US9497313B2 (en) User interface generation apparatus
JP5200095B2 (ja) ユーザインタフェース生成装置
KR100772231B1 (ko) 영상표시기기의 제어방법 및 그에 따른 영상표시기기
JP2007520000A (ja) オブジェクトの移動方向を表示するディスプレイ装置および方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
E90F Notification of reason for final refusal
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170920

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee