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

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

Info

Publication number
KR20100114945A
KR20100114945A KR20107022084A KR20107022084A KR20100114945A KR 20100114945 A KR20100114945 A KR 20100114945A KR 20107022084 A KR20107022084 A KR 20107022084A KR 20107022084 A KR20107022084 A KR 20107022084A KR 20100114945 A KR20100114945 A KR 20100114945A
Authority
KR
South Korea
Prior art keywords
user interface
unit
information
objects
size
Prior art date
Application number
KR20107022084A
Other languages
English (en)
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 KR20100114945A publication Critical patent/KR20100114945A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • 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
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Selective Calling Equipment (AREA)

Abstract

유저인터페이스생성장치(1)는 어플리케이션프로그램을 토대로 기능을 실현하기 위하여 실행유닛(11)에 지시하도록 유저인터페이스를 생성하기 위한 생성유닛(13), 및 표시유닛(24)의 표시 능력을 나타내는 정보 및 상기 유저인터페이스의 오브젝트를 정의하는 정보를 포함하는 정의파일을 저장하기 위한 메모리유닛(50)을 포함한다. 상기 생성유닛(13)은 오브젝트정의정보로부터 선택을 행하여 모든 오브젝트들이 표시될 수 있는 지의 여부를 판정한다. 모든 오브젝트들이 표시될 수 없다면, 상기 생성유닛(13)은 상기 표시유닛(24)의 정보를 토대로 상기 오브젝트의 크기에 관한 정보를 재기록하여, 모든 오브젝트들이 표시될 수 있도록 한 다음, 상기 정보를 토대로 합성유저인터페이스를 생성하도록 한다.

Description

