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

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

Info

Publication number
KR101201856B1
KR101201856B1 KR1020107018957A KR20107018957A KR101201856B1 KR 101201856 B1 KR101201856 B1 KR 101201856B1 KR 1020107018957 A KR1020107018957 A KR 1020107018957A KR 20107018957 A KR20107018957 A KR 20107018957A KR 101201856 B1 KR101201856 B1 KR 101201856B1
Authority
KR
South Korea
Prior art keywords
user interface
information
unit
interface object
definition
Prior art date
Application number
KR1020107018957A
Other languages
English (en)
Other versions
KR20100103723A (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 KR20100103723A publication Critical patent/KR20100103723A/ko
Application granted granted Critical
Publication of KR101201856B1 publication Critical patent/KR101201856B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • 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
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/247Telephone sets including user guidance or feature selection means facilitating their use
    • 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/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • 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/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/22Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector

Abstract

유저인터페이스생성장치(1)에는, 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛(16), 상기 유저인터페이스생성유닛(16)에 의해 생성되는 유저인터페이스를 표시하기 위한 표시유닛(24), 및 상기 유저인터페이스의 구성요소인 오브젝트를 정의하기 위한 오브젝트정의정보를 포함하는 정의파일을 저장하기 위한 메모리유닛(50)이 제공된다. 복수의 유저인터페이스를 생성하도록 지시되는 경우, 상기 유저인터페이스생성유닛(16)은, 상기 메모리유닛(50)에 저장된 정의파일에 포함된 오브젝트정의정보로부터 선택을 행하고, 선택된 상기 오브젝트정의정보를 토대로 합성유저인터페이스를 생성하기 위한 처리를 실행하는 것을 특징으로 한다.

Description

유저인터페이스생성장치{USER INTERFACE GENERATION DEVICE}
본 출원은 2008년 2월 27일에 출원된 일본특허출원 제2008-45726호 및 2008년 3월 28일에 출원된 일본특허출원 제2008-88248호의 우선권을 주장하며, 그 전문이 본 명세서에 참조를 위해 포함된다.
본 발명은 유저인터페이스생성장치에 관한 것으로, 특히 휴대단말의 유저인터페이스를 생성하기 위한 유저인터페이스생성장치에 관한 것이다.
휴대전화로 대표되는 휴대단말의 유저인터페이스(이하, 간단히 축약해서 "UI"라고 함)는 사용자가 휴대단말을 조작할 때 조작성에 큰 영향을 준다. 이에 따라, 휴대단말의 UI는 휴대단말을 구입하고자 하는 사용자의 중요한 요소 중 하나가 된다.
최근 휴대단말의 현저한 다기능화로 인하여, 애니메이션 및 3D를 이용하는 픽처레스크(picturesque) 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 등이다.
또한, 최근에는 단말본체의 다기능화와 고성능화로 인하여, 동시에 복수의 태스크를 병행하여 실행하기 위한 멀티-태스크 처리를 행할 수 있는 OS(Operating System)를 탑재한 휴대단말이 증가하는 추세이다. 더욱이, 병행하여 동시에 처리되는 복수의 태스크 각각을 개별적인 표시 영역(윈도우)에 할당하여 표시하는 멀티플렉스 출력 스크린에 대한 멀티-윈도우 기능을 갖는 휴대단말이 폭넓게 사용되고 있다.
첨언하면, 일본특허공개 제2001-36652호는 적외선통신유닛을 구비한 휴대전화단말을 이용하는 적외선 통신에 의하여 복수의 외부 기기들의 원격 조종(제어)의 방식을 개시하고 있다. 일본특허공개 제2001-36652호에 기재된 휴대전화단말에는 외부 기기들과의 통신을 위한 외부제어유닛이 제공된다. 이러한 휴대전화단말은, 외부기기들로부터 수신되거나 전화선을 통해 취득한 외부기기들을 원격 제어하기 위한 외부기기제어정보를 저장하고, 상기 외부기기제어정보를 토대로 외부기기들을 원격 제어한다. 즉, 상기 단말에 포함된 어플리케이션프로그램(이하, 간단히 "어플리케이션"이라고 함)을 변경함으로써, 통상적으로 휴대전화로 사용되는 단말본체가 복수의 외부기기들을 원격 제어하기 위한 원격제어장치(이하, 간단히 "리모콘"이라고 함)로 사용될 수 있다.
일본특허공개 제2001-36652호에 기재된 휴대전화단말에 따르면, 단일 휴대전화단말이 외부기기들에 대응하는 각각의 외부기기제어정보를 토대로 복수의 외부기기들을 원격 제어할 수 있다. 그러므로, 복수의 외부기기들에 대한 개별적인 리모콘 단말들을 별도로 사용하기 위해 사용자가 번거로운 조작을 행할 필요가 없어, 사용자의 편의성을 향상시킨다.
이러한 원격으로 제어될 복수의 외부기기들간의 원격 절환을 위한 리모콘 기능들이 상술된 멀티-태스크 처리가 가능한 휴대단말에 구현된다면, 또다른 리모콘 어플리케이션을 개시하기 위하여 리모콘 어플리케이션을 반드시 종료시킬 필요가 없게 된다. 즉, 복수의 어플리케이션을 단일 단말 상에서 개시하여, 그들 가운데 시기적절하게 원하는 리모콘 어플리케이션을 사용할 수 있게 된다.
하지만, 복수의 어플리케이션을 빈번하게 절환하기 위한 조작들은 번거롭다.
상술된 멀티-윈도우 기능이 휴대단말에 내장된다면, 복수의 어플리케이션을 조작하기 위한 UI가 복수의 윈도우 상에 각각 표시될 수 있다. 이에 따라, 복수의 어플리케이션들간의 절환없이 단일 스크린 상에서 어플리케이션을 동시에 사용할 수 있게 된다.
도 14(A)에 도시된 바와 같이 TV 리모콘 단말 단독에 대해서는, 예컨대 도 14(B)에 도시된 바와 같이, TV 리모콘 단말의 조작성을 유지하면서도, 예컨대 TV 리모콘 어플리케이션의 UI가 휴대단말(100)의 터치패널(200) 상에 재생될 수도 있다. 이와 유사하게, 도 14(C)에 도시된 에어컨디셔너 리모콘 단말 단독에 대해서는, 도 14(D)에 도시된 바와 같이, 에어컨디셔너 리모콘 단말의 조작성을 유지하면서도, 에어컨디셔너 리모콘 어플리케이션의 UI가 휴대단말(100)의 터치패널(200) 상에 재생될 수도 있다. 더욱이, 어플리케이션의 각각의 UI가 XML을 베이시스로 하여 기술된다면, 상기 어플리케이션이 상이한 제조사의 또다른 단말에 이식되더라도, 단지 UI를 기술하는 XML 파일을 처리하여 또다른 단말에서 거의 동일한 UI가 용이하게 재생될 수 있다.
하지만, 상기 예시에서 TV를 보면서, 에어컨디셔너를 조작하기 위해서는, TV와 에어컨디셔너가 모두 빈번한 조작을 필요로 하므로, TV 및 에어컨디셔너 양자 모두에 대한 어플리케이션들이 멀티-태스크 기능과 멀티-윈도우 기능을 이용하여 표시유닛의 표시 영역을 공유하여 표시될 수도 있다. 이러한 경우, 각각의 어플리케이션은 단독으로 사용될 것으로 가정하는 UI를 구비하므로, UI를 동시에 표시함으로써 도 15(A) 내지 도 15(D)에 도시된 상태들을 초래한다.
도 15(A) 내지 도 15(D)는 두 어플리케이션의 UI가 멀티-태스크 기능과 멀티-윈도우 기능을 갖는 휴대단말(100) 상에 동시에 표시될 때의 상태들을 예시한 도면들이다. 도면들에 도시된 예시에서는, 각 UI의 일부분만이 표시되는데, 그 이유는 터치패널(200)의 표시유닛을 상하로 분리시키는 각각의 윈도우에서 각각의 UI가 그대로 재생되기 때문이다. 스크린 너머로 부분 조작을 가능하게 하기 위하여 각각의 윈도우의 우측에 스크롤바가 제공된다.
예컨대, 도 15(A)에 도시된 상태에서 TV의 볼륨을 조정하기 위해서는, 사용자가 도 15(B)에 도시된 바와 같이, TV 리모콘 UI의 표시된 영역을 이동시키기 위하여 TV 리모콘 UI의 윈도우에 스크롤바를 이동시킬 필요가 있다. 이와 유사하게, 예컨대, 도 15(C)에 도시된 상태에서 에어컨디셔너의 온도를 조정하기 위해서는, 사용자가 도 15(D)에 도시된 바와 같이, 에어컨디셔너 리모콘 UI의 표시된 영역을 이동시키기 위하여 에어컨디셔너 리모콘 UI의 윈도우에 스크롤바를 이동시킬 필요가 있다. 더욱이, 멀티-윈도우 기능을 이용하여 복수의 어플리케이션을 개시할 때, UI가 서로 중첩되어 표시된다면, 입력 개시 전에 입력될 윈도우를 선택하여 활성화시킬 필요가 있다.
특히 휴대단말의 단말본체는 컴팩트하게 설계되므로, 터치패널로 이루어진 UI 또는 물리적인 키로 이루어진 UI에 의해 사용가능한 영역이 매우 제한되게 된다. 그러므로, 리모콘과 같은 어플리케이션의 UI를 구성하는 조작유닛이 일반적으로 최소 사이즈로 설계된다. 이에 따라, 복수의 어플리케이션의 UI를 동시에 표시하기 위하여 각각의 UI를 전체적으로 축소하는 것은 비현실적이다.
상술된 바와 같이, 전체 스크린을 점유하도록 설계된 UI가 멀티-윈도우 기능을 이용하여 표시된다면, UI의 조작성이 악화된다.
이러한 상황들을 고려하여 본 발명의 목적은 각각의 유저인터페이스의 조작성을 유지하면서도, 복수의 어플리케이션프로그램의 유저인터페이스를 동시에 성취할 수 있는 유저인터페이스생성장치를 제공하는 것이다.
상기 목적을 달성하기 위하여, 제1형태에 따른 유저인터페이스생성장치는, 어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
상기 유저인터페이스생성유닛에 의해 생성되는 유저인터페이스를 표시하기 위한 표시유닛; 및
상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하기 위한 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하기 위한 메모리유닛을 포함하고,
상기 유저인터페이스생성유닛은, 복수의 유저인터페이스를 생성하도록 지시되는 경우, 지시된 복수의 유저인터페이스 각각에 대응하여 상기 메모리유닛에 저장된 유저인터페이스정의파일에 포함된 유저인터페이스오브젝트정의정보로부터 선택을 행하여, 선택된 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하도록 유저인터페이스합성처리를 실행하는 것을 특징으로 한다.
본 발명의 제2형태는, 제1형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스오브젝트정의정보는 상기 유저인터페이스오브젝트와 상기 유저인터페이스오브젝트를 포함하는 유저인터페이스에 포함된 또다른 유저인터페이스오브젝트 간의 관계를 나타내는 유저인터페이스오브젝트속성정보를 포함하고,
상기 유저인터페이스생성유닛은, 복수의 유저인터페이스를 생성하도록 지시되는 경우, 상기 유저인터페이스를 표시하기 위한 상기 표시유닛의 소정의 표시 영역 및 상기 유저인터페이스오브젝트속성정보를 토대로, 상기 유저인터페이스오브젝트정의정보로부터 선택을 행하는 것을 특징으로 한다.
본 발명의 제3형태는, 제2형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스오브젝트정의정보는 상기 유저인터페이스를 구성하는 각각의 유저인터페이스오브젝트가 유효인지 또는 무효인 지의 여부를 나타내는 유저인터페이스오브젝트속성정보를 더 포함하고,
상기 유저인터페이스생성유닛은, 복수의 유저인터페이스를 생성하도록 지시되는 경우, 상기 유저인터페이스를 표시하기 위한 상기 표시유닛의 소정의 표시 영역 및 상기 유저인터페이스오브젝트속성정보를 토대로, 상기 유저인터페이스오브젝트정의정보로부터 선택을 행하는 것을 특징으로 한다.
본 발명의 제4형태는, 제1형태 내지 제3형태 중 어느 한 형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스정의파일은 상기 유저인터페이스정의파일을 토대로 생성되는 유저인터페이스를 식별하기 위한 식별정보를 포함하고,
상기 유저인터페이스생성유닛은 상기 식별정보를 토대로, 선택된 상기 유저인터페이스오브젝트정의정보를 처리하는 것을 특징으로 한다.
본 발명의 제5형태는, 제1형태 내지 제4형태 중 어느 한 형태에 따른 유저인터페이스생성장치에 있어서,
상기 유저인터페이스오브젝트정의정보는 상기 유저인터페이스오브젝트에 대한 이벤트 발생 시에 실행될 동작 내용들을 나타내는 액션정보를 포함하고,
상기 액션정보는 또다른 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트속성정보의 변경에 관한 정보를 포함하며,
상기 유저인터페이스생성유닛은, 상기 이벤트가 상기 합성유저인터페이스 상에 발생되고, 상기 유저인터페이스오브젝트속성정보가, 상기 이벤트의 발생을 수신한 상기 유저인터페이스오브젝트의 유저인터페이스오브젝트정의정보에 포함된 액션정보를 토대로 변경되는 경우, 신규 합성유저인터페이스를 생성하기 위하여, 변경된 상기 유저인터페이스오브젝트속성정보를 토대로 유저인터페이스합성처리를 실행하는 것을 특징으로 한다.
본 발명에 따르면, 각각의 유저인터페이스의 조작성을 유지하면서도, 복수의 어플리케이션프로그램의 유저인터페이스를 동시에 성취할 수 있는 유저인터페이스생성장치를 제공할 수 있다.
도 1은 제1실시예에 따른 유저인터페이스생성장치의 개략적인 구성을 예시한 블럭도;
도 2는 제1실시예에 따른, 유저인터페이스오브젝트속성정보인 우선순위를 예시한 도면;
도 3은 제1실시예에 따른 유저인터페이스생성유닛에 의한 전체 처리를 예시한 흐름도;
도 4는 도 3에 도시된 유저인터페이스합성처리를 추가로 예시한 흐름도;
도 5는 도 3에 도시된 유저인터페이스생성처리를 추가로 예시한 흐름도;
도 6은 제1실시예에 따라 두 유저인터페이스가 합성되는 일례를 예시한 도면;
도 7은 제2실시예에 따른, 유저인터페이스오브젝트속성정보인 유저인터페이스식별정보를 이용하는 유저인터페이스의 합성을 예시한 도면;
도 8은 제2실시예에 따른 유저인터페이스합성처리를 예시한 흐름도;
도 9는 제2실시예에 따라 두 유저인터페이스가 합성되는 일례를 예시한 도면;
도 10은 유저인터페이스오브젝트속성정보인 유저인터페이스오브젝트가 제3실시예에 따라 유효/무효인 지의 여부를 나타내는 정보를 이용하여 유저인터페이스의 합성을 예시한 도면;
도 11은 제3실시예에 따른 유저인터페이스합성처리를 예시한 흐름도;
도 12는 제3실시예에 따른 갱신된 유저인터페이스의 예시들을 도시한 도면;
도 13은 제3실시예에 따른 유저인터페이스를 갱신하기 위한 속성정보를 예시한 도면;
도 14는 종래의 휴대단말의 유저인터페이스에 의해 재생되는 원격 제어장치들을 예시한 도면; 및
도 15는 종래의 휴대단말에 의한 두 유저인터페이스의 합성의 예시들을 도시한 도면이다.
이하, 본 발명의 실시예들을 첨부 도면들을 참조하여 설명하기로 한다. 후술하는 각각의 실시예에서는, 각종 외부장치들을 원격 제어하기 위한 원격제어기능들을 갖는 휴대전화가 본 발명에 따른 유저인터페이스(이하, "UI"라고 함)의 일례로 사용된다. 하지만, 본 발명에 따른 UI생성장치가 상기 휴대전화로 제한되는 것은 아니며, 예컨대 랩탑 컴퓨터, PDA 등과 같은 여하한의 휴대단말에도 적용가능하다. 또한, 상기 UI생성장치는 그것이 휴대단말이 아니더라도, 그것을 탑재할 필요가 있는 장치에도 적용가능하다. 본 발명은 주로 동시에 사용될 복수의 UI를 합성하고자 한다는 점에 유의한다. 그러므로, 각각의 UI에 의해 지시되는 어플리케이션이 원격제어기능으로 제한되는 것은 아니며, 본 발명은 여러 종류의 어플리케이션에도 적용가능하다.
(제1실시예)
도 1은 본 발명의 제1실시예에 따른 UI생성장치의 개략적인 구성을 예시한 블럭도이다.
휴대전화(1)는 전반적인 조작을 제어하기 위한 제어유닛(10) 및 사용자에 의한 입력을 수신하고 각각의 어플리케이션에 따라 입력 등의 결과를 표시하기 위한 터치패널(20)을 포함한다. 상기 터치패널(20)은 사용자에 의한 입력을 받기 위해 매트릭스 스위치 등으로 구성되고, 액정디스플레이 등으로 구성된 표시유닛(24)의 최상부에 배치된 입력유닛(22)을 구비한다. 상기 표시유닛(24)은 어플리케이션프로그램에 따라 표시하고, 사용자에 의한 입력을 수신하기 위한 UI의 이미지를 UI표시영역에 표시하기도 한다.
또한, 휴대전화(1)는 기지국(도시되지 않음)과 음성통화, 이메일 데이터 등과 같은 각종 정보를 송수신하기 위한 무선통신유닛(30) 및 적외선을 이용하여 각종 외부기기(도시되지 않음)들과 통신하기 위한 적외선통신유닛(40)을 포함한다. 상기 휴대전화(1)는, 인터넷, 무선 등을 거쳐, 무선통신유닛(30)을 이용하여 외부기기와 각종 데이터를 송수신한다.
상기 휴대전화(1)는 입력 정보 및 각종 어플리케이션을 저장하기 위한 그리고 워크메모리로서의 기능도 하기 위한 메모리유닛(50)을 더 포함한다. 상기 메모리유닛(50)은 어플리케이션메모리영역(52), UI정의파일메모리영역(54), 개별UI리소스메모리영역(56), 및 공통UI리소스메모리영역(58)을 포함한다. 상기 어플리케이션메모리영역(52)은 각종 어플리케이션을 저장한다. 상기 UI정의파일메모리영역(54)은 각각의 UI 전체를 생성하기 위한 생성규칙의 시퀀스를 정의하는 UI정의파일을 저장한다. 상기 개별UI리소스메모리영역(56)은 각각의 어플리케이션에 고유한 UI를 생성하는데 사용되는 이미지 데이터 및 문자 스트링(text) 데이터와 같은 개별적인 UI 리소스들을 저장한다. 상기 공통UI리소스메모리영역(58)은 각각의 어플리케이션에 고유한 개별적인 UI 리소스 이외의, 단말에 의해 사용되는 UI에 의해 공통으로 사용되는 이미지 데이터 및 폰트 데이터와 같은 공통 UI 리소스들을 저장한다. UI가 실제로 생성되는 경우, 개별UI리소스메모리영역(56) 및 공통UI리소스메모리영역(58)에 저장된 이미지 데이터와 텍스트 데이터는 터치패널(20)의 표시유닛(24) 상에 표시된다.
상기 제어유닛(10)은 어플리케이션실행유닛(12), UI취득유닛(14) 및 UI생성유닛(16)을 포함한다. 상기 어플리케이션실행유닛(12)은, 메모리유닛(50)의 어플리케이션메모리영역(52)에 저장된 각종 어플리케이션을 실행할 뿐만 아니라 이러한 실행을 제어한다. 또한, 상기 어플리케이션실행유닛(12)은, 상기 어플리케이션메모리영역(52)에 저장된 어플리케이션에 대응하는 UI에 대한 입력을 토대로, 상기 입력에 대응하는 어플리케이션의 기능들을 실행한다. 상기 UI취득유닛(14)은 무선통신유닛(30)을 통해 단말 외부로부터 UI정의파일(XML 파일 등) 및 리소스(이미지 데이터 등)를 취득한다. 상기 UI생성유닛(16)은 UI정의파일에 대한 파싱 처리 및 DOM(Document Object Model) 처리를 행하고, 실제로 사용될 UI를 생성한다. 상기 UI생성유닛(16)은, XML 형태로 기술된 UI의 정보를 XML 엔진을 이용하여 번역하고, 상기 UI정의파일을 토대로 생성된 UI를 상기 터치패널(20)의 표시유닛(24) 상에 표시한다.
또한, 상기 UI생성유닛(16)은 UI합성처리유닛(18)을 포함한다. 상기 UI합성처리유닛(18)은, 복수의 UI를 합성하도록 지시되는 경우, 복수의 지정된 UI정의파일에 따라 UI를 합성한다.
다음으로, 본 실시예에 따른 UI정의파일메모리영역(54)에 저장된 UI정의파일을 추가로 설명한다.
상기 메모리유닛(50)의 UI정의파일메모리영역(54)은 상기 어플리케이션메모리영역(52)에 저장된 어플리케이션의 실행을 위하여 필요한 UI의 어플리케이션의 동작 및 명세를 정의하는 UI정의파일을 저장한다. 동일한 UI가 상이한 어플리케이션에 의해 사용될 수도 있지만, 여기서는 설명의 편의상 각각의 어플리케이션에 의해 사용되는 UI가 서로 상이하다고 가정하고, 상기 어플리케이션에 대응하는 UI정의파일이 저장된다고 가정한다. 예를 들어, TV 리모콘 UI정의파일은, 휴대전화(1)를 이용하여 외부기기인 TV 세트(도시되지 않음)를 원격 제어하기 위한 TV 리모콘 어플리케이션에 대응하여, 상기 UI정의파일메모리영역(54)에 저장된다. 이와 유사하게, 에어컨디셔너 리모콘 UI정의파일은, 휴대전화(1)를 이용하여 또다른 외부기기인 에어컨디셔너(도시되지 않음)를 원격 제어하기 위한 에어컨디셔너 리모콘 어플리케이션에 대응하여, 상기 UI정의파일메모리영역(54)에 저장된다.
본 실시예에서는, XML 언어에 기초한 UIML(User Interface Markup Language) 형태가 UI정의파일을 기술하기 위한 언어의 일례로 사용된다. UIML 형태로 기술된 정의에 따르면, 상기 UI생성유닛(16)은 휴대전화(1)의 터치패널(20)의 표시유닛(24) 상에 UI를 표시하고, 상기 어플리케이션실행유닛(12)은 사용자에 의해 입력유닛(22)에 대한 입력을 토대로 처리를 실행한다.
본 실시예에 따른 UI정의파일은 상기 표시유닛(24) 상에 도시될 UI 오브젝트를 정의하는 UI오브젝트정의정보를 포함한다. 상기 UI오브젝트정의정보는, 상기 표시유닛(24) 상에 표시될 UI의 구성요소인 키 및 버튼과 같은 UI 오브젝트를 도시하기 위한 이미지 및 텍스트를 정의하는 정보이고, UI 오브젝트에 대한 입력이 있는 경우(실제로는, UI 오브젝트에 대응하는 입력유닛(22)의 일부분으로의 입력이 있는 경우)의 동작을 정의하는 정보이다.
본 실시예에 따르면, UI 오브젝트의 위치에 대응하는 입력유닛(22)에 대한 입력이 있을 때의 동작을 정의하는 정보로서, 각각의 UI 오브젝트에 이벤트가 발생되는 경우 각각의 어플리케이션실행유닛에 의해 실행될 동작의 내용들을 나타내는 액션정보가 UI오브젝트정의정보에 포함된다. 예를 들어, TV 리모콘 UI 상의 "Power"의 UI 오브젝트의 위치에 대응하는 입력유닛(22)으로의 입력에 대한 이벤트가 발생되는 경우, 상기 액션정보는 외부기기로서 TV의 전원을 턴 온하거나 턴 오프시키기 위해 적외선 신호를 송신하도록 TV 리모콘 어플리케이션에 대한 지시를 내리는 것을 정의한다.
더욱이, 상기 UI오브젝트정의정보는, 복수의 UI를 합성하는데 사용되는 각각의 UI 오브젝트에 관한 정보인 UI오브젝트속성정보도 포함한다. 본 실시예에 따르면, UI오브젝트속성정보로서, 복수의 UI의 합성 시에 각각의 오브젝트를 표시하기 위한 우선순위가, 사전에 미리 각각의 UI 오브젝트와 기타 UI 오브젝트들 간의 관계를 토대로 정의된다.
도 2는 본 실시예에 따른, UI오브젝트속성정보인 우선순위에 관한 정보를 예시한 도면이다.
도 2(A)는 TV 리모콘 어플리케이션만을 개시하고, TV 리모콘 UI정의파일을 토대로 터치패널(20) 상에 TV 리모콘 UI를 표시하는 휴대전화(1)를 보여준다. 도면에서, 쇄선들은 개념적으로 터치패널(20) 상의 UI 표시영역을 각각의 UI오브젝트속성정보에 대응하는 작은 영역들로 구분하고, 작은 영역들에 대응하는 각각의 UI오브젝트정보는 우측에 목록화되어 있다. 단일 UI로서 복수의 UI 오브젝트를 다루기 위한 정의(UI식별정보)가 인터페이스의 태그로 표시된다. 값 "TV_interface"에 의하여, 그것이 TV1의 리모콘의 UI인 것을 특정할 수도 있다. 도 2(A)에 도시된 예시에서는, TV1의 리모콘의 UI를 이용하여 TV1로 식별된 TV 세트를 원격으로 동작(제어)시킬 수 있게 된다.
본 실시예에 따르면, UI오브젝트속성정보로서, 상술된 작은 영역 각각의 UI 오브젝트의 우선순위가, 사전에 미리 우선순위의 값으로 정의된다. 도 2에 도시된 예시에서는, 우선순위값이 0인 UI오브젝트가 필수 오브젝트이고, 우선순위값이 1인 UI 오브젝트가 중요한 오브젝트이다. 우선순위의 값이 증가함에 따라, UI 오브젝트가 덜 우선적으로 처리된다. 즉, 예컨대 도 2(A)에 작은 영역 (1)에 도시된 "Power" 키가 필수 오브젝트이므로, 그 우선순위값은 0으로 설정된다. 작은 영역 (2) 및 (3)의 채널선택키와 작은 영역 (4) 및 (5)의 볼륨조정키는 중요한 키이므로, 그 우선순위값들이 1로 설정된다. 하지만, 작은 영역 (6)의 숫자 키패드는 작은 영역 (2) 및 (3)의 채널선택키로 대체될 수도 있으므로, 그 우선순위값이 우선순위가 낮은 3이다.
이와 유사하게, 도 2(B)는 터치패널(20) 상에 에어컨디셔너 리모콘 UI만을 표시하는 휴대전화(1)를 보여준다. 에어컨디셔너 리모콘 UI에 대해서는, 예컨대 작은 영역 (1)에 도시된 "Preset Temperature" 및 작은 영역 (2)에 도시된 "Power" 키가 필수이므로, 그 우선순위값들이 0으로 설정된다. 작은 영역 (3) 및 (4)의 온도 상하 선택키는 중요한 키들이므로, 그 우선순위값들이 1로 설정된다. 하지만, 작은 영역 (5) 및 (6)의 풍향 + 및 - 키들은 다른 키들보다 덜 중요하므로, 그 우선순위값들이 5이다. 또한, 작은 영역 (7)의 모드키와 작은 영역 (8)의 메뉴키는 종종 사용되지 않기 때문에, 그 우선순위값이 2로 설정된다. 그들의 오브젝트들이 단일의 에어컨디셔너(1)의 리모콘 UI로서 완전히 식별되도록, 인터페이스의 태그의 값이 "AIR1_interface" 이 된다. 도 2(B)에 도시된 예시에서는, 에어컨디셔너(1)의 리모콘의 UI를 이용하여 AIR1로서 식별된 에어컨디셔너를 원격으로 조작(제어)할 수 있게 된다.
상술된 바와 같이, 본 실시예에 따르면, 각각의 UI 오브젝트와 기타 UI 오브젝트들 간의 관계를 토대로 정의된 우선순위정보(priority값)가 각각의 UI정의파일의 UI오브젝트정의정보에 UI오브젝트속성정보로서 저장된다.
다음으로, 본 실시예에 따른 복수의 어플리케이션의 UI를 합성하기 위한 동작을 도 3 내지 도 5에 도시된 흐름도를 참조하여 설명한다.
도 3은 본 실시예에 따른 UI생성유닛(16)의 전체 처리를 예시한 흐름도이다. 우선, UI를 생성하기 위한 처리가 사용자에 의해 입력유닛(22)으로의 입력 등을 토대로 개시되면, 상기 UI정의파일(XML 파일)이 UI를 제공하는 어플리케이션으로부터 지정된다(단계 S11). UI 생성 처리를 트리거링하기 위한 조작은, UI를 이용하여 어플리케이션을 개시하기 위한 사용자에 의한 조작 또는 또다른 어플리케이션이 이미 사용자에 의해 실행될 때 UI를 이용하는 어플리케이션을 추가적으로 개시하기 위한 사용자에 의한 조작일 수도 있다.
다음으로, UI생성유닛(16)은 지정된 UI정의파일의 수가 1개 이상인 지의 여부를 판정한다(단계 S12). 상기 지정된 UI정의파일의 개수가 1개인 것으로 판정된다면, 상기 UI생성유닛(16)은 상기 어플리케이션이 복수의 UI를 합성하는 것을 요구하고 있지 않다고 판정하고, 상기 지정된 단일 UI정의파일 상에서 XML 파싱 처리(단계 S13) 및 DOM 처리(단계 S14)를 수행한다.
상기 지정된 UI정의파일의 수가 상술된 바와 같이 단 하나라면, 그 이후의 처리는 종래의 UI 생성 처리와 동일하다. 즉, 파싱 처리와 DOM 처리가 수행되는 UI정의파일을 토대로, 상기 UI생성유닛(16)이 UI생성처리를 수행한다(단계 S15). 이하, 단계 S15에서의 UI생성처리를 설명하기로 한다. 다음으로, 상기 UI생성처리에 의해 생성되는 XML 파일의 UI를 토대로, 상기 어플리케이션실행유닛(12)이 터치패널(20)의 표시유닛(24)의 UI 표시영역에 UI를 표시하기 위한 처리를 실행한다(단계 S16).
이에 따라, 휴대전화(1)가 단 하나의 어플리케이션의 실행에 따라 상기 표시유닛(24) 상에 단 하나의 UI를 표시할 수도 있다. 예를 들어, TV 리모콘용 UI정의파일이 TV 리모콘 어플리케이션의 개시에 의해 지정된다면, 상기 UI는 도 2(A)에 도시된 바와 같이 표시된다. 한편, 에어컨디셔너 리모콘용 UI정의파일이 에어컨디셔너 리모콘 어플리케이션의 개시에 의해 지정된다면, 상기 UI는 도 2(B)에 도시된 바와 같이 표시된다.
이와는 대조적으로, 지정된 파일의 수가 단계 S12에서 하나보다 많다면, 상기 UI생성유닛(16)은 어플리케이션이 복수의 UI를 합성하는 것을 요구하고 있다고 판정하고, 각각의 XML 파일에 대한 XML 파싱 처리(단계 S17) 및 DOM 처리(단계 S18)를 수행한다. 단계 S19에서, 상기 UI생성유닛(16)은 상기 모든 UI정의파일에 대한 파싱 처리와 DOM 처리가 완료되는 지의 여부를 판정한다. 그들이 완료되지 않았다면, 상기 UI생성유닛(16)은 단계 S17로 되돌아간다.
모든 UI정의파일에 대한 파싱 처리와 DOM 처리가 단계 S19에서 완료된 경우, 상기 UI합성처리유닛(18)은 파싱 처리와 DOM 처리가 완료되는 복수의 UI를 합성한다(단계 S20). 이하, 상기 단계 S20에서의 UI합성처리를 후술하기로 한다.
후속해서, 상기 UI생성유닛(16)은 단계 S20에서 합성된 합성UI정의파일을 토대로 합성 UI를 생성하기 위한 처리를 실행한다(단계 S15). 다음으로, 상기 어플리케이션실행유닛(12)은 터치패널(20)의 표시유닛(24)의 UI표시영역에서 생성되는 합성 UI를 표시하기 위한 처리를 실행하고(단계 S16), 상기 UI를 생성하기 위한 전체 처리를 종료한다.
다음으로, 도 3에 도시된 단계 S20에서의 UI합성처리를 도 4에 도시된 흐름도를 참조하여 추가로 설명한다.
UI합성처리가 개시되면, 상기 UI합성처리유닛(18)은 파싱 처리와 DOM 처리가 완료되는 복수의 UI의 DOM 노드를 구성하는 모든 UI 오브젝트들을 추출하여, 각각의 UI 오브젝트의 속성정보를 해석한다(단계 S31). 본 실시예에 따르면, 각각의 UI 오브젝트의 우선순위정보(priority)가 각각의 UI 오브젝트의 속성정보로서 해석된다.
다음으로, 상기 UI합성처리유닛(18)은 우선순위정보의 우선순위가 최상위(priority="0")인 모든 UI 오브젝트, 즉 표시가 필수인 UI 오브젝트를 추출하고(단계 S32), 추출된 UI 오브젝트들과 함께 임시 레이아웃 처리를 실행한다(단계 S33). 상기 임시 레이아웃 처리는, 표시유닛(24) 상에 UI 오브젝트를 실제로 표시하지 않고도, UI합성처리유닛(18) 내에서 산술 처리에 의해, 표시가 필수인 UI 오브젝트를 임시 레이아웃으로서 배치한다.
임시 레이아웃 처리 완료 후, 상기 UI합성처리유닛(18)은, UI 오브젝트가 임시 레이아웃으로서 배치되는 전체 UI의 표시가 상기 표시유닛(24)에 UI를 표시하기 위한 UI 표시영역에 적합한 지의 여부를 판정한다(단계 S34). 판정 결과로서 UI의 표시가 UI 표시영역에 맞지 않는 것으로 판정된다면, 복수의 UI가 합성 UI로서 표시될 수 없다. 그러므로, 상기 UI합성처리유닛(18)은 표시유닛(24) 상에, 복수의 UI의 합성 처리가 실패한 것으로 표시하고(단계 S35), UI 합성 처리를 종료한다. 이는 필수 오브젝트 조차도 표시하기에, 너무 많은 UI가 동일한 스크린 상에서 합성되는 것을 시도할 때를 위한 조치이다.
단계 S34에서, UI 오브젝트가 임시 레이아웃으로 배치되는 전체 UI의 표시가 상기 표시유닛(24)에서의 UI 표시 영역에 적합한 것으로 판정된다면, 상기 UI합성처리유닛(18)은 우선순위가 최상위인(표시가 필수인) UI 오브젝트를 채택하도록 확정한다(단계 S36).
다음으로, 상기 UI합성처리유닛(18)은, 해석된 우선순위정보를 토대로, 우선순위가 차상위인 모든 UI 오브젝트를 추출한다(단계 S37). 예를 들어, 우선순위 = "0"인 UI 오브젝트가 추출되어 앞서 처리된다면, 우선순위 = "1"인 UI 오브젝트가 이제 추출된다. 또한, 상기 UI합성처리유닛(18)은 추출된 UI 오브젝트와 단계 S36에서 확정된 우선순위가 최상위인 UI 오브젝트를 합성하고, 임시 레이아웃 처리를 수행한다(단계 S38). 임시 레이아웃 처리 완료 후, 상기 UI합성처리유닛(18)은 임시 레이아웃의 UI 오브젝트의 표시가 상기 표시유닛(24)의 UI 표시영역에 적합한 지의 여부를 판정한다(단계 S39).
단계 S39에서의 판정 결과로서 상기 임시 레이아웃의 UI 오브젝트의 표시가 상기 표시유닛(24)의 UI 표시영역에 적합한 것으로 판정된다면, 상기 UI합성처리유닛(18)은 이들 UI 오브젝트들을 채택하는 것을 확정한다(단계 S40).
후속해서, 상기 UI합성처리유닛(18)은, 그 우선순위정보가 해석되는 것이 종료되지 않은 잔여 UI 오브젝트들의 수가 0인 지의 여부를 판정한다(단계 S41). 우선순위정보가 해석되는 것이 종료되지 않은 잔여 UI 오브젝트의 수가 0이 아니라면, 즉 여전히 해석되지 않은 UI 오브젝트들이 남아 있다면, 상기 UI합성처리유닛(18)은 단계 S37로 되돌아간다. 이러한 방식으로, 상기 UI합성처리유닛(18)은, UI 표시 영역이 허용되어 잔여 UI 오브젝트들이 있는 한, 우선순위의 순서대로 UI 오브젝트의 선택 및 확정을 반복한다.
해석되지 않은 우선순위정보를 갖는 잔여 UI 오브젝트의 수가 0이라면, 즉 해석되지 않은 잔여 UI 오브젝트가 없다면, 상기 UI합성처리유닛(18)은 이 시점에 합성된 UI 오브젝트의 임시 레이아웃을 적절한 레이아웃으로 확정한다(단계 S42). 그 후, 상기 UI합성처리유닛(18)은 확정된 레이아웃의 UI 오브젝트를 단 하나의 DOM 노드로서 집약시키고(단계 S43), 상기 UI합성처리를 종료한다.
상기 임시 레이아웃의 UI 오브젝트의 표시가 단계 S39에서 상기 표시유닛(24)의 UI 표시영역에 맞지 않는다면, 상기 UI합성처리유닛(18)은 소정의 조건을 토대로 이미 추출한 UI 오브젝트로부터 선택을 행한 다음(단계 S44), 단계 S42로 진행된다. 선택을 행하기 위한 소정의 조건은, 우선순위가 동일한 복수의 UI 오브젝트들이 있고, 그들 모두의 표시가 UI 표시영역에 적합할 수 없는 경우, UI 오브젝트의 표시 크기들 또는 UI 오브젝트들 간의 관계에 관하여 사전에 미리 적절하게 정의된다.
다음으로, 도 3에 도시된 단계 S15에서의 UI생성처리가 도 5에 도시된 흐름도를 참조하여 추가로 설명된다.
도 5에 도시된 UI생성처리의 개시 시, 지정된 단일 UI정의파일에 기초한 UI 또는 복수의 UI정의파일에 기초한 합성 UI는 단 하나의 DOM 다큐먼트(또는 DOM 노드)로 형성된다. 우선, UI생성유닛(16)은 DOM 다큐먼트의 표시에 관한 해석을 수행한다(단계 S51). UIML 형태로 기술된 UI정의파일에 대해서는, 구조 태그 또는 스타일 태그를 갖는 속성이 해석된다. 다음으로, 상기 UI생성유닛(16)은 DOM 다큐먼트의 동작에 관한 해석을 수행한다(단계 S52). UIML 형태로 기술된 UI정의파일에 대해서는, 거동 태그를 갖는 속성이 해석된다.
다음으로, 상기 UI생성유닛(16)은 DOM 다큐먼트에 포함된 기술을 각각의 단말에 따른 기술로 변환하기 위한 처리를 실행한다(단계 S53). 또한, 상기 UI생성유닛(16)은, 단계 S53에서의 변환 결과를 토대로, 사용될 UI 오브젝트의 리소스를 선택하여, 각각의 속성(특성)을 설정한다(단계 S54). 이러한 선택을 위하여, UI 오브젝트의 필요한 리소스는, 상기 개별UI리소스메모리영역(56)에 개별적인 UI 리소스로 저장되거나 또는 공통 UI 리소스로서 상기 공통UI리소스메모리영역(58)에 저장된다. 그 후, 상기 UI생성유닛(16)은 UI 오브젝트를 포함하는 UI의 플롯 처리를 실행한다(단계 S55). 이에 따라, 상기 UI생성처리가 종료되게 된다. 이 후, 도 3에 도시된 단계 S16으로 이동하여, UI표시처리를 실행하게 된다.
따라서, 예컨대 도 2(A)에 도시된 TV 리모콘 UI 및 도 2(B)에 도시된 에어컨디셔너 리모콘 UI가 합성된다면, 도 6에 도시된 합성 UI가 생성된다. 도 6에 도시된 합성 UI는 터치패널(20)을 두 영역, 즉 TV 리모콘 UI의 UI 오브젝트가 배치되는 상측 영역; 및 에어컨디셔너 리모콘 UI의 UI 오브젝트가 배치되는 하측 영역으로 분할한다. 여기서는, 우선순위 "0" 및 "1"인 UI 오브젝트가 TV 리모콘 UI에 대하여 추출되는 한편, 우선순위 "0"인 UI 오브젝트만이 에어컨디셔너 리모콘 UI에 대하여 추출되어, 상기 UI들을 합성하게 된다. 이러한 방식으로, 두 XML 파일들이 해석되고, 우선순위가 보다 높은 UI 오브젝트가 자동으로 배치되어, 본 실시예에 따른 복수의 UI를 합성하게 된다. 따라서, 사용자가 복수의 어플리케이션 또는 어플리케이션에 기초한 UI들 간의 절환없이도 복수의 UI를 동시에 사용할 수 있게 된다.
(제2실시예)
다음으로, 본 발명의 제2실시예에 따른 UI생성장치에 의한 UI합성처리를 설명하기로 한다. 본 실시예에 따르면, 상기 UI오브젝트정의정보에 포함되고 복수의 UI를 합성하는데 사용되는 각각의 UI 오브젝트에 관한 정보인 UI오브젝트속성정보가 변경된다.
상기 제1실시예에서는, 각각의 UI 오브젝트와 기타 UI 오브젝트들 간의 관계를 토대로, 복수의 UI의 합성 시 각각의 오브젝트를 표시하기 위한 우선순위가 상기 UI오브젝트속성정보로서 사전에 미리 정의된다. 본 실시예에 따르면, 제1실시예에 따른 UI오브젝트속성정보 뿐만 아니라 구성요소로서 UI 오브젝트를 구비한 UI의 식별정보가 정의된다.
도 7은 본 실시예에 따른 UI식별정보를 이용하는 UI 합성을 예시한 도면이다. 본 실시예에서는, 도 2에 대하여 상술된 UI오브젝트정의정보 이외에, 각각의 UI 오브젝트에 부착될 텍스트 정보(text)가 도 7의 우측에 도시된 바와 같이, UI오브젝트속성정보로 추가된다. 또한, UI를 나타내는 텍스트 정보(particular_name)가 UI식별정보에 추가된다(Interface id).
XML 형태로 기술된 UI정의정보에서, UI를 나타내는 텍스트 정보(particular_name)는, 텍스트, 아이콘 등에 대한 링크를 이용하여, UI 오브젝트가 속하는 UI를 식별하도록 할 수 있기 위하여 필요에 따라 UI 오브젝트 상에 표시되는 이름을 기술하는 정보이다. 예를 들어, 도 7의 우측에 도시된 바와 같이, 점선 박스에 UI를 나타내는 텍스트 정보인 particular_name="TV1"는, 일련의 UI 오브젝트 (1) 내지 (6)가 "TV1"의 UI의 구성요소인 것을 나타내기 위하여 UI 식별정보(Interface id)에 추가된다. 이와 유사하게, 또다른 점선 박스에 UI를 나타내는 텍스트 정보인 particular_name="X가 제조한 에어컨디셔너"는, 일련의 UI 오브젝트 (1) 내지 (8)가 "X가 제조한 에어컨디셔너"의 UI의 구성요소인 것을 나타내기 위하여 UI 식별정보에 추가된다. 각각의 텍스트 정보(text)는 텍스트로 기술된 명칭 등에 관한 정보로서, 이는 UI 오브젝트가 표시유닛(24)에 표시될 때 필요에 따라 UI 오브젝트 상에 또는 그 부근에 배치될 수 있다.
UI를 나타내는 텍스트 정보는, 복수의 UI가 합성될 때, 합성 UI 상에 표시되는 키 및 버튼들이 속하는 UI를 식별하는 것을 촉진시킨다.
다음으로, 본 실시예에 따른 도 3에 도시된 단계 S20에서의 UI합성처리를 도 8에 도시된 흐름도를 참조하여 설명하기로 한다. 본 실시예에 따른 도 8에 도시된 UI합성처리에서는, UI를 나타내는 텍스트 정보 등에 의한 UI 처리 가공(단계 S71)이, 제1실시예에 따른 도 4에 도시된 단계 S42에서의 UI 오브젝트의 레이아웃의 확정 이후에 추가된다.
단계 S71에서 UI를 나타내는 텍스트 정보 등에 의한 UI가공처리에서는, 예컨대 복수의 UI를 합성하기 위하여, 각각의 UI 오브젝트의 속성정보가 해석될 때, 복수의 UI 가운데 동일한 텍스트 정보(text)를 갖는 UI 오브젝들이 있는 지의 여부를 판정하게 된다. 상이한 UI들 가운데 동일한 텍스트 정보를 갖는 UI 오브젝트들이 있고 이러한 상태로 합성 UI가 생성된다면, 사용자로 하여금 동일한 텍스트 정보를 갖는 각각의 UI 오브젝트들이 속하는 UI를 식별하는 것을 어렵게 만든다. 따라서, 상이한 UI들 가운데 동일한 텍스트 정보를 갖는 UI 오브젝트들이 있는 경우에는, UI합성처리유닛(18)이 UI 오브젝트 상에 또는 그 부근에 UI 식별정보의 각각의 텍스트를 두게 된다.
예를 들어, TV 리모콘 UI와 에어컨디셔너 리모콘 UI의 합성 UI가 도 7에 도시된 예시에서 생성되고, 두 UI의 각각의 UI 오브젝트의 텍스트 정보에 관한 해석은, 두 UI 모두가 "Power"의 동일한 텍스트 정보를 갖는다는 것을 보여준다. 상기 UI들에 공통으로 포함된 여타의 동일한 텍스트는 없다. 그러므로, UI 오브젝트 "Power"가 표시되는 경우, UI 오브젝트가 속하는 UI의 UI 식별정보에 추가된 텍스트 정보(particular_name)가 이웃하여 배치된다.
이에 따라, 도 7의 좌측에 도시된 바와 같이 합성 UI가 생성된다. 도 6에 대하여 상술된 합성 UI에는 "Power" 만이 UI 오브젝트 "Power"에 대해 표시되므로, 사용자가 전원이 속하는 UI를 한눈에 식별하는 것이 어렵다. 하지만, 도 7에 도시된 합성 UI는 사용자로 하여금 각각의 전원의 UI 오브젝트가 속하는 UI를 한눈에 식별할 수 있게 한다.
동일한 텍스트를 갖는 UI 오브젝트 상에 또는 그 부근에 UI 식별정보에 추가된 텍스트를 배치하는 것 이외에, 본 실시예의 각종 변형예들이 있을 수도 있다. 예를 들어, 도 9(A)에 도시된 바와 같이, 각각의 UI의 UI 식별정보를 토대로, 각각의 UI에 대한 상이한 컬러 또는 파팅 이미지를 이용하여 UI 표시 영역을 분할할 수 있게 되고, 상기 표시 영역들 각각에서의 방해받지 않는(unobstractive) 위치에서 UI 식별정보에 추가된 각각의 텍스트를 표시한다.
또한, UI 오브젝트들이 동일한 텍스트 정보를 갖는 지의 여부에 관계없이, 도 9(B)에 도시된 바와 같이 모든 UI 오브젝트들 상에 또는 그 부근에 UI 식별정보에 추가된 각각의 텍스트를 배치할 수도 있다.
더욱이, 도 9(A)의 변형예로서, 도 9(C)에 도시된 바와 같이 UI 표시 영역 각각에서는, UI 식별정보의 텍스트 대신에, UI들을 나타내는 아이콘들을 표시할 수도 있다. UI 식별정보는 일반적으로 XML 형태로 기술된 다큐먼트에서 텍스트의 기술로 배치되므로, 표시될 문자 스트링이 이미지의 리소스로 정의되는 경우와 같이 각각의 UI 오브젝트에 텍스트를 배치하기 어려운 경우, 도 9(C)에 도시된 바와 같이 표시하는 것이 적합하게 된다.
(제3실시예)
다음으로, 본 발명의 제3실시예에 따른 UI생성장치에 의한 UI합성처리를 설명하기로 한다. 본 실시예에 따르면, 상기 제2실시예와 동일한 방식으로, UI 오브젝트정의정보에 포함되고 복수의 UI를 합성하는데 사용되는 각각의 UI 오브젝트에 관한 정보인 UI오브젝트속성정보가 변경된다.
제2실시예에 정의된 UI오브젝트속성정보 대신에 또는 제2실시예의 UI오브젝트속성정보와 함께, 합성 UI를 구성하는 각각의 UI 오브젝트를 유효화 또는 무효화하기 위한 정보가 상기 UI오브젝트정의정보에 포함된다.
도 10은 본 실시예에 따른 UI오브젝트속성정보인 각각의 UI 오브젝트를 유효화 또는 무효화하기 위한 정보를 이용하는 UI 합성을 예시한 도면이다. 본 실시예에 따르면, 도 10의 우측에 도시된 바와 같이, 합성 UI를 구성하는 각각의 UI 오브젝트가 유효/무효인 지에 관한 정보(com_effect)는 UI오브젝트속성정보로서 도 7에 대하여 상술된 UI오브젝트정의정보에 더 추가된다.
UI오브젝트유효/무효정보(com_effect)가 "YES" 값을 가진다면, 상기 UI 오브젝트는 "유효"로 취급되는 한편, 상기 값이 "NO"이면, 상기 UI 오브젝트는 "무효"로 취급된다. 상기 정보에 따라 유효인 UI 오브젝트는 UI들의 합성 시에 상기 표시유닛(24)의 UI 표시영역에 표시되고, 상기 표시에 대응하는 위치에서 상기 입력유닛(22)으로의 입력을 수신한다. 이와는 대조적으로, 상기 정보에 따라 무효인 UI 오브젝트는 UI들의 합성 시에 상기 표시유닛(24)의 UI 표시영역에도 표시되지 않고, 상기 입력유닛(22)으로의 입력을 수신하지도 않는다.
예컨대, 도 10(A)에 도시된 예시에서는, TV1의 리모콘 UI를 구성하는 UI 오브젝트 (1) 내지 (7) 가운데 "Power ON"의 UI 오브젝트 (1)만이 유효("YES")를 나타내는 UI 오브젝트의 유효/무효 정보(com_effect)를 가진다. 그러므로, TV 리모콘 UI를 구성하는 UI 오브젝트들 가운데, Power ON의 키만이 UI 표시영역에 표시된다. 또한, 에어컨디셔너 리모콘 UI를 구성하는 UI 오브젝트 (1) 내지 (9) 가운데 "Power ON"의 UI 오브젝트 (2)만이 유효("YES")를 나타내는 UI 오브젝트의 유효/무효 정보(com_effect)를 가진다. 그러므로, 에어컨디셔너 리모콘 UI를 구성하는 UI 오브젝트들 가운데, Power ON의 키만이 UI 표시영역에 표시된다.
또한, 본 실시예에 따르면, 각각의 UI 오브젝트의 유효/무효 정보를 변경(갱신)하기 위한 정보가, 각각의 UI 오브젝트에 이벤트가 발생할 때 어플리케이션실행유닛(12)에 의해 실행될 동작으로서, 제1실시예에 기술된 UI오브젝트정의정보에 포함된 액션정보에 포함된다. 상기 액션정보를 토대로, 상기 어플리케이션실행유닛(12)은, 소정의 UI 오브젝트에 대한 이벤트의 발생에 응답하여, 소정의 UI 오브젝트의 유효/무효 정보(com_effect)를 유효에서 무효로("YES"에서 "NO"로) 또는 그 역으로 갱신할 수 있다.
다음으로, 본 실시예에 따른 도 3에 도시된 단계 S20에서의 UI합성처리가 도 11에 도시된 흐름도를 참조하여 설명된다. 본 실시예에 따른 도 11에 도시된 UI합성처리에서는, 해석의 결과로서 유효로 판정된 UI 오브젝트만을 추출하기 위한 처리(단계 S91)가, UI 오브젝트들이 추출되어 그 속성정보가 도 8에 도시된 제2실시예에 따라 단계 S31에서 해석된 이후 추가된다.
도 11에 도시된 UI합성처리가 개시되면, 상기 UI합성처리유닛(18)은, 파싱 처리와 DOM 처리가 완료되는 복수의 UI의 DOM 노드에 대하여 각각의 DOM 노드를 구성하는 모든 UI 오브젝트를 추출하고, 각각의 UI 오브젝트의 속성정보를 해석한다(단계 S31). 본 실시예에 따르면, 제1실시예 및 제2실시예에서 사용되는 UI 오브젝트 각각의 우선순위정보(priority)가 각각의 UI 오브젝트의 속성정보로서 해석된다. 또한, 상기 UI합성처리유닛(18)은 각각의 UI 오브젝트의 유효/무효 정보(com_effect)를 해석하여, 대상 UI 오브젝트로서 유효로 판정된(상기 값이 "YES"인) 모든 UI 오브젝트를 추출한다(단계 S91).
그런 다음, 대상 UI 오브젝트로 추출된 유효 UI 오브젝트에 대하여, 제1실시예 및 제2실시예에 기술된 단계 S32 이후의 처리를 수행함으로써 합성 UI가 생성된다.
본 실시예에 따르면, 생성되는 합성 UI가 상기 표시유닛(24)의 UI 표시영역에 표시된 이후 소정의 UI 오브젝트에 대응하는 입력유닛(22)으로의 입력의 이벤트가 발생된다면, 상기 합성 UI는 상기 이벤트에 따라 갱신된다. 즉, 이벤트가 발생하면, 상기 어플리케이션실행유닛(12)은, UI오브젝트정의정보에 포함된 액션정보를 토대로, 소정의 UI 오브젝트의 유효/무효 정보를 갱신하고, 도 11에 도시된 UI 합성 처리를 다시 수행하여, 합성 UI를 갱신하게 된다.
예를 들어, 상기 입력 이벤트가, 도 10(A)에 도시된 상태에서, 에어컨디셔너 리모콘 UI의 UI 오브젝트 "Power ON"로 발생한다면, 상기 어플리케이션실행유닛(12)은 우선 외부기기인 에어컨디셔너의 전원을 턴 온시키기 위해 적외선 신호를 송신하도록 지시한다. 그 후, 상기 어플리케이션실행유닛(12)은, 상기 액션정보를 토대로, 도 10(A)에 도시된 에어컨디셔너 리모콘 UI의 UI 오브젝트 "Power ON"의 속성인 com_effect의 값을 "YES"에서 "NO"로 변경할 뿐만 아니라, 소정의 다른 UI 오브젝트들의 com_effect의 값도 변경한다.
도 10(B)는 UI 오브젝트의 속성인 com_effect의 값이 이벤트의 발생 후 액션정보를 토대로 변경된 이후의 상태를 예시한 도면이다. 도 10(A)와 비교하여, 에어컨디셔너 리모콘 UI의 속성 com_effect의 값들 가운데 점선 박스들로 포위된 값들은, 도 10(B)의 우측에 도시된 바와 같이, 유효에서 무효로 또는 무효에서 유효로 변경된다. 소정의 UI 오브젝트의 유효/무효 정보가 상술된 바와 같이 변경되고, UI 합성 처리가 다시 실행되면, 상기 합성 UI는 도 10(B)의 좌측에 도시된 바와 같이, 유효 UI 오브젝트를 포함하도록 갱신된다.
이러한 처리에 의하면, 예컨대 도 10(A)에 도시된 바와 같이, 각각의 UI로 하여금 전원을 턴 온하기 전에 불필요한 UI 오브젝트를 숨길 수 있게 하여, UI 표시영역을 효과적으로 활용할 수 있게 한다. 또한, 예컨대 도 10(A)에 도시된 에어컨디셔너 리모콘 UI의 Power ON의 오브젝트로의 입력이 있다면, 도 10(B)에 도시된 바와 같이, 전원이 턴 온된 이후 필요한 UI 오브젝트가 개발된다. 이에 따라, 상기 UI 표시영역에 표시될 UI가 사용자에 의한 입력을 토대로 능동적으로 변경되므로, 필요할 때 필요한 UI 오브젝트만을 표시할 수 있다.
더욱이, 합성 UI가 각각의 이벤트의 발생에 응답하여 갱신되는 경우에는, 제1실시예에 기술된 우선순위의 속성을 토대로 유효 UI 오브젝트가 해석된다. 그러므로, 표시될 UI 오브젝트가 그 우선순위에 따라 일렬로 능동적으로 변경되게 된다.
하기는 도 12(A)에 도시된 상태에서 TV 리모콘 UI의 UI 오브젝트 "Power ON"으로의 입력이 있는 예시적인 경우이다. "Power ON"으로의 입력에 대한 이벤트의 발생에 응답하여, 상기 어플리케이션실행유닛(12)은 TV 리모콘 UI를 구성하는 소정의 UI 오브젝트들의 유효/무효 정보를 갱신함으로써, 우선순위가 높은 UI 오브젝트들이 UI 표시영역에 표시되게 된다. 하지만, 상기 UI 표시영역에는 도 12(A)에 도시된 상태에서 더 많은 UI 오브젝트들을 표시하기 위한 공간이 전혀 없다. 그러므로, 합성 UI를 갱신할 때에는, 상기 UI합성처리유닛(18)은 각각의 UI 오브젝트의 우선순위의 속성정보를 토대로 우선순위가 낮은 UI 오브젝트들을 채택하지 않고 합성 UI를 생성한다.
상술된 바와 같이 UI를 갱신(합성)함으로써, TV 리모콘 UI의 필요한 UI 오브젝트들은 도 12(B)에 도시된 바와 같이, TV의 전원이 TV 리모콘 UI에 관한 조작에 의해 턴 온될 때 표시된다. 다른 한편으로, 덜 필요한 UI 오브젝트들은, UI 표시영역을 더욱 효과적으로 활용하는 합성 UI를 제공하기 위하여, 에어컨디셔너 리모콘 UI가 갱신될 때 표시되지 않는다.
UI 오브젝트들 가운데, 예컨대 "Volume + (up)" 및 "Volume - (down)" 중 하나만이 있는 경우에는 불편하고 이러한 UI 오브젝트들 양자 모두가 함께 할 때에만 의미가 있는, 볼륨을 제어하기 위한 UI 오브젝트와 같은 UI 오브젝트들이 있다. 이에 따라, 본 실시예에서는, UI 표시영역의 구성이 상술된 바와 같이 합성 UI를 갱신하여 일렬로 변경될 때, 결합되어야 하는 두 UI 오브젝트들이 한 쌍으로 채택되는 지의 여부가 판정된다.
특히, 도 13에 도시된 바와 같이, 복수의 UI 오브젝트들이 결합되는 것을 나타내는 속성(relate_ID)이 UI오브젝트속성정보로서 UI오브젝트정의정보에 추가되고, 한 쌍의 UI 오브젝트들이 상기 속성의 값을 토대로 정의된다. 도 13에 도시된 예시에서는, TV 리모콘 UI에 있어서, (2)의 UI 오브젝트 "Select Channel +" 및 (3)의 "Select Channel -"이 결합되는 속성(relate_ID)으로 표시되고, 그 속성의 값들은 "select_1"로 정의된다. 또한, (4)의 UI 오브젝트 "Volume +" 및 (5)의 "Volume -"이 결합되는 속성(relate_ID)으로 표시되기도 하고, 그 속성의 값들은 "volume_1"로 정의된다. 각각의 UI 오브젝트가 유효/무효인 지의 속성(com_effect)은 도 13에 도시된 속성정보에서 생략된다.
이와 유사하게, 에어컨디셔너 리모콘 UI에 있어서는, (3)의 UI 오브젝트 "Temperature +" 및 (4)의 "Temperature -"이 결합되는 속성(relate_ID)으로 표시되고, 그 속성의 값들은 "set_1"로 정의된다. 또한, (5)의 UI 오브젝트 "Wind Direction +" 및 (6)의 "Wind Direction -"이 결합되는 속성(relate_ID)으로 표시되기도 하고, 그 속성의 값들은 "wind_1"로 정의된다.
UI오브젝트속성정보를 설정하여 합성 UI를 갱신하기 위해서는, UI 오브젝트들을 결합하는 속성(relate_ID)도 해석 시에 우선순위 및 유효/무효 속성(com_effect)을 토대로 해석된다. UI 오브젝트들을 결합하는 속성(relate_ID)을 갖는 UI 오브젝트들은 상기 속성의 값을 토대로 결합체로서 채택되는 지의 여부가 판정된다.
이에 따라, 예컨대 우선순위가 동일한 다수의 UI 오브젝트들이 있더라도, 결합되어야 하는 두 UI 오브젝트들이 항상 한 쌍으로 표시되거나 숨겨진다. 도 13에 도시된 예시에서는, 에어컨디셔너 리모콘 UI에 있어서, 우선순위가 높은(priority="1") UI 오브젝트 "Temperature +" 및 "Temperature -"가 한 쌍으로 채택되는 한편, 우선순위가 낮은(priority="5") UI 오브젝트 "Wind Direction +" 및 "Wind Direction -"는 한 쌍으로 거절된다. 이에 따라, "Volume +"의 UI 오브젝트만이 표시되는 반면, "Volume -"의 UI 오브젝트가 표시되지 않는 합성 UI의 갱신 시에 발생되는 불편함이 없게 된다.
본 발명은 상술된 실시예들로 제한되는 것이 아니라, 다수의 방식으로 변경 또는 변형될 수도 있다는 점은 자명하다. 예를 들어, 제3실시예의 UI오브젝트속성정보(relate_ID)를 이용하여 한 쌍으로서, 결합되어야 하는 두 UI 오브젝트들을 채택하는 지의 여부가 판정되지만, 그룹화될 UI 오브젝트들의 수는 2개 뿐만 아니라, 3개 이상일 수도 있다.
또한, 휴대전화(1)는 상술된 각각의 실시예에서 적외선통신유닛(40)에 의한 적외선 통신에 의하여 외부기기를 원격으로 제어하지만, 외부기기와의 통신을 위하여, 예컨대 Bluetooth(등록상표), 무선 LAN 등과 같은 근거리 통신(Near Field Communication)을 채택할 수도 있다.
상기 UI오브젝트속성정보는 상기 각각의 실시예들에서 UI오브젝트정의정보에 포함되지만, 상기 UI오브젝트속성정보는 UI오브젝트정의정보에 포함되지 않을 수도 있다. 예를 들어, 상기 UI오브젝트속성정보는 UI오브젝트정의정보가 저장되는 메모리유닛(50)의 영역과 상이한 영역에 대응하는 UI오브젝트정의정보와 연관하여 저장될 수도 있다.
또한, 상기 UI오브젝트속성정보는 그 내용이 고정되는 상태로 정의되지 않을 수도 있다. 즉, 예컨대 상기 제어유닛(10)은 UI의 사용 이력 등을 토대로 UI오브젝트속성정보의 내용을 변경할 수도 있다.
더욱이, 상기 UI오브젝트속성정보는 사전에 미리 정의되지 않을 수도 있다. 즉, 상기 제어유닛(10)은 상기 메모리유닛(50)에 저장된 UI정의파일을 해석하고, 상기 UI정의파일에 포함된 UI오브젝트정의정보의 내용, UI오브젝트정의정보간의 연관성, UI의 사용 이력 등을 토대로 UI오브젝트속성정보를 생성할 수도 있다.
나아가, 상기 각각의 실시예들에서 UI생성처리를 개시하기 위한 트리거링으로서, UI를 이용하는 어플리케이션을 개시하기 위한 사용자의 조작 또는 또다른 어플리케이션이 이미 실행 중일 때 UI를 사용하는 어플리케이션을 개시하기 위한 사용자의 조작이 취해지지만, 상기 UI생성처리를 트리거링하기 위한 조작들이 이것으로 제한되는 것은 아니다.
상기 각각의 실시예들에서는, 예컨대 UI생성장치로서 휴대전화(1)가 RF 태그 리더 또는 무선 LAN, Bluetooth 등과 같은 근거리 통신에 의해 UI생성장치 부근의 외부기기에 관한 정보를 취득하고, 취득한 정보를 토대로 UI를 생성할 수도 있다. 즉, 상기 휴대전화(1)는 사용자에 의한 조작없이도, 외부기기를 검출하여 휴대전화(1) 부근의 외부기기에 관한 UI(외부기기를 조작하기 위한 리모콘 어플리케이션용 UI)를 자동으로 생성할 수도 있다.
또한, UI생성장치로서의 휴대전화(1)는, GPS 등에 의해 취득한 위치 정보와 시간 정보를 토대로, 생성하기 위한 UI를 선택할 수도 있다. 즉, 휴대전화(1)는, 현재 위치의 변화, 사전에 이미 이루어진 스케줄 등을 토대로, 현위치에서 현재 필요한 UI를 자동으로 생성할 수도 있다.
더욱이, 상기 각각의 실시예에서는 각각의 어플리케이션에 대응하는 UI의 UI정의파일이 사전에 미리 UI정의파일메모리영역(54)에 저장되지만, 필요에 따라 필요한 UI정의파일을 외부적으로 취득할 수도 있다. 즉, UI가 생성될 때 필요한 UI정의파일이 메모리유닛(50)에 저장되어 있지 않는 경우, 상기 휴대전화(1)의 통신유닛을 통한 다운로딩에 의하여 필요한 UI정의파일을 취득할 수도 있다.
이 경우, UI정의파일이 도 3에 도시된 단계 S11에서 UI를 제공하는 어플리케이션으로부터 지정된다면, 필요한 UI정의파일이 UI정의파일메모리영역(54)에 저장되어 있는 지의 여부를 판정하게 된다. 필요한 UI정의파일이 상기 UI정의파일메모리영역(54)에 저장되어 있지 않는 경우, 상기 제어유닛(10)의 UI취득유닛(14)은 무선통신유닛(30)을 통해 외부기기 또는 외부서버(도시되지 않음)로부터 필요한 UI정의파일을 취득한다.
각각의 상기 실시예들에서는, 터치패널을 구비한 휴대단말이 UI합성처리를 실행한다. 하지만, 상기 터치패널이 본 발명에 따른 UI합성처리를 위한 필수 요소는 아니다. 본 발명은 예컨대 여하한의 포인팅장치 또는 다수의 기계적 키를 갖는 입력유닛을 구비한 단말과 같은, UI를 합성하여 사용되는 것으로 가정하는 여하한의 입력유닛을 구비한 단말에도 적용가능하다.
이하, 상기 각각의 실시예들에 사용되는 UI정의파일의 일례로서 XML에 기초한 UIML 형태의 예시적인 파일을 도시한다. 밑줄친 부분은 본 발명에 따른 추가적인 UI오브젝트속성정보이다. 본 예시에서는, 또한 UI 오브젝트가 <template> 태그로 정의되므로, <template>과 </template> 사이의 기술은 UI오브젝트정의정보에 대응한다.
우선, 상기 TV 리모콘 UI를 구성하는 UI정의파일로서 예시적인 TV1_interface.uiml 파일이 도시된다.
Figure 112010055159921-pct00001
Figure 112010055159921-pct00002

Figure 112010055159921-pct00003
Figure 112010055159921-pct00004

다음으로, 하기는 에어컨디셔너 리모콘 UI를 구성하는 UI정의파일로서 예시적인 AIR1_interface.uiml 파일이다.
Figure 112010055159921-pct00005
Figure 112010055159921-pct00006
Figure 112010055159921-pct00007
Figure 112010055159921-pct00008
Figure 112010055159921-pct00009

나아가, 하기는 제3실시예에 따른 도 10를 참조하여 기술된 바와 같이, 에어컨디셔너 리모콘 UI를 구성하는 UI 오브젝트가 유효/무효인 지의 속성이 변경될 때의 UI정의파일로서, 예시적인 AIR2_interface.uiml 파일의 추출된 부분이다.
Figure 112010055159921-pct00010

본 발명에 따르면, 복수의 UI는 각각의 UI에 대응하는 어플리케이션의 동작에 응답하여 필요한 UI 오브젝트를 자동으로 선택하여, 소정의 UI 표시영역에 적합한 단일 합성 UI로 합성된다. 이에 따라, 복수의 UI를 절환하지 않고도 그들을 동시에 사용할 수 있게 된다. 더욱이, 멀티-윈도우와 달리 표시영역(윈도우)을 선택하기 위한 조작 또는 상기 표시영역에서 스크롤바를 이동하기 위한 조작의 필요성이 없게 되므로, 사용자의 조작 부하를 현저하게 경감시키게 된다.
1 유저인터페이스생성유닛
10 제어유닛
12 어플리케이션프로그램실행유닛
14 유저인터페이스취득유닛
16 유저인터페이스생성유닛
18 유저인터페이스합성처리유닛
20 터치패널
22 입력유닛
24 표시유닛
30 무선통신유닛
40 적외선통신유닛
50 메모리유닛
52 어플리케이션프로그램메모리영역
54 유저인터페이스정의파일메모리영역
56 개별유저인터페이스리소스메모리영역
58 공통유저인터페이스리소스메모리영역

Claims (5)

  1. 유저인터페이스생성장치에 있어서,
    어플리케이션프로그램을 토대로 각종 기능들을 구현하기 위한 어플리케이션프로그램실행유닛;
    상기 어플리케이션프로그램을 토대로 소정의 기능을 실행하도록 상기 어플리케이션프로그램실행유닛에 지시하기 위하여 유저인터페이스를 생성하기 위한 유저인터페이스생성유닛;
    상기 유저인터페이스생성유닛에 의해 생성되는 유저인터페이스를 표시하기 위한 표시유닛; 및
    상기 유저인터페이스의 구성요소인 유저인터페이스오브젝트를 정의하기 위한 유저인터페이스오브젝트정의정보를 포함하는 유저인터페이스정의파일을 저장하기 위한 메모리유닛을 포함하여 이루어지고,
    상기 유저인터페이스오브젝트정의정보는, 상기 유저인터페이스오브젝트와 또다른 유저인터페이스오브젝트 간의 관계를 나타내는 유저인터페이스오브젝트속성정보를 포함하고,
    상기 유저인터페이스생성유닛은, 복수의 유저인터페이스를 생성하도록 지시되는 경우, 지시된 복수의 유저인터페이스 각각에 대응하여 상기 메모리유닛에 저장된 유저인터페이스정의파일에 포함된 유저인터페이스오브젝트정의정보로부터 상기 유저인터페이스오브젝트속성정보에 기초하여 선택을 행하여, 선택된 상기 유저인터페이스오브젝트정의정보를 토대로 합성유저인터페이스를 생성하도록 유저인터페이스합성처리를 실행하는 것을 특징으로 하는 유저인터페이스생성장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 유저인터페이스오브젝트정의정보는, 유저인터페이스를 구성하는 각각의 유저인터페이스오브젝트가 유효인지 또는 무효인지의 여부를 나타내는 유저인터페이스오브젝트속성정보를 더 포함하고,
    상기 유저인터페이스생성유닛은, 복수의 유저인터페이스를 생성하도록 지시되는 경우, 상기 유저인터페이스를 표시하기 위한 상기 표시유닛의 소정의 표시 영역 및 상기 유저인터페이스오브젝트속성정보를 토대로, 상기 유저인터페이스오브젝트정의정보로부터 선택을 행하는 것을 특징으로 하는 유저인터페이스생성장치.
  4. 제1항 또는 제3항에 있어서,
    상기 유저인터페이스정의파일은, 상기 유저인터페이스정의파일을 토대로 생성되는 유저인터페이스를 식별하기 위한 식별정보를 포함하고,
    상기 유저인터페이스생성유닛은 상기 식별정보를 토대로, 선택된 상기 유저인터페이스오브젝트정의정보를 처리하는 것을 특징으로 하는 유저인터페이스생성장치.
  5. 제1항 또는 제3항에 있어서,
    상기 유저인터페이스오브젝트정의정보는 상기 유저인터페이스오브젝트에 대한 이벤트 발생 시에 실행될 동작 내용들을 나타내는 액션정보를 포함하고,
    상기 액션정보는 또다른 유저인터페이스오브젝트정의정보에 포함된 유저인터페이스오브젝트속성정보의 변경에 관한 정보를 포함하며,
    상기 유저인터페이스생성유닛은, 상기 이벤트가 상기 합성유저인터페이스 상에 발생되고, 상기 유저인터페이스오브젝트속성정보가, 상기 이벤트의 발생을 수신한 상기 유저인터페이스오브젝트의 유저인터페이스오브젝트정의정보에 포함된 액션정보를 토대로 변경되는 경우, 신규 합성유저인터페이스를 생성하기 위하여, 변경된 상기 유저인터페이스오브젝트속성정보를 토대로 유저인터페이스합성처리를 실행하는 것을 특징으로 하는 유저인터페이스생성장치.
KR1020107018957A 2008-02-27 2009-02-23 유저인터페이스생성장치 KR101201856B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JPJP-P-2008-045726 2008-02-27
JP2008045726 2008-02-27
JPJP-P-2008-088248 2008-03-28
JP2008088248 2008-03-28
PCT/JP2009/053227 WO2009107589A1 (ja) 2008-02-27 2009-02-23 ユーザインタフェース生成装置

Publications (2)

Publication Number Publication Date
KR20100103723A KR20100103723A (ko) 2010-09-27
KR101201856B1 true KR101201856B1 (ko) 2012-11-15

Family

ID=41015983

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107018957A KR101201856B1 (ko) 2008-02-27 2009-02-23 유저인터페이스생성장치

Country Status (4)

Country Link
US (1) US8726175B2 (ko)
JP (1) JP5200095B2 (ko)
KR (1) KR101201856B1 (ko)
WO (1) WO2009107589A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2730159B1 (en) * 2012-11-07 2019-03-20 Rain Bird Corporation Irrigation control system
JP2015167102A (ja) * 2014-03-04 2015-09-24 株式会社オートネットワーク技術研究所 蓄電モジュール
WO2016085445A1 (en) * 2014-11-24 2016-06-02 Hewlett Packard Enterprise Development Lp Detection of user interface layout changes
CN105068467B (zh) * 2015-07-13 2018-02-02 小米科技有限责任公司 控制智能设备的方法及装置
JP6377307B2 (ja) * 2016-08-08 2018-08-22 三菱電機株式会社 ユーザーインターフェース制御装置及びユーザーインターフェース制御方法
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
JP6878934B2 (ja) * 2017-02-10 2021-06-02 オムロン株式会社 情報処理装置、情報処理システム、ユーザインターフェイスの作成方法、およびユーザインターフェイスの作成プログラム
WO2018152111A1 (en) * 2017-02-14 2018-08-23 Sherman Brian Arthur System for creating data-connected applications
JP6915532B2 (ja) * 2017-12-28 2021-08-04 富士通株式会社 情報処理装置、情報共有システムおよび同期制御方法
JP6992557B2 (ja) * 2018-02-02 2022-01-13 コニカミノルタ株式会社 画像形成装置及びプログラム
US11138288B2 (en) * 2019-08-01 2021-10-05 International Business Machines Corporation Priority-based rendering

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278666A (ja) 2001-03-22 2002-09-27 Toyoda Mach Works Ltd 設備制御用操作盤

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100545828C (zh) * 1993-07-30 2009-09-30 佳能株式会社 控制连接到网络的网络设备的控制设备及其控制方法
US5648813A (en) * 1993-10-20 1997-07-15 Matsushita Electric Industrial Co. Ltd. Graphical-interactive-screen display apparatus and peripheral units
US5657221A (en) * 1994-09-16 1997-08-12 Medialink Technologies Corporation Method and apparatus for controlling non-computer system devices by manipulating a graphical representation
JPH11122682A (ja) * 1997-10-16 1999-04-30 Nec Corp リモートコントロール送信装置
US7831930B2 (en) * 2001-11-20 2010-11-09 Universal Electronics Inc. System and method for displaying a user interface for a remote control application
JP2001036652A (ja) 1999-07-23 2001-02-09 Nippon Conlux Co Ltd 携帯電話機およびこれを利用した機器遠隔制御方法
JP2001069580A (ja) 1999-08-31 2001-03-16 Matsushita Electric Ind Co Ltd Av機器コントロール装置
US20050134578A1 (en) * 2001-07-13 2005-06-23 Universal Electronics Inc. System and methods for interacting with a control environment
US20030103075A1 (en) * 2001-12-03 2003-06-05 Rosselot Robert Charles System and method for control of conference facilities and equipment
AU2003213780B2 (en) * 2002-03-08 2008-03-13 Quantum Interface, Llc Electric device control apparatus
JP4158105B2 (ja) 2003-09-25 2008-10-01 ソニー株式会社 車載装置及び車載装置の制御方法
US10721087B2 (en) * 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
JP4455170B2 (ja) * 2004-05-31 2010-04-21 株式会社東芝 ネットワーク家電制御システム
JP3897774B2 (ja) * 2004-06-09 2007-03-28 株式会社ソニー・コンピュータエンタテインメント マルチメディア再生装置およびメニュー画面表示方法
JP2006350819A (ja) * 2005-06-17 2006-12-28 Toshiba Corp 家電機器制御システム
JP2007066099A (ja) * 2005-08-31 2007-03-15 Canon Inc Gui構成システム、gui構成方法及びプログラム
JP4676303B2 (ja) * 2005-10-18 2011-04-27 株式会社日立製作所 端末装置
US9607287B2 (en) * 2008-01-19 2017-03-28 International Business Machines Corporation Integrated view of multi-sourced information objects

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278666A (ja) 2001-03-22 2002-09-27 Toyoda Mach Works Ltd 設備制御用操作盤

Also Published As

Publication number Publication date
JP5200095B2 (ja) 2013-05-15
JPWO2009107589A1 (ja) 2011-06-30
US20110022974A1 (en) 2011-01-27
US8726175B2 (en) 2014-05-13
KR20100103723A (ko) 2010-09-27
WO2009107589A1 (ja) 2009-09-03

Similar Documents

Publication Publication Date Title
KR101201856B1 (ko) 유저인터페이스생성장치
JP5680404B2 (ja) ユーザインタフェース生成装置
JP5351165B2 (ja) ユーザインタフェース生成装置
JP5406176B2 (ja) ユーザインタフェース生成装置
KR101256016B1 (ko) 유저인터페이스 생성장치
KR101256014B1 (ko) 유저인터페이스 생성장치
KR101450640B1 (ko) 유저인터페이스생성장치
JP4071726B2 (ja) 携帯型情報機器、携帯型情報機器における文字の表示方法、およびその方法を実現するためのプログラム
US20080254778A1 (en) Mobile communication terminal and web page control method thereof
JP4518537B2 (ja) 画面作成支援装置
KR20140142488A (ko) 반응형 위젯 개발 장치, 방법 및 기록 매체
KR20090018332A (ko) 휴대용 단말기의 사용자 메뉴 구성을 위한 장치 및 방법

Legal Events

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

Payment date: 20151016

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161020

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20181023

Year of fee payment: 7