유저인터페이스생성장치{USER INTERFACE GENERATION DEVICE}
본 출원은 2008년 4월 2일에 출원된 일본특허출원 제2008-96604호 및 2008년 5월 29일에 출원된 일본특허출원 제2008-141257호를 우선권 주장하며, 그 전문이 본 명세서에 인용참조된다.
본 발명은 유저인터페이스생성장치에 관한 것으로, 특히 휴대단말의 유저인터페이스를 생성하기 위한 유저인터페이스생성장치에 관한 것이다.
휴대전화로 대표되는 휴대단말의 유저인터페이스(이하, 임의로 축약해서 "UI"라고 함)는 사용자가 휴대단말을 조작할 때 조작성에 큰 영향을 준다. 이에 따라, 휴대단말의 UI는 휴대단말을 구입하고자 하는 사용자의 중요한 요소 중 하나가 된다.
최근 휴대단말의 현저한 다기능화로 인하여, 애니메이션 및 3D를 이용하는 픽처레스크(picturesque) UI를 구비한 다수의 휴대단말들이 있다. 또한, 사용자가 원하는 대로 주문제작가능한 UI를 구비한 휴대단말도 있다. 이러한 휴대단말은 사용자의 편의성을 극도로 향상시킨다.
종래의 휴대단말은 일반적으로 제조사와 모델 간에 UI 디자인과 조작방법이 상이하다. 즉, UI가 각 단말에 고유하고, 종래의 휴대단말 대부분은 모델에 매우 종속적인 UI를 가진다. 그러므로, 또다른 단말의 프로그램코드들이 단말 개발 시에 재사용되는 경우에는, 프로그램코드에 대한 UI 부분들의 많은 변경을 초래하게 된다. 이에 따라, 단말의 프로그램코드들을 또다른 단말에 이식하기가 곤란하게 된다.
이러한 문제점에 대처하기 위하여, XML(Extensible Markup Language)에 기초한 UI가 도입되었다. 그 기술방법이 표준화된 XML 파일을 이용하여 UI를 표현하는 것은 프로그램코드들의 재사용을 촉진시켜, UI를 또다른 모델에 이식가능하게 한다. 이에 따라, 각 단말로부터 독립적으로 UI 단독으로 대처가 가능하게 되므로, 상기 UI가 상이한 모델 및 상이한 제조사들의 단말들에 의해서도 사용될 수 있게 된다.
이러한 XML계 UI의 대표적인 것은 TAT사(https://www.tat.se)가 개발한 UI Foundation, Acrodea사(https://www.acrodea.co.jp/)가 개발한 VIVID UI, Qualcomm사(https://www.qualcomm.co.jp/)가 개발한 UI One 등이다.
또한, 최근에는 단말본체의 다기능화와 고성능화로 인하여, 동시에 복수의 태스크를 병행하여 실행하기 위한 멀티-태스크 처리를 행할 수 있는 OS(Operating System)를 탑재한 휴대단말이 증가하는 추세이다. 더욱이, 병렬로 그리고 동시에 처리되는 복수의 태스크 각각을 개별적인 표시 영역(윈도우)에 할당하여 표시하는 멀티플렉스 출력 스크린에 대한 멀티-윈도우 기능을 갖는 휴대단말이 폭넓게 사용되고 있다.
첨언하면, 일본특허공개 제2001-36652호는 적외선통신유닛을 구비한 휴대전화단말을 이용하는 적외선 통신에 의하여 복수의 외부 기기들의 원격 조종(제어)의 방식을 개시하고 있다. 일본특허공개 제2001-36652호에 기재된 휴대전화단말에는 외부 기기들과의 통신을 위한 외부제어유닛이 제공된다. 이러한 휴대전화단말은, 외부기기들로부터 수신되거나 전화선을 통해 취득한 외부기기들을 원격 제어하기 위한 외부기기제어정보를 저장하고, 상기 외부기기제어정보를 토대로 외부기기들을 원격 제어한다. 즉, 상기 단말에 포함된 어플리케이션프로그램(이하, 간단히 "어플리케이션"이라고 함)을 변경함으로써, 통상적으로 휴대전화로 사용되는 단말본체가 복수의 외부기기들을 원격 제어하기 위한 원격제어장치(이하, 간단히 "리모콘"이라고 함)로 사용될 수 있다.
일본특허공개 제2001-36652호에 기재된 휴대전화단말에 따르면, 단일 휴대전화단말이 외부기기들에 대응하는 각각의 외부기기제어정보를 토대로 복수의 외부기기들을 원격 제어할 수 있다. 그러므로, 사용자의 편의성을 향상시키는, 복수의 외부기기들에 대한 개별적인 리모콘 단말들을 별도로 사용하기 위해 사용자가 번거로운 조작을 행할 필요가 없게 된다.
원격으로 제어될 복수의 외부기기들간의 원격 절환을 위한 이러한 리모콘 기능들이 상술된 멀티-태스크 처리가 가능한 휴대단말에 구현된다면, 또다른 리모콘 어플리케이션을 개시하기 위하여 리모콘 어플리케이션을 반드시 종료시킬 필요가 없게 된다. 즉, 복수의 어플리케이션을 단일 단말 상에서 동시에 개시하고, 그들 가운데 시기적절하게 원하는 리모콘 어플리케이션을 사용할 수 있게 된다.
하지만, 복수의 어플리케이션을 빈번하게 절환하기 위한 조작들은 번거롭다.
상술된 멀티-윈도우 기능이 휴대단말에 내장된다면, 복수의 어플리케이션을 조작하기 위한 UI가 복수의 윈도우 상에 각각 표시될 수 있다. 이에 따라, 복수의 어플리케이션들간의 절환없이 단일 스크린 상에서 어플리케이션을 동시에 사용할 수 있게 된다.
도 25(A)에 도시된 바와 같이 TV 리모콘 단말 단독에 대해서는, 예컨대 도 25(B)에 도시된 바와 같이, TV 리모콘 단말의 조작성을 유지하면서도, 예컨대 TV 리모콘 어플리케이션의 UI가 휴대단말(100)의 터치패널(200) 상에 재생될 수도 있다. 도 25(A)에 도시된 리모콘 단말의 버튼 또는 숫자키와 같은 키들은 기계적인 키들이지만, 상기 숫자키 또는 버튼들은 오브젝트로서 재생되고, 도 25(B)에 도시된 휴대단말(100)의 터치패널(200) 상에 표시된다. 이하, UI를 구성하는 스폿들을 표시하는 정보 및 각종 키 또는 버튼들을 "UI 오브젝트"라고 한다. 이와 유사하게, 도 25(C)에 도시된 에어컨디셔너 리모콘 단말 단독에 대해서는, 예컨대 도 25(D)에 도시된 바와 같이, 에어컨디셔너 리모콘 단말의 조작성을 유지하면서도, 에어컨디셔너 리모콘 어플리케이션의 UI가 휴대단말(100)의 터치패널(200) 상에 재생될 수도 있다. 더욱이, 어플리케이션의 각각의 UI가 베이시스로서 XML로 기술된다면, 상기 어플리케이션이 상이한 제조사의 또다른 단말에 이식되더라도, 단지 UI를 기술하는 XML 파일을 처리하여 또다른 단말에서 거의 동일한 UI가 용이하게 재생될 수 있다.
하지만, 상기 예시에서 TV를 보면서 에어컨디셔너를 조작하기 위해서는, TV와 에어컨디셔너 양자 모두에 대한 번거로운 조작들이 필요할 수도 있다. 이러한 경우에, TV와 에어컨디셔너 양자 모두에 대한 어플리케이션들이 멀티-태스크 기능과 멀티-윈도우 기능을 이용하여 표시유닛의 표시 영역을 분할하여 동시에 표시될 수도 있다. 하지만, UI의 동시 표시는 도 26(A) 내지 도 26(D)에 도시된 표시들을 초래하는데, 각각의 어플리케이션이 단독으로 사용될 것으로 가정된 UI만을 구비하기 때문이다.
도 26(A) 내지 도 26(D)는 두 어플리케이션의 UI가 멀티-태스크 기능과 멀티-윈도우 기능을 갖는 휴대단말(100) 상에 동시에 표시될 때의 상태들을 예시한 도면들이다. 도면들에 도시된 예시에서는, 각 UI의 일부분만이 표시되는데, 그 이유는 상기 터치패널(200)의 표시유닛을 상하로 분리시키는 각각의 윈도우에 현재 상태 그대로 각각의 UI가 재생되기 때문이다. 스크린 너머로 부분 조작을 가능하게 하기 위하여 각각의 윈도우에서 우측에 스크롤바가 제공된다.
예컨대, 도 26(A)에 도시된 상태에서 TV의 볼륨을 조정하기 위해서는, 사용자가 도 26(B)에 도시된 바와 같이, TV 리모콘 UI의 표시된 영역을 이동시키기 위하여 TV 리모콘 UI의 윈도우에 스크롤바를 이동시킬 필요가 있다. 이와 유사하게, 도 26(C)에 도시된 상태에서 에어컨디셔너의 온도를 조정하기 위해서는, 사용자가 도 26(D)에 도시된 바와 같이, 에어컨디셔너 리모콘 UI의 표시된 영역을 이동시키기 위하여 에어컨디셔너 리모콘 UI의 윈도우에 스크롤바를 이동시킬 필요가 있다. 더욱이, 복수의 어플리케이션이 멀티-윈도우 기능에 의해 활성화되고, 상기 UI들이 서로 중첩되어 표시되는 경우에는, 입력 조작을 개시하기 전에 그것을 활성화하기 위하여 윈도우를 선택하여야 한다.
단독 사용이 가정되어 전체 화면을 점유하도록 설계된 UI가 멀티-윈도우에 표시된다면, 모든 UI 오브젝트들이 화면에 맞게 될 수 없는데, 이는 조작성의 악화를 초래하게 된다.
그러므로, 이러한 상황들을 고려하여 본 발명의 목적은, 복수의 유저인터페이스오브젝트들로 이루어진 유저인터페이스를 생성하는 경우, 소정의 유저인터페이스오브젝트표시영역에 필요한 유저인터페이스오브젝트들을 핏팅할 수 있는 유저인터페이스생성장치를 제공하는 것이다.
상기 목적을 달성하기 위하여, 제1형태에 따른 유저인터페이스생성장치는,
어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛; 및
상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛을 포함하여 이루어지고,
상기 유저인터페이스생성유닛은,
상기 메모리유닛에 저장된 유저인터페이스오브젝트정의정보의 선택을 행하는 단계; 선택된 유저인터페이스오브젝트들 모두가 상기 표시유닛의 소정의 표시 영역에 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 선택된 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 것을 특징으로 한다.
본 발명의 제2형태는 상기 제1형태에 따른 유저인터페이스생성장치로서,
상기 유저인터페이스오브젝트의 타입, 상기 유저인터페이스오브젝트정의정보 및 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트의 표시 크기의 최소값을 설정하기 위한 최소크기설정유닛을 더 포함하여 이루어지고,
상기 유저인터페이스생성유닛은, 상기 최소크기설정유닛에 의해 설정된 상기 최소값을 하한값으로서, 상기 크기 정보를 재기록하는 것을 특징으로 한다.
본 발명의 제3형태는 상기 제2형태에 따른 유저인터페이스생성장치에 있어서,
상기 최소크기설정유닛은, 상기 장치의존정보에 포함되는 최소폰트크기, 최소라인간격 및 입력장치정보 중 하나 이상을 토대로 상기 유저인터페이스오브젝트의 표시 크기의 최소값을 설정하는 것을 특징으로 한다.
본 발명의 제4형태는 상기 제1형태 내지 제3형태 중 어느 한 형태에 따른 유저인터페이스생성장치로서,
상기 유저인터페이스오브젝트정의정보를 토대로 상기 유저인터페이스오브젝트의 선택을 수신하기 위하여 선택화면을 생성하기 위한 선택화면생성유닛을 더 포함하여 이루어지고,
상기 유저인터페이스생성유닛은, 상기 선택화면 상에서 선택된 유저인터페이스오브젝트의 선택 순서를 토대로 상기 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하여, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 것을 특징으로 한다.
본 발명의 제5형태는 상기 제1형태 내지 제3형태 중 어느 한 형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스로 이루어지는 유저인터페이스오브젝트들 간의 우선순위를 나타내는 우선순위정보를 포함하고,
상기 유저인터페이스생성유닛은, 상기 우선순위정보를 토대로 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하여, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 것을 특징으로 한다.
본 발명의 제6형태는 상기 제2형태 또는 제3형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스생성유닛은, 상기 최소크기설정유닛에 의해 설정된 최소값과 크기 정보 간의 비율을 토대로 상기 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 것을 특징으로 한다.
제7형태에 따른 유저인터페이스생성장치는,
어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛;
상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛; 및
상기 유저인터페이스오브젝트정의정보를 토대로 상기 유저인터페이스오브젝트의 선택을 수신하기 위하여 선택화면을 생성하기 위한 선택화면생성유닛을 포함하여 이루어지고,
상기 선택화면생성유닛은, 복수의 유저인터페이스를 합성하도록 지시를 받는 경우, 상기 지시된 복수의 유저인터페이스 각각에 대응하여 상기 메모리유닛에 저장되는 유저인터페이스정의파일에 포함된 유저인터페이스오브젝트정의정보를 토대로 상기 선택화면을 생성하며,
상기 유저인터페이스생성유닛은,
상기 선택화면 상에서 선택된 유저인터페이스오브젝트들 모두가 상기 유저인터페이스오브젝트정의정보 및 상기 유저인터페이스를 표시할 수 있는 상기 표시유닛의 유저인터페이스표시영역을 토대로 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 선택된 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 것을 특징으로 한다.
제8형태에 따른 유저인터페이스생성장치는,
어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛; 및
상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛을 포함하여 이루어지고,
상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스를 구성하는 유저인터페이스오브젝트들 가운데 필수적인 유저인터페이스오브젝트에 대하여, 상기 유저인터페이스오브젝트가 필수적이라는 것을 나타내는 필수 정보를 포함하며,
상기 유저인터페이스생성유닛은, 상기 필수적인 유저인터페이스오브젝트들 모두가 상기 필수 정보 및 상기 유저인터페이스를 표시할 수 있는 상기 표시유닛의 유저인터페이스표시영역을 토대로 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 필수적인 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 필수적인 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 것을 특징으로 한다.
본 발명의 제9형태는 상기 제1형태, 제7형태 및 제8형태 중 어느 한 형태에 따른 유저인터페이스생성장치로서,
상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하기 위하여, 상기 유저인터페이스를 통해, 상기 어플리케이션프로그램실행유닛에 지시하도록 입력을 수신하기 위한 조작입력수신유닛; 및
상기 조작입력수신유닛에 대한 조작입력장치를 판정하기 위한 조작입력장치판정유닛을 더 포함하여 이루어지고,
상기 유저인터페이스생성유닛은, 상기 조작입력장치판정유닛에 의해 판정된 상기 조작입력장치에 따라 상기 장치의존정보를 재기록하는 것을 특징으로 한다.
본 발명의 제10형태는 상기 제9형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스생성유닛은, 상기 합성유저인터페이스가 상기 표시유닛 상에 표시 중에 상기 조작입력장치판정유닛에 의해 상기 조작입력장치의 변경이 검출되는 경우, 상기 변경된 조작입력장치에 따라 장치의존정보를 재기록하고, 상기 재기록된 장치의존정보를 토대로 신규합성유저인터페이스를 생성하는 것을 특징으로 한다.
본 발명에 따르면, 복수의 유저인터페이스오브젝트들로 이루어진 유저인터페이스를 생성하는 경우에, 소정의 유저인터페이스오브젝트표시영역에 필요한 유저인터페이스오브젝트들을 핏팅할 수 있는 유저인터페이스생성장치를 제공할 수 있다.
도 1은 본 발명에 따른 유저인터페이스생성장치의 개략적인 구성을 예시한 블럭도;
도 2는 본 발명에 따른 유저인터페이스정의파일의 구성을 예시한 개념도;
도 3은 본 발명에 따른 합성유저인터페이스정의파일의 구성을 예시한 개념도;
도 4는 각각의 유저인터페이스정의파일을 토대로 생성된, 각종 리모콘어플리케이션의 예시적인 유저인터페이스를 예시한 도면;
도 5는 제1실시예에 따른 예시적인 유저인터페이스오브젝트선택화면 및 프리뷰 화면을 예시한 도면;
도 6은 제1실시예에 따른 예시적인 유저인터페이스오브젝트선택화면 및 프리뷰 화면을 예시한 도면;
도 7은 제1실시예에 따른 예시적인 유저인터페이스오브젝트선택화면 및 프리뷰 화면을 예시한 도면;
도 8은 제1실시예에 따른 예시적인 유저인터페이스오브젝트선택화면 및 프리뷰 화면을 예시한 도면;
도 9는 제1실시예에 따른 유저인터페이스오브젝트의 최소표시크기의 설정 처리를 예시한 흐름도;
도 10은 제1실시예에 따라, 조작입력이 손가락으로 행해질 때 유저인터페이스오브젝트들의 타입에 의한 최소표시크기들을 예시한 도면;
도 11은 제1실시예에 따라, 조작입력이 스타일러스로 행해질 때 유저인터페이스오브젝트들의 타입에 의한 최소표시크기들을 예시한 도면;
도 12는 합성유저인터페이스가 표시될 때 배치될 수 있는 유저인터페이스오브젝트들이 조작장치에 따라 변경되는 것을 예시한 도면;
도 13은 제1실시예에 따른 조작장치의 변경에 수반되는 UI 재합성 처리를 예시한 흐름도;
도 14는 제2실시예에 따른 유저인터페이스의 자동 합성에 사용되는 고우선순위 유저인터페이스오브젝트들로 이루어진 유저인터페이스들을 예시한 도면;
도 15는 제2실시예에 따른 유저인터페이스의 자동 합성에서 현재 상태 그대로 각각의 유저인터페이스가 합성될 수 없다는 것을 예시한 도면;
도 16은 제2실시예에 따른 자동 레이아웃 처리를 예시한 흐름도;
도 17은 제2실시예에 따른 설정을 토대로 분류된 유저인터페이스오브젝트들의 축소 처리를 예시한 도면;
도 18은 제2실시예에 따른 축소 처리에 의해 유저인터페이스들이 합성될 때의 일례를 예시한 도면;
도 19는 제3실시예에 따른 설정을 토대로 분류된 유저인터페이스오브젝트들의 축소 처리를 예시한 도면;
도 20은 제3실시예에 따른 축소 처리에 의해 유저인터페이스들이 합성될 때의 일례를 예시한 도면;
도 21은 제4실시예에 따른 설정을 토대로 분류된 유저인터페이스오브젝트들의 축소 처리를 예시한 도면;
도 22는 제4실시예에 따른 축소 처리에 의해 유저인터페이스들이 합성될 때의 일례를 예시한 도면;
도 23은 제5실시예에 따른 설정을 토대로 분류된 유저인터페이스오브젝트들의 축소 처리를 예시한 도면;
도 24는 제5실시예에 따른 축소 처리에 의해 유저인터페이스들이 합성될 때의 일례를 예시한 도면;
도 25는 종래의 휴대단말의 유저인터페이스들로 재현되는 리모콘 단말들의 상태를 예시한 도면; 및
도 26은 종래의 휴대단말에 의한 두 유저인터페이스의 합성을 예시한 도면이다.
이하, 본 발명의 실시예들을 첨부 도면들을 참조하여 설명하기로 한다. 후술하는 각각의 실시예에서는, 각종 외부장치들을 원격 제어하기 위한 리모콘 제어기능들을 갖는 휴대전화가 본 발명에 따른 유저인터페이스(이하, "UI"라고 함)생성장치의 일례로 사용된다. 하지만, 본 발명에 따른 UI생성장치가 상기 휴대전화로 제한되는 것은 아니며, 예컨대 랩탑 컴퓨터, PDA 등과 같은 여하한의 휴대단말에도 적용가능하다. 또한, 상기 UI생성장치는 그것이 휴대단말이 아니더라도, 그것을 탑재할 필요가 있는 장치에도 적용가능하다. 본 발명은 주로 동시에 사용될 복수의 UI를 합성하고자 한다는 점에 유의한다. 그러므로, 각각의 UI에 의해 지시되는 어플리케이션이 리모콘 기능으로 제한되는 것은 아니며, 본 발명은 여러 타입의 어플리케이션에도 적용가능하다.
(제1실시예)
도 1은 본 발명의 제1실시예에 따른 UI생성장치의 개략적인 구성을 예시한 블럭도이다.
휴대전화(1)는 전반적인 조작을 제어하기 위한 제어유닛(10) 및 사용자에 의한 입력을 수신하고 각각의 어플리케이션에 따라 입력 등의 결과를 표시하기 위한 터치패널(20)을 포함한다. 상기 터치패널(20)은 사용자에 의한 입력을 받기 위해 매트릭스 스위치 등으로 구성되고, 액정디스플레이 등으로 구성된 표시유닛(24)의 최상부에 배치된 입력유닛(22)을 구비한다. 상기 터치패널(20)의 입력유닛(22)은 사용자의 손가락이나 스타일러스(stylus)와 같은 펜형상의 입력장치의 접촉을 검출한 때, 이러한 접촉에 의한 입력에 대응하는 신호를 출력한다. 상기 표시유닛(24)은 어플리케이션프로그램과 관련되어 화면을 표시할 뿐만 아니라, 사용자에 의한 입력을 수신하기 위한 각종 키 또는 버튼과 같은 UI 오브젝트들로 이루어지는 UI의 이미지를 소정의 UI표시영역에 표시하기도 한다.
또한, 휴대전화(1)는 기지국(도시되지 않음)과 음성통화, 이메일 데이터 등과 같은 각종 정보를 송수신하기 위한 무선통신유닛(30) 및 적외선을 이용하여 각종 외부기기(도시되지 않음)들과 통신하기 위한 적외선통신유닛(40)을 더 포함한다. 상기 휴대전화(1)는 무선 등에 의하여 인터넷을 통한 무선통신유닛(30)을 이용하여 외부기기와 각종 데이터를 송수신한다.
상기 휴대전화(1)는 또한 조작키유닛(80)과 스타일러스저장유닛(90)을 더 포함한다. 상기 조작키유닛(80)은 상기 표시유닛(24) 상에 표시되는 포인터를 이동시키기 위한 방향지시장치 또는 방향지시키 혹은 휴대전화(1)의 본체 상에 배치된 기계적인 스위치들로 구성되는 복수의 키를 포함한다. 상기 조작키유닛(80)은 사용자에 의한 입력에 응답하여 제어유닛(10)으로 대응하는 신호를 송신한다. 상기 조작키유닛(80)을 구성하는 각종 키들의 용도와 기능들은 사용될 어플리케이션에 따라 정의된다. 이에 따라, 본 실시예에서는, 조작입력수신유닛이 터치패널(20)의 입력유닛(22) 및 조작키유닛(80)을 포함하여 구성된다.
상기 스타일러스저장유닛(90)은 스타일러스, 즉 상기 터치패널(20)의 입력유닛(22)으로의 입력을 위한 펜형상의 입력장치를 저장한다. 상기 스타일러스저장유닛(90)에 스타일러스를 저장함으로써, 휴대전화(1)의 본체에 스타일러스를 저장할 수 있게 된다. 상기 스타일러스저장유닛(90)은 스타일러스의 부착과 분리를 검출하기 위한 스위치(도시되지 않음)를 구비한다. 즉, 상기 스위치는 상기 스타일러스저장유닛(90)에 스타일러스를 저장하기 위한 조작 및 상기 스타일러스저장유닛(90) 밖으로 스타일러스를 취하기 위한 조작에 응답하여 턴 온/오프된다. 이에 따라, 상기 제어유닛(10)은, 상기 스타일러스저장유닛(90)으로부터의 신호에 의하여, 스타일러스가 스타일러스저장유닛(90)에 저장되는지의 여부를, 즉 스타일러스가 상기 휴대전화(1)의 본체에 저장되는지의 여부를 판정할 수 있다.
나아가, 상기 휴대전화(1)는 입력 정보 및 각종 어플리케이션을 저장하기 위한 그리고 워크메모리로서의 기능도 하기 위한 메모리유닛(50)을 포함한다. 상기 메모리유닛(50)은 어플리케이션메모리영역(51), UI정의파일메모리영역(52), 개별UI리소스메모리영역(53), 공통UI리소스메모리영역(54), 관련어플리케이션정보메모리영역(55), 합성UI정의파일메모리영역(56), 및 단말의존정보메모리영역(57)을 포함한다.
상기 제어유닛(10)은 어플리케이션실행유닛(11), UI취득유닛(12), UI생성유닛(13), 및 조작장치검출유닛(14)을 포함한다.
상기 제어유닛(10)의 어플리케이션실행유닛(11)은, 상기 메모리유닛(50)의 어플리케이션메모리영역(51)에 저장된 각종 어플리케이션을 판독 및 실행할 뿐 아니라 이러한 실행을 제어한다. 또한, 상기 어플리케이션실행유닛(11)은, 상기 어플리케이션메모리영역(51)으로부터 판독하여 실행 중인 어플리케이션에 대응하는 UI로의 입력을 토대로, 상기 입력에 대응하는 어플리케이션의 기능들을 실행한다.
상기 UI취득유닛(12)은 무선통신유닛(30)을 통해 단말 외부로부터 UI정의파일(XML 파일 등) 및 리소스(이미지 데이터 등)를 취득한다. 상기 UI생성유닛(13)은 UI정의파일에 대한 파싱(parsing) 처리 및 DOM(Document Object Model) 처리를 행하고, 실제로 사용될 UI를 생성한다. 상기 UI생성유닛(13)은, XML 엔진을 이용하여 XML 형태로 기술된 UI의 정보를 번역하고, 상기 UI정의파일을 토대로 생성된 UI를 상기 터치패널(20)의 표시유닛(24) 상에 표시한다.
상기 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 오브젝트를 선택하기 위한 입력을 수신하기 위하여 선택 화면을 생성하기 위한 처리 및 제어를 수행한다. 이하, 사용자에 의한 선택 입력을 수신하기 위하여 상기 표시유닛(24) 상에 UI 오브젝트에 관한 정보를 표시하는 화면을 "UI오브젝트선택화면" 또는 간단히 "선택 화면"이라고 한다. 이에 따라, 상기 UI오브젝트선택처리유닛(62)이 본 실시예에서는, 선택화면생성유닛을 구성하게 된다. 더욱이, 상기 UI오브젝트선택처리유닛(62)은, 복수의 UI를 합성하도록 지시받는 경우, 복수의 특정된 UI정의파일들을 토대로 UI를 합성한다.
상기 UI오브젝트선택처리유닛(62)은 UI오브젝트선택화면 상에서, 선택된 UI 오브젝트들의 점유율을 적산하기 위한 점유율적산유닛(도시되지 않음)을 포함한다. 상기 점유율적산유닛은, 각각의 UI 오브젝트의 UI오브젝트정의정보에 포함된 UI오브젝트속성정보 및 단말의존정보메모리영역(57)에 저장된 단말의존정보(장치의존정보)를 토대로 UI 오브젝트들의 점유율을 적산한다.
상기 합성UI정의파일생성유닛(63)은 합성UI정의파일로서, 상기 UI합성처리유닛(60)에 의해 합성된 UI를 생성 및 출력한다.
상기 UI리소스성형유닛(64)은, 각각의 UI 오브젝트의 표시 크기를 토대로, 선택된 UI 오브젝트의 프리뷰 처리 및 UI를 합성하는데 사용되는 리소스의 데이터를 늘리거나 줄이기 위한 처리를 수행한다. 이 경우, 상기 UI리소스성형유닛(64)은, 상기 개별UI리소스메모리영역(53) 또는 공통UI리소스메모리영역(54)에 저장된 리소스의 데이터를 판독 및 사용한다.
상기 자동레이아웃처리유닛(70)은 UI를 합성할 때 레이아웃에 관련된 제어 및 처리를 행한다. 그러므로, 상기 자동레이아웃처리유닛(70)이 배치설정유닛(71), 배치가부판정유닛(72), 축소오브젝트선택유닛(73) 및 최소크기설정유닛(74)을 포함한다.
상기 배치설정유닛(71)은 소정의 프로시저에 따라 UI 오브젝트들을 배치한다. 상기 배치설정유닛(71)은 마진설정유닛(도시되지 않음)을 포함한다. 상기 마진설정유닛은, UI 오브젝트가 배치될 때 적절한 공간(마진)을 설정하여, 상기 UI 오브젝트가 UI표시영역의 에지 또는 또다른 오브젝트에 너무 근접하지 않도록 한다. 상기 배치가부판정유닛(72)은 상기 배치설정유닛(71)에 의해 배치되는 UI 오브젝트들이 소정의 UI표시영역에 배치될 수 있는지의 여부를 판정한다. 만일 배치가부판정유닛(72)이 소정의 UI표시영역에 UI 오브젝트가 배치될 수 없는 것으로 판정한다면, 상기 축소오브젝트선택유닛(73)은 소정의 프로시저에 따라, 축소될 UI 오브젝트를 선택한다. 상기 최소크기설정유닛(74)은 단말의존정보 또는 UI오브젝트정의정보에 따라 각각의 UI 오브젝트에 대한 축소의 하한을 설정한다.
상기 조작장치검출유닛(14)은 사용자가 입력 조작을 수행하는 장치를 검출한다. 예를 들어, 터치패널(20)의 입력유닛(22)으로부터의 입력 신호가 있는 경우, 상기 조작장치검출유닛(14)은 사용자가 터치패널을 이용하여 입력한 것으로 판정한다. 한편, 상기 조작키유닛(80)으로부터의 입력 신호가 있는 경우에는, 상기 조작장치검출유닛(14)이 사용자가 조작키를 이용하여 입력한 것으로 판정한다.
상기 터치패널(20)의 입력유닛(22)으로부터의 입력이 검출되고, 상기 입력이 검출되는 입력유닛(22) 상의 영역이 소정의 영역보다 큰 경우, 상기 조작장치검출유닛(14)은 사용자가 그/그녀의 손가락을 이용하여 입력한 것으로 판정한다. 한편, 입력이 검출되는 영역이 소정의 영역보다 작으면서 매우 작은 경우, 상기 조작장치검출유닛(14)은 스타일러스와 같은 포인트형 입력장치를 이용하여 사용자가 입력한 것으로 판정한다. 또한, 상기 스타일러스저장유닛(90) 밖으로 스타일러스가 취해진 것으로 검출된다면, 상기 조작장치검출유닛(14)은 그 이후 스타일러스에 의해 입력이 수행될 것으로 판정한다. 더욱이, 상기 스타일러스저장유닛(90)에 스타일러스가 저장된 것으로 검출되면, 상기 조작장치검출유닛(14)은 그 이후 스타일러스없이 입력이 수행될 것으로 판정한다. 즉, 이 경우에는, 상기 조작장치검출유닛(14)은 상기 조작키유닛(80) 또는 손가락으로 표시유닛(20)에 대한 입력을 기대하게 된다.
나아가, 입력스폿을 선택하기 위한 포인터가 소정의 조작에 따라 표시유닛(24) 상에 표시되는 경우에는, 상기 조작장치검출유닛(14)이 포인터를 이동하기 위하여 조작키유닛(80)의 방향표시장치 또는 방향표시키로부터의 입력을 기대한다.
상기 메모리유닛(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의 어플리케이션의 동작 및 명세(specification)를 정의하는 UI정의파일을 저장한다. 동일한 UI가 상이한 어플리케이션에 의해 사용될 수도 있지만, 여기서는 설명의 편의상 각각의 어플리케이션에 의해 사용되는 UI가 서로 상이하다고 가정하고, 각 어플리케이션에 대응하는 UI정의파일이 저장된다고 가정한다.
예를 들어, TV 리모콘 UI정의파일은, 휴대전화(1)를 이용하여, 외부기기인 TV 세트(도시되지 않음)를 원격 제어하기 위한 TV 리모콘 어플리케이션에 대응하여, 상기 UI정의파일메모리영역(52)에 저장된다. 이와 유사하게, 에어컨디셔너 리모콘 UI정의파일은, 휴대전화(1)를 이용하여, 또다른 외부기기인 에어컨디셔너(도시되지 않음)를 원격 제어하기 위한 에어컨디셔너리모콘어플리케이션에 대응하여, 상기 UI정의파일메모리영역(52)에 저장된다.
본 실시예에서는, XML 언어에 기초한 UIML(User Interface Markup Language) 형태가 UI정의파일을 기술하기 위한 언어의 일례로 사용된다. UI를 활성화하여 사용하기 위하여, 상기 UI생성유닛(13)은 UIML 형태로 기술된 정의에 따라 휴대전화(1)의 터치패널(20)의 표시유닛(24) 상에 UI를 표시하고, 상기 어플리케이션실행유닛(11)은 사용자에 의해 입력유닛(22)으로의 입력에 응답하여 처리를 실행한다.
도 2는 UI정의파일의 구성을 예시한 개념도이다. 도 2에 도시된 바와 같이, 상기 휴대전화(1)의 상기 메모리유닛(50)의 UI정의파일메모리영역(52)은 전체 UI를 생성하기 위한 일련의 생성 규칙들을 정의하는 UI정의파일을 저장한다. 도 2에서는 6개의 UI정의파일 (1) 내지 (6)이 저장되어 있지만, 상기 UI정의파일메모리영역(52)은 사용될 UI에 따라 여하한의 개수의 UI정의파일을 저장할 수도 있다.
또한, 도 2에 도시된 바와 같이, 각각의 UI정의파일은 복수의 UI오브젝트정의정보를 포함한다. 도 2에서는 상기 UI정의파일(2)은 6개의 UI오브젝트정의정보를 포함하지만, 상기 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)의 일부분으로의 입력이 있는 경우) 어플리케이션에 대한 동작을 특정하는 정보;
(6) UI 오브젝트를 유효화 또는 무효화하는 정보: UI 오브젝트를 UI 표시영역에 표시하는지의 여부 또는 UI 오브젝트를 활성화하는지의 여부를 특정하는 정보;
(7) UI 오브젝트의 우선순위정보: 복수의 UI가 UI 오브젝트와 또다른 UI 오브젝트 간의 관계를 토대로 합성될 때, 상기 오브젝트의 우선순위를 나타내는 정보; 및
(8) 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정의파일을 생성할 때, 상기 UI합성처리유닛(60)은 필요에 따라, 합성 UI로서 단일 합성UI정의파일로 집합되기 전에, 상기 UI오브젝트정의정보를 처리할 수도 있다.
예를 들어, 도 4는 도 2 및 도 3에 도시된 유저인터페이스정의파일을 토대로 생성된, 각종 리모콘 어플리케이션의 예시적인 UI를 예시한 도면이다. UI정의파일이 XML을 토대로 UIML의 파일 포맷으로 기술되고, UI가 이러한 UIML 파일을 해석하여 생성되는 경우, 단 하나의 화면을 위한 UI가 생성되어 상기 표시유닛(24)의 소정의 UI표시영역에 핏팅되게 된다. 각각의 UI의 UI정의파일에 있어서, 각각의 UI를 구성하는 UI 오브젝트들의 각종 속성들은 UI오브젝트정의정보에 의해 정의된다.
이러한 UI는 개별적인 사용의 가정 하에 구성될 수도 있다(즉, 합성 UI로 사용될 것으로 가정되지 않음). 하지만, 이 경우에는, UI합성처리유닛(60)이 상기 처리를 수행하여 합성 UI를 생성하게 된다면, 사용자가 임의로 선택한 복수의 UI 오브젝트를 채택하는 단 하나의 합성 UI를 구성하기 위한 합성UI정의파일을 생성할 수 있게 된다.
다음으로, 제1실시예에 따른 휴대전화(1)에 의한 UI오브젝트축소처리가 기술된다. 본 실시예에 따르면, 사용자가 복수의 UI로부터 원하는 UI오브젝트를 선택하여 합성 UI를 생성할 때, 표시유닛(24)상의 소정의 UI표시영역에 핏팅될 수 없을 때 UI오브젝트축소처리가 수행된다.
그러므로, 상기 UI오브젝트선택처리유닛(62)은 우선 도 5(A)에 도시된 바와 같이 UI오브젝트정의정보를 토대로 사용자에 의해 UI 오브젝트들을 선택하기 위한 입력을 수신하기 위한 UI오브젝트선택화면을 생성하고, 상기 화면을 상기 표시유닛(24) 상에 표시한다. 도 5(A)에 도시된 일례에서는, 원하는 UI 오브젝트들이 에어컨디셔너 리모콘 UI, TV 리모콘 UI 및 조명 리모콘 UI로부터 선택될 수 있다. 도 5(A)에서, 빗금친 체크박스는 그 UI 오브젝트가 선택된 것을 나타낸다. UI 오브젝트들이 터치패널(20) 상의(입력유닛(22)에서) 체크박스를 터치하는 사용자의 입력 등에 의해 선택되는 경우, 점유율적산유닛(도시되지 않음)은 소정의 UI표시영역에서 상기 선택된 UI 오브젝트들의 점유율을 적산한다. 도 5(A)에 도시된 예시에서는, 일부 UI 오브젝트들이 사용자에 의해 복수의 UI로부터 선택되고, 상기 표시유닛(24)의 하부측에 있는 바차트(bar chart)는 이러한 UI 오브젝트들의 적산된 점유율이 85%인 것을 나타낸다.
복수의 UI 오브젝트가 이러한 방식으로 선택되는 경우, 상기 자동레이아웃처리유닛(70)의 배치설정유닛(71)은 소정의 조건에 따라 UI 오브젝트들을 가상적으로 배치한다. 사용자가 UI 오브젝트들의 배치를 시각적으로 체크하고자 한다면, 사용자는 도 5(A)에서 표시유닛(24)의 저부우측코너에 도시된 소프트키 "프리뷰"로 입력하여, 상기 UI오브젝트선택처리유닛(62)이 도 5(B)에 도시된 바와 같이 상기 입력에 응답하여 상기 표시유닛(24) 상에 프리뷰 화면을 표시하게 된다. 상기 UI표시영역의 우하부측에는, 더 많은 UI 오브젝트들이 부가될 수 있는 점유율 15%의 빈 공간이 있다는 것이 도시되어 있다.
여기서는, 도 5(C)에 도시된 바와 같이, 상기 UI표시영역의 우하부측에 있는 15%의 빈 공간에 조명 리모콘 UI의 전원 버튼(전원 UI 오브젝트)을 추가하기 위한 입력이 있는 것으로 가정된다. 전원 버튼의 UI 오브젝트의 조작성은 전원 UI 오브젝트가 다른 UI 오브젝트 또는 UI표시영역의 에지에 너무 가까이 위치하는 경우에 악화되므로, 입력을 실제로 수신하기 위한 전원 UI 오브젝트의 스폿 주위에 (점선으로 도시된 바와 같이) 적절한 공간(마진)이 설정된다. 이 경우, 도면에 도시된 바와 같이, 전원 UI 오브젝트의 폭은 UI표시영역에 핏팅될 수 없으므로, 상기 UI 오브젝트가 현재 상태 그대로 배치될 수 없게 된다. 그러므로, 본 실시예에 따르면, 상기 배치설정유닛(71)이 UI 오브젝트를 배치하고자 시도할 때, 상기 배치가부판정유닛(72)이 UI 오브젝트가 배치될 수 없는 것으로 판정하는 경우에는, 예컨대 도 5(D)에 도시된 바와 같이 경고 메시지가 표시유닛(24) 상에 표시되고, 상기 UI오브젝트축소처리가 본 실시예에 따라 수행된다.
즉, 상기 UI오브젝트선택처리유닛(62)에 의해 생성되는 UI오브젝트선택화면에 대하여 UI 오브젝트를 선택하기 위한 입력이 있는 경우, 상기 선택처리유닛(71)이 UI 오브젝트를 가상적으로 배치한다. 이 때, 상기 배치가부판정유닛(72)은, 상기 단말의존정보메모리영역(57)에 저장된 단말의존정보 및 상기 UI 오브젝트의 UI오브젝트정의정보를 토대로, 배치 시 UI 오브젝트가 소정의 UI표시영역에 핏팅될 수 있는지의 여부를 판정한다. 본 실시예에 따르면, 상기 단말의존정보는 상기 단말의 UI를 표시하기 위한 상기 표시유닛(24)의 표시 기능과 관련된다. 예를 들어, 상기 단말의존정보는 표시유닛(24)에 표시될 UI표시영역의 크기(넓이), 화면 해상도, 최소표시가능폰트크기, 표시되는 문자들의 최소라인간격 등을 포함한다. 상기 단말의존정보는 또한 입력장치에 관한 정보(입력장치가 스타일러스인지 손가락인지의 여부)도 포함한다.
UI 오브젝트가 상기 배치가부판정유닛(72)에 의한 판정 결과로 배치될 수 있다면, 상기 자동레이아웃처리유닛(70)은 상기 UI를 채택하도록 결정하고, 상기 합성UI정의파일에 상기 UI 오브젝트의 UI오브젝트정의정보를 포함한다. 하지만, UI 오브젝트가 배치될 수 없는 것으로 판정된다면, 상기 축소오브젝트선택유닛(73)은 상기 UI오브젝트축소처리의 대상으로서, 상기 UI 오브젝트, 즉 최종 선택된 UI 오브젝트를 선택한다.
다음으로, 상기 UI합성처리유닛(60)은 대상으로 선택된 UI 오브젝트에 대한 축소 처리를 행한다. 상기 UI오브젝트축소처리에서는, 상기 최소크기설정유닛(74)에 의해 설정된 UI 오브젝트의 최소표시크기가, 너무 많은 축소로 인한 조작성의 악화를 방지하기 위하여 하한값으로 사용된다. 이하, 상기 최소크기설정유닛(74)에 의한 UI 오브젝트의 최소표시크기(하한값)의 설정 처리를 설명하기로 한다. 하한값으로서 상기 최소크기설정유닛(74)에 의해 설정된 최소값으로 축소되는 경우, 추가될 UI 오브젝트(이 경우에는, 전원 UI 오브젝트)가 소정의 UI 표시영역에 핏팅될 수 있는 것으로 판정된다면, 상기 자동레이아웃처리유닛(70)은 상기 UI 오브젝트의 UI오브젝트정의정보에 포함된 크기 정보를 재기록한 다음, 상기 합성UI정의파일에 UI오브젝트정의정보를 포함한다.
예를 들어, 도 5(D)에 도시된 바와 같이 추가될 조명 리모콘 UI의 전원 UI 오브젝트를 축소하도록 경고 메시지를 표시한 후, 상기 조명 리모콘 UI의 전원 UI 오브젝트의 점유율은 도 6(A)에 도시된 선택화면에 도시된 바와 같이 10%에서 7%로 축소된다. 이에 따라, 프리뷰 화면이 도 6(B)에 도시된 바와 같이, 조명 리모콘 UI의 전원 UI 오브젝트가 축소에 의해 UI표시영역에 핏팅될 수 있는 것으로 도시된다.
또한, 도 6(C)에서 선택화면 상에 조명 리모콘 UI의 UI 오브젝트 "미니어처벌브(Miniature Bulb)"를 추가로 부가하고자 원한다면, 그 원래 크기(점유율 10%)의 상기 UI 오브젝트가 상기 UI표시영역(잔여 점유율 8%)에 핏팅될 수 없다. 하지만, UI 오브젝트 "Miniature Bulb"의 점유율이 상술된 것과 동일한 방식으로 10%에서 8%로 축소된다면, 상기 UI 오브젝트 "Miniature Bulb"는 도 6(D)의 프리뷰 화면에 도시된 바와 같이 UI표시영역에 핏팅될 수 있다.
다음으로, 도 7(A)에 도시된 선택화면 상에 조명 리모콘 UI의 UI 오브젝트 "Power Saving"(절전)을 추가로 부가하기 위한 동작을 설명한다. 도 6(C) 및 도 6(D)에 도시된 단계에서는 적산된 점유율이 이미 100%이므로, 도 7(A)에 도시된 바와 같이, 점유율 10%인 상기 UI 오브젝트 "Power Saving"은 도 7(B)에 도시된 바와 같이, 현재 상태 그대로 추가될 수 없다.
그러므로, 최종 선택된 UI 오브젝트가 상술된 방식으로 축소되게 된다. 이 경우, 최종 선택된 UI 오브젝트 "Power Saving"이 우선 축소된다. 하지만, 축소 이전의 점유율이 이미 도 7(C)에 도시된 바와 같이 100% 이므로, 상기 UI 오브젝트 "절전"은, 도 7(D)에 도시된 바와 같이, UI 오브젝트의 조작성을 유지하기 위하여 설정된 최소표시크기(예컨대, 점유율 5%) 아래로 축소되더라도 추가될 수 없게 된다.
이에 따라, 본 실시예에 따른 UI오브젝트축소처리에서는, 상기 축소오브젝트선택유닛(73)이 최종 선택된 UI 오브젝트 직전에 선택된 UI 오브젝트를 차기 축소 처리의 대상으로 선택한다. 다음으로, 상기 UI합성처리유닛(60)은, 한도(하한값)로서 UI 오브젝트의 최소표시크기를 갖는, 대상으로서 선택된 UI 오브젝트에 관한 축소 처리를 행한다.
도 8(A)에 도시된 선택화면은, 최종 선택된 UI 오브젝트 "Power Saving", 및 이전의 UI 오브젝트 "Miniature Bulb"가 UI오브젝트축소처리의 대상으로 선택되는 상태를 보여준다. 상기 UI 오브젝트 "Miniature Bulb"에 대해 설정된 최소표시크기(하한값)는 예컨대 점유율 5%이다. 하지만, 도 8(B)의 프리뷰 화면에 도시된 바와 같이, 이들 두 UI 오브젝트 "Power Saving" 및 "Miniature Bulb"가 그 하한까지 축소되더라도, 적산된 점유율이 여전히 100%를 초과하므로, UI 오브젝트 "Power Saving"이 추가될 수 없게 된다.
그러므로, 상기 축소오브젝트선택유닛(73)이 최종 선택된 UI 오브젝트 이전에 선택된 두번째 UI 오브젝트를 차기 축소 처리의 대상으로 선택하게 된다. 상기 UI합성처리유닛(60)은 한도(하한값)로서 UI 오브젝트의 최소표시크기를 갖는, 상기 선택된 UI 오브젝트에 관한 축소 처리를 행한다.
도 8(C)에 도시된 선택화면에서는, 최종 선택된 조명 리모콘 UI의 UI 오브젝트 "Power Saving", 그 직전에 선택된 UI 오브젝트 "Miniature Bulb" 및 상기 UI 오브젝트 "Miniature Bulb" 이전에 선택된 UI 오브젝트 "Power"(전원)이 상기 UI오브젝트축소처리의 대상으로 선택된다. 상기 UI 오브젝트 "Power"에 대해 설정된 최소표시크기(하한값)는 예컨대 점유율 5%이다. 그 후, 도 8(D)의 프리뷰 화면에 도시된 바와 같이, 이들 세 UI 오브젝트 "Power Saving", "Miniature Bulb" 및 "Power"이 그 하한까지 축소되는 경우에는, 적산된 점유율이 100%가 되어, UI 오브젝트 "Power Saving"이 추가되도록 할 수 있다.
그런 다음, 상기 자동레이아웃처리유닛(70)은 상술된 이들 UI 오브젝트 "Power Saving", "Miniature Bulb" 및 "Power"의 UI오브젝트정의정보에 포함된 크기 정보를 재기록한 다음, 상기 합성UI정의파일에 UI오브젝트정의정보를 포함한다.
상술된 바와 같이, 본 실시예에 따르면, UI 오브젝트들이 선택되어 추가되는 경우, 사용자에 의한 선택 순서를 토대로, (최종 선택된 UI 오브젝트로부터) 선택 순서가 더 늦은 상기 선택된 UI 오브젝트들에 대해 UI오브젝트축소처리가 행해진다. 이는 보다 빨리 선택된 UI 오브젝트가 사용자에게 더욱 중요하고, 나중에 선택된 UI 오브젝트가 사용자에게 덜 중요하다는 경향성을 기초로 하고 있다.
다음으로, 상기 최소크기설정유닛(74)에 의한 UI 오브젝트의 최소표시크기(하한값)의 설정 처리를 설명한다. UI오브젝트축소처리가 행해지면, UI 오브젝트를 너무 많이 축소하여 UI합성처리유닛(60)의 조작성을 떨어뜨리는 것을 방지하기 위하여 상기 UI 오브젝트의 최소표시크기를 설정하여야 한다.
도 9는 UI 오브젝트의 최소표시크기(하한값)의 설정 처리를 예시한 흐름도이다.
우선, 상기 UI오브젝트정의정보해석유닛(61)은 UI정의파일에 포함된 UI 오브젝트들의 UI오브젝트정의정보의 수(m)를 카운트하고, 상기 최소크기설정유닛(74)은 하한값설정의 대상으로 UI오브젝트정의정보의 수 n의 초기값으로 n=1을 설정한다(단계 S11).
다음으로, 상기 최소크기설정유닛(74)은 합성되기 위해서 선택된 UI를 구성하는 n번째 UI오브젝트정의정보를 취득하고(단계 S12), n번째 취득한 UI오브젝트정의정보의 속성을 나타내는 각종 계수 a 내지 d의 초기값들을 설정한다.
그 후, 상기 최소크기설정유닛(74)은, n번째 UI 오브젝트의 UI오브젝트정의정보에 포함된 각종 속성에 관한 정보 및 상기 단말의존정보메모리영역(57)에 저장된 단말의존정보를 토대로, 상기 UI 오브젝트의 타입에 따라, 계수들의 초기값들을 갱신하여, 상기 계수들의 신규 값들을 설정하게 된다.
즉, UI 오브젝트가 단계 S14에서의 텍스트 타입이라면, 상기 최소크기설정유닛(74)은 최소폰트크기 등을 토대로 계수를 설정한다(단계 S15). 예를 들어, UI 오브젝트가 키 또는 버튼 상에 기능명을 나타내는 텍스트를 포함한다면 또는 UI 오브젝트가 각종 정보를 도시한 텍스트박스라면, 계수 a는 상기 단말의존정보메모리영역(57)에 저장된, 휴대전화(1)의 표시유닛(24) 상에 표시가능한 최소라인간격 및 최소폰트크기와 같은 단말의존정보에 따라 설정된다.
또한, UI 오브젝트가 단계 S16에서의 리스트표시타입이라면, 상기 최소크기설정유닛(74)은 리스트의 라인폭 등을 토대로 계수 b를 설정한다(단계 S17). 예를 들어, UI 오브젝트가 사용자에 의해 복수의 라인에 도시된 항목들 가운데 선택을 수용하는 리스트박스라면, 항목들에 대한 스크롤 표시를 채택하여 상기 항목들을 목록화하도록 라인수를 축소할 수 있게 된다. 이 경우에도, 계수 b는 휴대전화(1)의 표시유닛(24) 상에 표시가능한 최소라인간격 및 최소폰트크기와 같은 단말의존정보에 따라 설정된다.
더욱이, 상기 UI 오브젝트가 단계 S18에서의 이미지표시타입이라면, 상기 최소크기설정유닛(74)은 이미지의 용도 및 해상도를 토대로 계수 c를 설정한다(단계 S19). 예를 들어, 상기 UI 오브젝트의 이미지의 해상도를 기초로 한다면, 상기 최소크기설정유닛(74)은 단말의존정보에 더하여 UI오브젝트정의정보에 포함된 이미지의 속성 정보에 따라 계수 c를 설정할 수도 있다. 또한, 상기 이미지의 용도는, 표시유닛(24) 상에 이미지를 표시하기 위하여, 이미지 표시 타입의 UI오브젝트정의정보에 포함된, 레이어의 정보로부터 어느 정도까지 특정될 수 있다.
나아가, 상기 UI 오브젝트가 단계 S20에서 버튼 또는 체크박스와 같은 사용자 조작 타입이라면, 상기 최소크기설정유닛(74)은 상기 조작유닛의 사양 등을 토대로 계수 d를 설정한다(단계 S21). 예를 들어, UI 오브젝트가 키 또는 버튼과 같은 사용자에 의한 입력 조작에 관련된다면, 상기 계수 d는 상기 표시유닛(24)의 UI표시영역의 크기와 같은 단말의존정보에 따라 설정된다. 또한, 상기 계수 d는, 입력유닛(22)의 사양을 토대로, 스타일러스와 같은 전용입력장치에 의한 입력 또는 사용자에 의한 손가락 입력과 같은 입력장치정보에 따라 설정된다. 상기 입력장치정보는 단말의존정보에 포함된다. 구체적으로는, 상부 레이어 상에 표시된 이미지가 키 또는 버튼과 같은 UI 오브젝트로서 사용되기 쉽기 때문에, 상기 계수 c는 이미지를 소정의 크기 미만으로 축소하지 않도록 설정된다. 그리고, 하부 레이어 상에 표시된 이미지는 상기 표시유닛(24) 상의 그라운드로서 표시되도록 백그라운드 이미지로 사용되기 쉽기 때문에, 상기 계수 c는 축소를 위한 높은 자유도를 허용하도록 설정된다.
상기 계수 a 내지 d를 설정하는 것을 완료한 후, 상기 최소크기설정유닛(74)은 각각의 계수를 토대로 UI 오브젝트의 최소표시크기를 설정한다(단계 S22).
그런 다음, 상기 최소크기설정유닛(74)은 n번째 UI 오브젝트의 서열수(n)와 모든 UI 오브젝트들의 수(m)를 비교하고(단계 S23), 그들이 동일한 수라면(단계 S24의 Yes), 모든 UI 오브젝트들에 하한값들을 설정하는 것이 완료되므로, 상기 하한값의 설정 처리를 종료한다.
이와는 달리, 상기 UI 오브젝트의 서열수(n)이 모든 UI 오브젝트들의 수(m)와 같지 않다면, 즉 하한값의 설정 처리가 모든 UI 오브젝트들에 대해 완료되지 않았다면(단계 S24의 No), 상기 최소크기설정유닛(74)은 1을 n에 더한 다음(단계 S25), 단계 S23으로 되돌아가 상기 처리를 계속하게 된다.
상술된 처리에서는, 2이상의 계수(예컨대, a 및 d)가 예컨대 이미지를 중첩하는 텍스트를 표시하는 키 또는 버튼과 같은 UI 오브젝트에 대해 설정될 수도 있다.
하기는 UI 오브젝트를 축소하기 위한 최소 크기의 추가적인 상세한 설명이다. 상술된 바와 같이, 각각의 UI 오브젝트를 축소하기 위한 최소 크기는 각종 파라미터들에 의해 설정될 수도 있다.
도 10은 사용자가 그/그녀의 손가락으로 입력할 때 입력장치정보를 포함하는 단말의존정보에 따라 하한값들이 설정되는 경우, UI 오브젝트들의 타입에 의해 분류된 UI 오브젝트들을 축소하기 위한 하한값들을 예시한 도면이다. 사용자가 휴대전화(1)를 조작할 때 조작장치에 의해 터치된, 도 10(A)에 도시된 바와 같이 상기 터치패널(20)의 입력유닛(22) 상의 접촉영역의 표준 크기를 이하 "표준 크기"라고 한다. 표준 크기는 각각의 사용자 또는 각각의 조작장치(손가락 또는 스타일러스)에 대하여 상이할 수도 있으므로, 이는 사전에 미리 소정값으로 각각의 표준 크기를 설정하고, 사용자가 처음 휴대전화(1)를 조작하여 초기 설정을 행할 때 각각의 표준 크기를 등록하도록 사용자에게 권고하는 것이 바람직하다. 각각의 표준 크기가 등록되는 경우, 상기 메모리유닛(50)의 단말의존정보메모리영역(57)에 단말의존정보로서 저장된다. 조작장치로서 스타일러스와 같은 단말부착장치를 이용할 때의 표준 크기는 사전에 미리 단말의존정보로서 등록될 수도 있다.
축소 대상으로서 UI 오브젝트가 도 10(A)에 도시된 것과 같이 상기 표시유닛(24) 상에 표시된 Button Widget(사용자 조작 타입)인 경우, 사용자의 집게 손가락이 터치하는 입력유닛(22)의 접촉 면적의 크기가 표준 크기로 정의되고, 상기 표준 크기를 토대로, 오브젝트를 축소하기 위한 하한값이 설정된다. 축소 처리가 각각의 UI 오브젝트에 행해지면, 예컨대 수평 대 수직비가 유지된다. 도 10에서, 각각의 UI 오브젝트의 축소 결과는 좌측에, 각종 조건들을 토대로 설정가능한 하한값은 우측에 도시된다.
만일 축소 대상으로서의 UI 오브젝트가 TextBox Widget(텍스트 타입)이라면, 상기 오브젝트를 축소하기 위한 하한값은, 상기 표시유닛(24) 상에 표시될 때 사용자에 대한 가시성을 보장할 수 있는 폰트 크기 및 상기 표시유닛(24) 상에 표시가능한 최소 폰트 크기를 토대로, 도 10(B)에 도시된 바와 같이 설정된다.
축소 대상으로서 UI 오브젝트가 Image Widget(이미지 표시 타입)이라면, 소정의 축소비가 도 10(C)에 도시된 바와 같이 이미지의 용도를 토대로 하한값으로서 설정된다. 예컨대, 월페이퍼 이미지라면, 그 하한값은 각각의 UI에 대해 설정된 전체 UI 표시 영역으로 설정된다. 도 10(C)에 도시된 일례에서는, 점선으로 포위된, 사용자 조작 타입인 TV 리모콘 UI에 포함된 모든 UI 오브젝트들의 전체 배치 면적을 토대로, 월페이퍼로 사용되는 이미지가 상기 면적과 동일한 크기를 갖도록 축소된다.
상술된 바와 같이, 각각의 UI 오브젝트를 축소하기 위한 하한값은 UI 오브젝트의 각각의 타입에 대한 단말의존정보를 토대로 결정된다. 상기 하한값에 의하면, 축소 처리 시 그 과축소로 인한 UI 오브젝트의 가시성 및 조작성의 악화를 방지할 수도 있다.
도 11은 사용자가 스타일러스로 입력할 때의 입력장치정보를 포함하는 단말의존정보에 따라 하한값들이 설정되는 경우, UI 오브젝트들의 타입에 의해 분류된 UI 오브젝트들을 축소하기 위한 하한값들을 예시한 도면이다.
축소 대상으로서 UI 오브젝트가 Button Widget(사용자 조작 타입)이라면, UI 오브젝트가 도 11(A)에 도시된 바와 같이 상기 표시유닛(24) 상에 표시되는 경우, 스타일러스가 터치하는 입력유닛(22)의 접촉 면적의 크기가 표준 크기로 정의되고, 상기 표준 크기를 토대로, 각각의 오브젝트를 축소하기 위한 하한값이 설정된다. 축소 대상으로서 UI 오브젝트가 도 11(A)에 도시된 바와 같이 Button Widget(사용자 조작 타입)이라면, 도 10(A)에 도시된 바와 같이 사용자가 그/그녀의 손가락으로 입력할 때보다 작은 하한값이 설정될 수도 있다. 이는 스타일러스에 의한 입력이 손가락 조작보다 미세한 입력 조작을 가능하게 하기 때문이다. 도 11에서는, 각각의 UI 오브젝트의 축소 결과가 좌측에 도시되고, 각종 조건들을 토대로 설정가능한 하한값이 우측에 도시된다.
도 11(B) 및 도 11(C)에 도시된 바와 같이, 축소 대상으로서 UI 오브젝트가 TextBox Widget(텍스트 타입) 또는 Image Widget(이미지 표시 타입)이라면, 도 10(B) 및 도 10(C)에 도시된 것과 동일한 하한값이 설정될 수 있다.
도 12는 다수의 메인 UI 오브젝트들이 선택되어 상기 UI들의 기본적인 배치들로 배치될 때 복수의 UI의 예시적인 합성을 예시한 도면이다. 도 12(A)는 표준 크기로서 사용자가 그/그녀의 손가락으로 입력할 때의 접촉 면적의 크기를 이용하여 설정된 축소의 하한값을 토대로 복수의 UI를 합성함으로써 생성되는 합성 UI의 표시화면을 보여준다. 한편, 도 12(B)는 표준 크기로서 사용자가 스타일러스로 입력할 때의 접촉 면적의 크기를 이용하여 설정된 축소의 하한값을 토대로 복수의 UI를 합성함으로써 생성되는 합성 UI의 표시화면을 보여준다. 도 12(A) 및 도 12(B)의 비교로부터 명백한 바와 같이, UI 오브젝트들의 하한값들은 스타일러스로 입력이 행해질 때 더욱 작게 설정될 수 있으므로, 더 많은 UI 오브젝트들이 배치될 수 있도록 한다.
상술된 바와 같이, 본 실시예에 따르면, 사용자가 임의로 선택한 UI 오브젝트들만으로 이루어진 각종 합성 UI가 생성될 수도 있다. 사용자에 의한 선택을 토대로 합성 UI가 생성되는 경우, 상기 합성UI정의파일생성유닛(63)은 생성된 합성 UI에 대응하는 합성UI정의파일을 생성한다. 상기 UI합성처리유닛(60)은 상기 생성된 합성UI정의파일을 상기 합성UI정의파일메모리영역(56)에 저장한다. 그런 다음, 상기 합성UI정의파일메모리영역(56)에 저장된 합성UI정의파일을 판독하여, 상기 UI생성유닛(13)이 새롭게 생성된 합성 UI를 상기 터치패널(20)의 표시유닛(24) 상에 재현할 수 있다.
다음으로, 본 실시예에 따른 조작장치의 변경에 수반되는 UI재합성처리를 설명한다. 이 처리는 사용자에 의해 채택된 입력 조작을 위한 조작장치가 변경될 때, 이러한 변경 이후의 조작장치를 토대로, 사용 중인 합성 UI를 재합성하는 것이다.
하기는 도 13에 도시된 흐름도를 참조하여 본 실시예에 따른 조작장치의 변경에 수반되는 UI재합성처리의 설명이다.
조작장치의 변경을 검출하기 위한 모드(이하, "조작장치검출모드"라고 함)를 개시한 후, 상기 제어유닛(10)의 조작장치검출유닛(14)은 입력 조작에 사용자가 사용하는 조작장치를 검출한다(단계 S31). 즉, 상기 조작장치검출유닛(14)은 터치패널(20)의 입력유닛(22), 조작키유닛(80) 및 스타일러스저장유닛(90)으로부터의 입력을 감시하여, 이들 기능유닛 각각으로부터의 입력을 검출하게 된다. 입력을 검출하는 경우, 상기 조작장치검출유닛(14)은 상기 입력을 토대로 상기 조작장치가 변경되는 지의 여부를 판정한다(단계 S32).
예를 들어, 입력이 그 전에 조작키유닛(80)으로부터 검출되면서 상기 터치패널(20)로부터의 입력이 검출된다면, 상기 조작장치검출유닛(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 상에서의 변경(재합성) 처리를 수행하지 않으면서, 상기 제어유닛(10)이 단계 S31로 되돌아간다.
이와는 대조적으로, 상기 표시유닛(24) 상에 표시된 UI가 단계 S34에서의 합성 UI라면, 상기 UI합성처리유닛(60)은 단계 S33에서 변경된 표준 크기를 토대로, 합성 UI의 합성UI정의파일에 포함된 각각의 UI 오브젝트에 UI합성처리를 다시 행한다(단계 S35). 그 후, 상기 UI생성유닛(13)은, UI의 표시를 갱신하기 위하여, UI합성처리가 표시유닛(24) 상에서 다시 수행되는 각각의 UI 오브젝트를 표시한다(단계 S36). 그 후, 상기 처리 흐름은 단계 S31로 되돌아가 조작장치의 다음 변경을 검출하게 된다.
상기 조작장치가 단계 S32에서 변경되지 않는다면, 조작장치의 변경의 검출이 종료되는지의 여부, 즉 조작장치검출모드가 종료되는지의 여부를 판정한다(단계 S37). 만일 조작장치검출모드가 아직 종료되지 않는다면, 상기 처리 흐름은 단계 S31로 되돌아가 상기 조작장치의 다음 변경을 검출하게 된다. 단계 S37에서 조작장치검출모드가 종료된 것으로 검출된다면, 상기 조작장치의 변경에 수반되는 UI재합성처리가 종료된다. 이에 따라, 상기 조작장치검출유닛(14)이 본 실시예에 따른 조작입력장치판정유닛을 구성하게 된다.
이에 따라, 사용자에 의한 입력 조작을 위한 조작장치가 변경된다면, 상기 휴대전화(1)는 새로운 조작장치를 결정하여, 각각의 조작장치에 대응하는 최적의 합성 UI를 사용자에게 제공한다. 만일 도 12(A)에 도시된 바와 같이 합성 UI가 터치패널(20)의 표시유닛(24) 상에 표시되면서 스타일러스가 상기 스타일러스저장유닛(90)에서 꺼내진다면, 상기 합성 UI가 재합성되고, 화면이 도 12(B)에 도시된 바와 같이 합성 UI의 표시로 변경된다. 즉, 손가락에 의한 조작에 비해 보다 작은 크기의 더 많은 UI 오브젝트들이 스타일러스에 의한 조작에 대해 표시된다. 그 후, 스타일러스가 스타일러스저장유닛(90)에 저장되면, 화면이 도 12(A)에 도시된 바와 같은 합성 UI로 되돌아가는데, 이는 손가락에 의한 조작에 적합하다.
또한, 스타일러스가 꺼내져서 화면이 도 12(B)에 도시된 바와 같은 합성 UI로 변경된 후에도, 스타일러스를 이용하지 않으면서 입력 조작을 위하여 손가락이 터치패널(20)을 터치하는 경우에는, 상기 화면이 손가락의 접촉 면적(표준 크기)을 토대로 도 12(A)에 도시된 바와 같은 합성 UI로 절환될 수 있다. 그 후, 상기 화면은 스타일러스가 터치패널(20)을 터치할 때 도 12(B)에 도시된 바와 같은 합성 UI로 변경될 수도 있다.
또한, 상기 조작키유닛(80)을 구성하는 각각의 키를 누르는 조작을 토대로, 조작키에 의한 조작을 위한(즉, 터치패널에 의한 조작에 대한 것이 아님) 합성 UI로 상기 표시유닛(24) 상에 표시될 합성 UI를 절환시킬 수도 있다. 더욱이, 포인터가 표시유닛(24) 상의 입력 스폿을 특정하도록 표시될 때 상기 표시유닛(24) 상에 표시된 포인터에 의한 조작에 적합한 합성 UI를 표시할 수도 있게 된다. 상기 단말이 포인터의 이미지를 주문제작가능하다면, 표시될 포인터의 이미지의 크기를 토대로 표준 크기를 계산하여, 상기 표준 크기에 따라 합성 UI를 표시할 수 있게 된다.
(제2실시예)
다음으로, 본 발명의 제2실시예에 따른 UI오브젝트축소처리를 설명한다.
본 실시예에 따르면, UI 오브젝트를 자동으로 선택 및 배치하여 합성 UI를 생성할 때 상기 표시유닛(24) 상의 소정의 UI표시영역에 UI 오브젝트들이 핏팅될 수 없다면, 상기 UI 오브젝트들에 대해 축소 처리가 선택적으로 수행된다.
도 14는 UI의 자동 합성에 사용되는 우선순위가 높은 UI 오브젝트들로 이루어진 UI를 예시한 도면이다. 각각의 UI를 구성하는 이러한 UI 오브젝트들은, 대응하는 어플리케이션을 토대로 기본적이면서도 중요한 기능들의 실행을 각각의 UI가 지시할 때에 필수적이다.
제1실시예에 기술된 바와 같이, 각각의 UI에 대응하는 UI정의파일은 모든 UI 오브젝트들의 UI오브젝트정의정보를 포함한다. 또한, 각각의 UI의 UI정의파일에 포함된 UI오브젝트정의정보는 상술된 (7)의 "우선순위정보"를 포함하는데, 이는 각각의 UI 오브젝트가 상기 UI에서 어떤 우선순위를 가지는지를 나타낸다.
상기 우선순위정보는, 복수의 UI가 자동으로 합성될 때, UI를 구성하는 각각의 UI 오브젝트가 필수적인 UI 오브젝트로 항상 선택되어야 하는지, 중요한 UI 오브젝트로서 선택되는 것이 바람직한지, 또는 다른 UI 오브젝트들에 비해 중요성이 낮아 조건들에 따라 생략가능한지의 여부를 나타낸다. 도 14에 도시된 각각의 UI는, 각각의 UI정의파일에 포함된 UI오브젝트정의정보를 토대로 우선순위가 높은 UI 오브젝트 및 필수적인 UI 오브젝트들을 추출한다. 따라서, 각각의 UI가 합성될 때 선택되어야만 하는 UI 오브젝트들이 사전에 미리 정의된다.
또한, UI 오브젝트들이 자동으로 선택되어 배치될 때 선택되어야만 하는 UI 오브젝트를 특정하기 위하여, 우선순위의 소정의 역치가 우선순위정보에 포함된다. 이에 따라, 상기 역치의 우선순위를 갖는 UI 오브젝트가 항상 선택되게 된다. 상기 필수적인 UI 오브젝트의 UI오브젝트정의정보에 포함된 우선순위정보를 이하 "필수 정보"라고 한다.
하기는 일례로서 도 14에 도시된 UI들 가운데 비디오 리모콘 UI 및 오디오 리모콘 UI가 자동으로 합성될 때의 자동레이아웃처리에 관한 설명이다. 도 14에 도시된 비디오 리모콘 UI를 선택한 후 오디오 리모콘 UI를 선택하여 그들을 합성하고자 하는 경우, 이들 두 UI는 현재 상태 그대로는 도 15에 도시된 바와 같이, 표시유닛(24)의 UI표시영역에 핏팅될 수 없다. 이 경우, 본 실시예에 따르면, UI 오브젝트들이 소정의 조건에 따라 선택적으로 축소된다.
도 16은 본 실시예에 따른 자동레이아웃처리를 예시한 흐름도이다. 자동레이아웃처리가 개시되면, 상기 최소크기설정유닛(74)은 제1실시예에 기술된 바와 같이(도 9 참조), 복수의 선택된 UI들에 포함된 각각의 UI 오브젝트에 최소표시크기의 설정 처리를 수행한다(단계 S51). 이에 따라, 각각의 UI 오브젝트의 표시 크기가 축소될 때에 사용되는 하한값이 설정된다.
다음으로, 상기 배치설정유닛(71)에 포함된 마진설정유닛(도시되지 않음)은, UI 오브젝트의 배치 시에 이웃하여 UI 오브젝트로부터 필요 마진(공간)을 설정하도록 각각의 UI 오브젝트에 마진설정처리를 수행한다(단계 S52). 상기 처리에 있어서, 상기 UI오브젝트정의정보해석유닛(61)은 각각의 선택된 UI 오브젝트의 UI오브젝트정의정보에 포함된 상술된 (8)의 "UI 오브젝트와 다른 UI 오브젝트들 간의 관련성 정보"를 해석한다. 상기 마진설정처리는 UI 오브젝트들이 서로 너무 근접하여 배치되는 것을 방지하여, 사용자에 대한 조작성의 악화를 방지하게 된다.
다음으로, 상기 배치설정유닛(71)은 단계 S52에서 마진설정처리에 의해 설정된 마진 및 UI오브젝트정의정보에 포함된 디폴트표시크기정보를 토대로 각각의 UI 오브젝트를 가시적으로 배치하기 위한 배치설정처리를 수행한다(단계 S53). 상기 배치설정처리에서는, 상기 배치설정유닛(71)이 서로 근접한, 동일한 UI정의파일에 포함된 UI 오브젝트들을 배치시킨다. 또한, 상기 배치설정유닛(71)은, 상기 (8)의 UI 오브젝트와 다른 UI 오브젝트들 간의 관련성 정보를 토대로, 그 상대적인 위치들을 반영하여 서로 근접한, 동일한 UI정의파일에 포함된 UI 오브젝트들 가운데 서로 고도로 관련된, UI 오브젝트들을 배치시킨다.
단계 S53에서의 배치설정처리가 완료되면, 상기 배치가부판정유닛(72)은 상기 합성 UI의 모든 UI 오브젝트들이 상기 배치설정처리에 의해 UI 오브젝트들의 가상적인 배치를 토대로 UI표시영역 내에 배치될 수 있는지의 여부를 판정한다(단계 S54). 모든 UI 오브젝트들이 배치될 수 있는 것으로 판정된다면(단계 S54의 Yes), 상기 자동레이아웃처리유닛(70)은 가상적으로 배치된 UI 오브젝트들을 상기 표시유닛(24) 상에 실제로 표시하여(단계 S55), 상기 자동레이아웃처리를 완료하게 된다.
다른 한편으로, 상기 합성 UI의 모든 UI 오브젝트들이 소정의 UI표시영역에 핏팅하도록 배치될 수 없는 것으로 판정된다면, 상기 축소오브젝트선택유닛(73)은 단계 S51에서의 최소표시크기설정처리의 결과를 토대로 축소가능한 UI 오브젝트가 있는 지의 여부를 판정한다(단계 S56).
만일 단계 S56에서 축소가능한 UI 오브젝트가 없는 것으로 판정된다면, 상기 자동레이아웃처리유닛(70)은 자동 레이아웃이 불가능한 것으로 판정하여(단계 S57), 상기 자동레이아웃처리를 종료한다. 이 때, 자동레이아웃처리유닛(70)은 이에 따라 상기 표시유닛(24) 상에 표시될 수도 있다. 또한, 이 경우에는 배치될 UI 오브젝트들을 재선택하거나 또는 합성될 UI들을 재선택하도록 사용자에게 요구하는 것이 바람직하다. 이에 따라, 조작성을 희생하는 UI들의 강제적인 합성을 방지할 수 있게 된다.
만일 단계 S56에서 축소가능한 UI 오브젝트가 있는 것으로 판정된다면, 상기 자동레이아웃처리유닛(70)은 그 표시 크기가 축소오브젝트선택유닛(73)에 의해 우선적으로 축소되어야 하는 것으로 선택되는 UI 오브젝트를 선택하여 축소시킨다(단계 S58). 이 경우, 상기 축소 처리는 단계 S51에서 설정된 최소표시크기를 토대로 수행된다.
본 실시예에 따르면, 단계 S58에서 축소되어야 하는 UI 오브젝트들의 선택 처리가 각각의 UI 오브젝트에 대해 설정된 우선순위를 토대로 행해진다. 즉, 각각의 UI 오브젝트의 UI오브젝트정의정보에 포함된 우선순위정보를 토대로, 우선순위가 낮은 UI 오브젝트가 덜 중요한 것으로 판정되어, 우선적으로 축소되어야 하는 UI 오브젝트로 선택된다.
도 17(A)는 우선순위에 따라 분류된, 합성될 오디오 리모콘 UI 및 비디오 리모콘 UI를 구성하는 UI 오브젝트들을 예시한 도면이다. 도면에서, 우선순위(Priority)가 Hi인 UI 오브젝트(UI 오브젝트 "Power")는 우선순위가 높다는 것을 의미하는 반면, 우선순위 Low인 UI 오브젝트는 우선순위가 낮다는 것을 의미한다. 도면에 도시된 일례에서는, 비디오 리모콘 UI와 오디오 리모콘 UI가 합성될 때 우선순위가 Low인 UI 오브젝트를 이용하지 않도록 설정되어, 축소될 오브젝트들의 이용가능한 선택으로부터 배제되게 된다. 따라서, 본 실시예에 따르면, 우선순위정보(priority)가 Hi, Middle1 및 Middle2인 UI 오브젝트들이 필수적인 UI 오브젝트들이고, 상기 UI오브젝트정의정보에 포함된 상기 UI 오브젝트들의 우선순위정보가 "필수 정보"이다.
도 17(B)는 축소되어야 하는 UI 오브젝트들의 선택 처리를 토대로 축소된 우선순위가 낮은 UI 오브젝트들을 예시한 도면이다. 도면에 도시된 일례는, 비디오 리모콘 UI 및 오디오 리모콘 UI 양자 모두에 있어서, 우선순위(Priority)가 Hi 및 Middle1인 UI 오브젝트들이 축소로부터 배제되고, 우선순위가 Middle2인 UI 오브젝트들이 축소를 위한 대상으로 축소되는 상태를 예시한다. 우선순위가 Middle2인 UI 오브젝트들, 정보표시윈도우 및 오디오 리모콘 UI의 버튼 "RADIO" 및 "CD"가 축소된다. 이 경우의 축소 처리는 한도로서 단계 S51에서 설정된 최소표시크기로 수행된다.
단계 S58에서 UI 오브젝트들의 선택 및 축소를 완료한 후, 상기 처리 흐름은 단계 S52로 되돌아간다. 그런 다음, 단계 S52에서의 마진설정처리 및 단계 S53에서의 배치설정처리가 축소된 UI 오브젝트들을 포함하는 UI 오브젝트들에 대해 수행된다. 이러한 상술된 처리는 합성 UI가 한 화면 상의 UI표시영역에 핏팅되거나 또는 합성 UI가 생성될 수 없다고 판정될 때까지 수행된다.
UI 오브젝트들은 상술된 바와 같이 선택 처리 및 축소 처리 후에 배치되므로, 도 15에서 합성될 수 없는 두 UI들이 도 18에 도시된 바와 같이 단 하나의 화면으로서 상기 표시유닛(24)의 UI표시영역에 핏팅될 수 있다. 또한, UI 오브젝트가 UI들의 합성 시에 축소되는 경우, 상기 최소표시크기를 초과하는 축소 처리는 수행되지 않는다. 따라서, 사용성을 유지하면서 UI 오브젝트들을 자동으로 레이아웃시킬 수 있게 된다.
하지만, 도 17에 도시된 우순선위가 Middle2인 UI 오브젝트들을 단지 축소만해서는 합성 UI가 한 화면의 UI표시영역에 핏팅될 수 없는 경우가 있을 수도 있다. 이 경우, 우선순위가 Middle1인 UI 오브젝트들을 축소하는 것과 같이, 상기 축소 처리 및 (가상) 배치설정처리를 연속하여 반복하여 UI합성처리를 수행할 수도 있게 된다.
(제3실시예)
다음으로, 제3실시예에 따른 UI 오브젝트의 축소 처리를 설명한다.
제3실시예에 따르면, 축소되어야 하는 UI 오브젝트들의 선택 처리가 도 16을 참조하여 설명된 제2실시예의 단계 S58의 것으로부터 수정된다. 다른 동작들은 제2실시예의 것과 동일하므로, 그 설명은 생략한다.
본 실시예에 따르면, 단계 S58에서 축소되어야 하는 UI 오브젝트들의 선택 처리는 UI 오브젝트들의 타입에 의해 결정된 우선순위를 토대로 수행된다. 즉, 각각의 UI 오브젝트의 UI오브젝트정의정보에 포함된 UI 오브젝트의 타입 정보를 토대로, 우선순위가 낮은 타입의 UI 오브젝트가, UI 오브젝트의 타입에 의해 사전에 미리 결정된 우선순위에 따라, 우선적으로 축소되어야 하는 UI 오브젝트로서 선택된다.
도 19(A)는 UI 오브젝트들의 타입에 따라 분류된, 합성될 오디오 리모콘 UI 및 비디오 리모콘 UI를 구성하는 UI 오브젝트들을 예시한 도면이다. 도면에서, UI 오브젝트들은 그 타입(Widget의 타입)에 따라 2종류의 UI 오브젝트, 즉 사용자조작타입 UI 오브젝트(Button Widget) 및 텍스트타입 UI 오브젝트(TextBox Widget)로 분류된다.
도 19(B)는 텍스트 타입의 UI 오브젝트(TextBox Widget)가 사용자 조작 타입의 UI 오브젝트(Button Widget)보다 우선순위가 높으므로, 우선순위가 낮은 UI 오브젝트(Button Widget)들이 축소되는 일례를 예시한 도면이다. 예를 들어, 입력이 스타일러스로 수행된다면, 더 많은 UI 오브젝트들을 배치하기 위하여, 도 19(B)에 도시된 바와 같이 사용자 조작 타입의 UI 오브젝트(Button Widget)들의 우선순위를 낮게 설정할 수 있다. 또한, 원한다면, 사용자 조작 타입의 UI 오브젝트의 우선순위를 더 높게 설정할 수도 있다.
이에 따라, 예컨대 상술된 바와 같이, 우선적으로 축소되어야 하는 UI 오브젝트로서 우선순위가 낮은 타입의 UI 오브젝트들을 선택하여, 상기 UI 오브젝트들에 대한 축소 처리를 행함으로써, 도 20에 도시된 바와 같이 표시유닛(24)의 UI표시영역에 한 화면으로서, 축소 처리 이전에 합성될 수 없는 두 UI들을 핏팅할 수 있게 된다.
(제4실시예)
다음으로, 제4실시예에 따른 UI 오브젝트의 축소 처리를 설명한다.
제4실시예에 따르면, 제3실시예와 유사하게, 축소되어야 하는 UI 오브젝트들의 선택 처리가 제2실시예의 단계 S58의 것으로부터 수정된다.
본 실시예에 따르면, 단계 S58에서 축소되어야 하는 UI 오브젝트들의 선택 처리가 각각의 UI에 대하여 결정된 우선순위를 토대로 수행된다. 즉, 동일한 UI정의파일로 정의된 각각의 UI의 UI 오브젝트들이 그룹화되고, 각각의 그룹에 대하여 결정된 우선순위를 토대로, 우선순위가 낮은 그룹의 UI 오브젝트들이 우선적으로 축소되어야 하는 UI 오브젝트로서 선택된다.
도 21(A)는 각각의 UI들로 분류된, 합성될 오디오 리모콘 UI 및 비디오 리모콘 UI를 구성하는 UI 오브젝트들을 예시한 도면이다. 도면에서, UI 오브젝트들은 두 그룹, 즉 비디오 리모콘 UI를 구성하는 UI 오브젝트와 오디오 리모콘 UI를 구성하는 UI 오브젝트로 분류된다.
도 21(A)에 도시된 일례에서는, 비디오 리모콘 UI를 구성하는 UI 오브젝트들이 우선순위가 높고, 오디오 리모콘 UI를 구성하는 UI 오브젝트들은 우선순위가 낮다. 이러한 방식으로, 상기 UI 오브젝트들은 우선순위가 주어지는 각각의 UI로 그룹화되고, 우선순위가 낮은 UI의 UI 오브젝트들이 축소될 UI 오브젝트들로 선택된다.
도 21(B)는 우선순위가 낮은 오디오 리모콘 UI를 구성하는 각각의 UI 오브젝트에 대하여 축소 처리가 수행되는 일례를 예시한 도면이다. 이에 따라, 예컨대 상술된 바와 같이, 우선적으로 축소되어야 하는 UI 오브젝트로서 우선순위가 낮은 UI 오브젝트들을 선택하여, 상기 UI 오브젝트들에 대한 축소 처리를 행함으로써, 도 22에 도시된 바와 같이, 상기 표시유닛(24)의 UI표시영역에 한 화면으로서, 축소 처리 이전에 합성될 수 없는 두 UI들을 핏팅할 수 있게 된다.
(제5실시예)
다음으로, 제5실시예에 따른 UI 오브젝트의 축소 처리를 설명한다.
상기 제5실시예에 따르면, 제3실시예 및 제4실시예와 유사하게, 축소되어야 하는 UI 오브젝트들의 선택 처리가 제2실시예의 단계 S58의 것으로부터 수정된다.
본 실시예에 따르면, 단계 S58에서 축소되어야 하는 UI 오브젝트들의 선택 처리가 각각의 UI 오브젝트의 현재 점유율과 하한값으로 축소된 UI 오브젝트의 점유율 간의 차이를 토대로 결정된 우선순위를 토대로 수행된다. 즉, 상기 최소표시크기설정처리에 의해 설정된 하한값을 토대로 축소된 UI 오브젝트의 표시 크기와 각각의 UI 오브젝트의 현재 표시 크기 간의 차이를 토대로, 차이가 보다 큰 UI 오브젝트가 우선적으로 축소되어야 하는 UI 오브젝트로서 선택된다. 이는 하한값으로 축소되기 전후의 그 크기의 차이가 큰 UI 오브젝트가 통상적으로 하한값으로 축소되어도 조작성을 악화시키지 않아, 축소 시 UI표시영역에 더욱 많은 빈 공간을 제공한다는 경향성을 기초로 한다.
도 23(A)는 하한값으로 축소되기 전후의 그 크기의 차이를 토대로 분류된, 합성될 오디오 리모콘 UI와 비디오 리모콘 UI를 구성하는 UI 오브젝트들을 예시한 도면이다. 도면의 일례로서, 두 UI 양자 모두의 텍스트 타입의 UI 오브젝트(TextBox Widget)들이 축소되기 전후 간의 크기의 "대(大)" 차이로 분류된다. 또한, 두 UI 양자 모두의 사용자 조작 타입의 UI 오브젝트(Button Widget)들은 축소되기 전후 간의 크기의 "중(中)" 또는 "소(小)" 차이로 분류된다.
예컨대, 도 23(B)에 도시된 바와 같이, 상술된 분류를 토대로, 하한값으로 축소되기 전후 간의 그 크기의 차이가 보다 큰 UI 오브젝트들이 우선적으로 선택되어 축소 처리에 의해 축소된다. 도 23(B)에서는, 축소가 적은 차이를 제공하므로, 타원은 축소된 후의 UI 오브젝트들이 차이가 "대(大)"인 UI 오브젝트들에 대해 채택되는 반면, 축소되기 전의 UI 오브젝트들이 차이가 "중(中)" 또는 "소(小)"인 UI 오브젝트들에 대해 채택된다는 것을 나타낸다.
이에 따라, 예컨대 상술된 바와 같이, 우선적으로 축소되어야 하는 UI 오브젝트로서 축소되기 전후의 크기의 차이가 큰 UI 오브젝트들을 선택하여, 상기 UI 오브젝트들에 대한 축소 처리를 행함으로써, 도 24에 도시된 바와 같이, 상기 표시유닛(24)의 UI표시영역에 한 화면으로서, 축소 처리 이전에 합성될 수 없는 두 UI들을 핏팅할 수 있게 된다.
본 발명은 상술된 실시예들로 제한되지 아니하고, 다수의 방식으로 변경 또는 변형될 수 있다는 점을 이해하여야 한다. 예를 들어, 터치패널을 구비한 휴대단말이 상기 실시예에서 UI 합성 처리를 실행한다. 하지만, 상기 터치패널이 본 발명에 따른 UI 합성 처리에 있어서 필수 요소는 아니다. 본 발명은 예컨대 사용자가 UI를 합성할 수도 있는 수많은 기계키 또는 포인팅디바이스와 같은 여하한의 입력유닛을 구비한 단말에도 적용가능하다.
상기 제1실시예에서는, 설명의 편의를 위하여, 상기 휴대전화(1)가 조작장치검출모드에 있을 때 상기 조작장치의 변경에 수반되는 UI재합성처리를 수행한다. 하지만, 휴대전화(1)가 항상 이러한 모드로 동작할 수도 있다. 또한, 제1실시예에서는, 사용자가 복수의 UI로부터 원하는 UI 오브젝트들을 선택하여 합성 UI를 생성하게 되는 것으로 가정하는 반면, 제2실시예 내지 제5실시예에서는, UI 오브젝트들이 자동으로 선택 및 배치되어 합성 UI를 생성하게 되는 것으로 가정되어 있다. 하지만, 제2실시예 내지 제5실시예에서는, 사용자가 복수의 UI로부터 원하는 UI 오브젝트들을 선택하여 합성 UI를 생성하게 되지만, 상기 원하는 UI 오브젝트들이 UI표시영역에 핏팅될 수 없게 될 때 각각의 실시예에 기술된 바와 같이 UI 오브젝트들을 선택하여 축소 처리를 수행할 수도 있다. 더욱이, 제2실시예 내지 제5실시예에서는, 제1실시예에 기술된 조작장치의 변경에 수반되는 UI재합성처리를 수행할 수도 있다.
또한, 상기 제2실시예 내지 제5실시예에서는 복수의 UI를 구성하는 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> 태그로 정의되므로, <template>과 </template> 사이의 기술은 UI오브젝트정의정보에 대응한다. 여기서는, TV 리모콘 UI를 구성하는 UI정의파일(TV1_interface.uiml)로부터 UI 오브젝트 "Power" 및 "Channel Selection +"의 UI오브젝트정의정보의 일례를 도시한다. 밑줄친 부분들 가운데, 우선순위 속성은 우선순위정보(값이 0에 근접할수록 우선순위가 높음)를 나타내고, 관련 속성은 다른 UI 오브젝트들과의 관련성 정보이며, 크기 속성은 크기 정보를 나타낸다.
Figure pct00001

본 발명에 따르면, 복수의 UI를 합성하도록 선택된 복수의 UI 오브젝트들이 UI표시영역에 핏팅될 수 없는 경우에도, 상기 UI 오브젝트들이 소정의 조건들을 토대로 축소되어, 상기 UI표시영역에 핏팅될 수 있다. 이에 따라, UI 오브젝트들을 축소하여, 그 조합에 의해서만은 소정의 UI표시영역에 핏팅될 수 없는 복수의 UI 오브젝트들을 핏팅할 수 있게 된다. 또한, UI 오브젝트를 너무 많이 축소하는 것이 방지되므로, 조작성 및 가시성을 유지할 수 있게 한다.
1 휴대전화
10 제어유닛
11 어플리케이션프로그램실행유닛
12 유저인터페이스취득유닛
13 유저인터페이스생성유닛
14 조작장치검출유닛
20 터치패널
22 입력유닛
24 표시유닛
30 무선통신유닛
40 적외선통신유닛
50 메모리유닛
51 어플리케이션프로그램메모리영역
52 유저인터페이스정의파일메모리영역
53 개별유저인터페이스리소스메모리영역
54 공통유저인터페이스리소스메모리영역
55 관련어플리케이션프로그램정보메모리영역
56 합성유저인터페이스정의파일메모리영역
57 단말의존정보메모리영역
60 유저인터페이스합성처리유닛
61 유저인터페이스오브젝트정의정보해석유닛
62 유저인터페이스오브젝트선택처리유닛
63 합성유저인터페이스정의파일생성유닛
64 유저인터페이스리소스성형유닛
70 자동레이아웃처리유닛
71 배치설정유닛
72 배치가부판정유닛
73 축소오브젝트선택유닛
74 최소크기설정유닛
80 조작키유닛
90 스타일러스저장유닛

Claims (10)

  1. 어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
    상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
    상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛을 포함하여 이루어지고,
    상기 유저인터페이스생성유닛은,
    상기 메모리유닛에 저장된 유저인터페이스오브젝트정의정보의 선택을 행하는 단계; 선택된 유저인터페이스오브젝트들 모두가 상기 표시유닛의 소정의 표시 영역에 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 선택된 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 유저인터페이스생성장치.
  2. 제1항에 있어서,
    상기 유저인터페이스오브젝트의 타입, 상기 유저인터페이스오브젝트정의정보 및 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트의 표시 크기의 최소값을 설정하기 위한 최소크기설정유닛을 더 포함하여 이루어지고,
    상기 유저인터페이스생성유닛은, 상기 최소크기설정유닛에 의해 설정된 상기 최소값을 하한값으로서, 상기 크기 정보를 재기록하는 유저인터페이스생성장치.
  3. 제2항에 있어서,
    상기 최소크기설정유닛은, 상기 장치의존정보에 포함되는 최소폰트크기, 최소라인간격 및 입력장치정보 중 하나 이상을 토대로 상기 유저인터페이스오브젝트의 표시 크기의 최소값을 설정하는 유저인터페이스생성장치.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 유저인터페이스오브젝트정의정보를 토대로 상기 유저인터페이스오브젝트의 선택을 수신하기 위하여 선택화면을 생성하기 위한 선택화면생성유닛을 더 포함하여 이루어지고,
    상기 유저인터페이스생성유닛은, 상기 선택화면 상에서 선택된 유저인터페이스오브젝트의 선택 순서를 토대로 상기 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하여, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 유저인터페이스생성장치.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스를 구성하는 유저인터페이스오브젝트들 간의 우선순위를 나타내는 우선순위정보를 포함하고,
    상기 유저인터페이스생성유닛은, 상기 우선순위정보를 토대로 상기 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 유저인터페이스생성장치.
  6. 제2항 또는 제3항에 있어서,
    상기 유저인터페이스생성유닛은, 상기 최소크기설정유닛에 의해 설정된 최소값과 크기 정보 간의 비율을 토대로 상기 크기 정보를 재기록하도록 유저인터페이스오브젝트정의정보를 선택하고, 상기 선택된 유저인터페이스오브젝트정의정보의 크기 정보를 재기록하는 유저인터페이스생성장치.
  7. 어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
    상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
    상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛;
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛; 및
    상기 유저인터페이스오브젝트정의정보를 토대로 상기 유저인터페이스오브젝트의 선택을 수신하기 위하여 선택화면을 생성하기 위한 선택화면생성유닛을 포함하여 이루어지고,
    상기 선택화면생성유닛은, 복수의 유저인터페이스를 합성하도록 지시를 받는 경우, 상기 지시된 복수의 유저인터페이스 각각에 대응하여 상기 메모리유닛에 저장되는 유저인터페이스정의파일에 포함된 유저인터페이스오브젝트정의정보를 토대로 상기 선택화면을 생성하며,
    상기 유저인터페이스생성유닛은,
    상기 선택화면 상에서 선택된 유저인터페이스오브젝트들 모두가 상기 유저인터페이스오브젝트정의정보 및 상기 유저인터페이스를 표시할 수 있는 상기 표시유닛의 유저인터페이스표시영역을 토대로 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 상기 장치의존정보를 토대로 상기 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 선택된 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 유저인터페이스생성장치.
  8. 어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
    상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
    상기 유저인터페이스생성유닛에 의해 생성된 유저인터페이스를 표시하기 위한 표시유닛; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하는 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하고, 상기 유저인터페이스생성장치의 특성을 나타내는 장치의존정보도 저장하기 위한 메모리유닛을 포함하여 이루어지고,
    상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스를 구성하는 유저인터페이스오브젝트들 가운데 필수적인 유저인터페이스오브젝트에 대하여, 상기 유저인터페이스오브젝트가 필수적이라는 것을 나타내는 필수 정보를 포함하며,
    상기 유저인터페이스생성유닛은, 상기 필수적인 유저인터페이스오브젝트들 모두가 상기 필수 정보 및 상기 유저인터페이스를 표시할 수 있는 상기 표시유닛의 유저인터페이스표시영역을 토대로 표시될 수 있는지의 여부를 판정하는 단계; 표시가 불가능한 경우, 필수적인 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트의 표시 크기에 관한 크기 정보를 재기록하여, 상기 필수적인 유저인터페이스오브젝트들 모두가 표시될 수 있도록 하는 단계; 및 크기 정보를 재기록한 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하는 단계를 포함하여 이루어지는 유저인터페이스합성처리를 수행하는 유저인터페이스생성장치.
  9. 제1항, 제7항 및 제8항 중 어느 한 항에 있어서,
    상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하기 위하여, 상기 유저인터페이스를 통해, 상기 어플리케이션프로그램실행유닛에 지시하도록 입력을 수신하기 위한 조작입력수신유닛; 및
    상기 조작입력수신유닛에 대한 조작입력장치를 판정하기 위한 조작입력장치판정유닛을 더 포함하여 이루어지고,
    상기 유저인터페이스생성유닛은, 상기 조작입력장치판정유닛에 의해 판정된 상기 조작입력장치에 따라 상기 장치의존정보를 재기록하는 유저인터페이스생성장치.
  10. 제9항에 있어서,
    상기 유저인터페이스생성유닛은, 상기 합성유저인터페이스가 상기 표시유닛 상에 표시 중에 상기 조작입력장치판정유닛에 의해 상기 조작입력장치의 변경이 검출되는 경우, 상기 변경된 조작입력장치에 따라 장치의존정보를 재기록하고, 상기 재기록된 장치의존정보를 토대로 신규합성유저인터페이스를 생성하는 유저인터페이스생성장치.
KR20107022084A 2008-04-02 2009-03-26 유저인터페이스생성장치 KR20100114945A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP-P-2008-096604 2008-04-02
JP2008096604 2008-04-02
JP2008141257 2008-05-29
JPJP-P-2008-141257 2008-05-29

Publications (1)

Publication Number Publication Date
KR20100114945A true KR20100114945A (ko) 2010-10-26

Family

ID=41135408

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20107022084A KR20100114945A (ko) 2008-04-02 2009-03-26 유저인터페이스생성장치

Country Status (4)

Country Link
US (1) US9134972B2 (ko)
JP (1) JP5406176B2 (ko)
KR (1) KR20100114945A (ko)
WO (1) WO2009123030A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8954869B2 (en) * 2007-12-17 2015-02-10 International Business Machines Corporation Generating a front end graphical user interface for a plurality of text based commands
US20120209444A1 (en) * 2009-10-26 2012-08-16 Daegeun Seo Device and method for controlling electric product
JP5246802B2 (ja) * 2009-12-09 2013-07-24 Necアクセステクニカ株式会社 携帯端末装置及びそれに用いる画面表示方法並びにそのプログラム
JP5427592B2 (ja) * 2009-12-24 2014-02-26 株式会社バッファロー 機器制御システム、端末装置及び機器
JP5323260B2 (ja) * 2010-05-31 2013-10-23 パナソニック株式会社 制御端末装置及びリモート制御システム
US8661369B2 (en) 2010-06-17 2014-02-25 Lg Electronics Inc. Mobile terminal and method of controlling the same
JP5582012B2 (ja) * 2010-12-13 2014-09-03 株式会社リコー 画像形成装置、情報処理装置、カスタマイズプログラム及び記録媒体
US9323418B2 (en) * 2011-04-29 2016-04-26 The United States Of America As Represented By Secretary Of The Navy Method for analyzing GUI design affordances
US20120284631A1 (en) * 2011-05-02 2012-11-08 German Lancioni Methods to adapt user interfaces and input controls
JP6133575B2 (ja) * 2012-11-14 2017-05-24 Pioneer DJ株式会社 端末装置、端末装置の操作方法、プログラム
EP2954395B1 (en) * 2013-02-08 2019-04-10 Motorola Solutions, Inc. Method and apparatus for managing user interface elements on a touch-screen device
USD759063S1 (en) * 2013-02-14 2016-06-14 Healthmate International, LLC Display screen with graphical user interface for an electrotherapy device
USD785014S1 (en) * 2013-04-05 2017-04-25 Thales Avionics, Inc. Display screen or portion thereof with graphical user interface
JPWO2015045409A1 (ja) * 2013-09-26 2017-03-09 京セラ株式会社 機器制御装置、機器制御方法および制御システム
USD753669S1 (en) * 2013-10-10 2016-04-12 Healthmate International, LLC Display screen with graphical user interface
CN103645837B (zh) * 2013-11-27 2016-08-31 小米科技有限责任公司 放大显示字体的方法和装置
US20150153897A1 (en) * 2013-12-03 2015-06-04 Microsoft Corporation User interface adaptation from an input source identifier change
CN103870199B (zh) * 2014-03-31 2017-09-29 华为技术有限公司 手持设备上用户操作模式的识别方法及手持设备
WO2016018062A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Method and device for providing content
CN105487745A (zh) * 2014-12-23 2016-04-13 哈尔滨烁联科技有限公司 一种对led显示内容进行快速编辑的装置及方法
JP6572821B2 (ja) * 2016-04-28 2019-09-11 京セラドキュメントソリューションズ株式会社 情報処理装置及び情報処理プログラム
US10521502B2 (en) 2016-08-10 2019-12-31 International Business Machines Corporation Generating a user interface template by combining relevant components of the different user interface templates based on the action request by the user and the user context
CN107122179A (zh) * 2017-03-31 2017-09-01 阿里巴巴集团控股有限公司 语音的功能控制方法和装置
USD839900S1 (en) * 2017-11-06 2019-02-05 Shenzhen Valuelink E-Commerce Co., Ltd. Display screen with graphical user interface
JP7214542B2 (ja) * 2019-04-12 2023-01-30 フォルシアクラリオン・エレクトロニクス株式会社 表示制御装置、及び表示制御方法
CN110674618A (zh) * 2019-09-03 2020-01-10 北京达佳互联信息技术有限公司 一种内容展示方法、装置、设备及介质
CN113467605B (zh) 2020-03-31 2024-04-02 托比股份公司 用于对可视化数据进行预处理的方法、计算机程序产品和处理电路系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6211870B1 (en) 1997-07-07 2001-04-03 Combi/Mote Corp. Computer programmable remote control
JP2001036652A (ja) 1999-07-23 2001-02-09 Nippon Conlux Co Ltd 携帯電話機およびこれを利用した機器遠隔制御方法
JP2002278666A (ja) * 2001-03-22 2002-09-27 Toyoda Mach Works Ltd 設備制御用操作盤
JP3935856B2 (ja) * 2003-03-28 2007-06-27 インターナショナル・ビジネス・マシーンズ・コーポレーション レイアウトの定められた文書のダイジェストを作成するための情報処理装置、サーバ、方法及びプログラム
JP2006085218A (ja) 2004-09-14 2006-03-30 Clarion Co Ltd タッチパネル操作装置
JP4890944B2 (ja) 2005-05-30 2012-03-07 キヤノン株式会社 情報処理装置、表示制御処理方法及びプログラム
US20070038954A1 (en) * 2005-05-30 2007-02-15 Canon Kabushiki Kaisha Displaying apparatus of ui parts and displaying method of ui parts
US7954064B2 (en) * 2005-10-27 2011-05-31 Apple Inc. Multiple dashboards
US8587526B2 (en) * 2006-04-12 2013-11-19 N-Trig Ltd. Gesture recognition feedback for a dual mode digitizer
US9503562B2 (en) * 2008-03-19 2016-11-22 Universal Electronics Inc. System and method for appliance control via a personal communication or entertainment device

Also Published As

Publication number Publication date
WO2009123030A1 (ja) 2009-10-08
JPWO2009123030A1 (ja) 2011-07-28
US20110035688A1 (en) 2011-02-10
US9134972B2 (en) 2015-09-15
JP5406176B2 (ja) 2014-02-05

Similar Documents

Publication Publication Date Title
KR20100114945A (ko) 유저인터페이스생성장치
KR101450640B1 (ko) 유저인터페이스생성장치
JP5351165B2 (ja) ユーザインタフェース生成装置
US8739074B2 (en) User interface generation apparatus for generating user interfaces of mobile terminals
US9497313B2 (en) User interface generation apparatus
US8726158B2 (en) User interface generation apparatus
JP5200095B2 (ja) ユーザインタフェース生成装置
EP2506132A2 (en) Terminal device and program
KR20090107638A (ko) 위젯형 대기화면을 제어할 수 있는 이동 단말기 및 그를이용한 대기화면 제어 방법
WO2010052987A1 (ja) 情報処理装置及びプログラム
KR20070045739A (ko) 영상표시기기의 제어방법 및 그에 따른 영상표시기기

Legal Events

Date Code Title Description
A201 Request for examination
E601 Decision to refuse application