WO2009107589A1 - ユーザインタフェース生成装置 - Google Patents

ユーザインタフェース生成装置 Download PDF

Info

Publication number
WO2009107589A1
WO2009107589A1 PCT/JP2009/053227 JP2009053227W WO2009107589A1 WO 2009107589 A1 WO2009107589 A1 WO 2009107589A1 JP 2009053227 W JP2009053227 W JP 2009053227W WO 2009107589 A1 WO2009107589 A1 WO 2009107589A1
Authority
WO
WIPO (PCT)
Prior art keywords
user interface
information
unit
interface object
generation
Prior art date
Application number
PCT/JP2009/053227
Other languages
English (en)
French (fr)
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 京セラ株式会社
Priority to JP2010500681A priority Critical patent/JP5200095B2/ja
Priority to KR1020107018957A priority patent/KR101201856B1/ko
Priority to US12/919,351 priority patent/US8726175B2/en
Publication of WO2009107589A1 publication Critical patent/WO2009107589A1/ja

Links

Images

Classifications

    • 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/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
    • 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
    • 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/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

Definitions

  • the present invention relates to a user interface generation device, and more particularly to a user interface generation device that generates a user interface of a mobile terminal.
  • the user interface (hereinafter abbreviated as “UI” as appropriate) of a mobile terminal typified by a mobile phone greatly affects the operability when the user operates the mobile terminal. For this reason, the UI of the mobile terminal is one of the important factors that determine the user's purchase of the mobile terminal.
  • a UI based on XML Extensible Markup Language
  • XML Extensible Markup Language
  • Typical UIs based on XML such as this are UI Foundation developed by TAT (http://www.tat.se/) and Acrodea (http: //www.acrodea. VIVID UI developed by co.jp/) and UI One developed by Qualcomm (http://www.qualcomm.co.jp/).
  • Japanese Patent Application Laid-Open No. 2001-36652 discloses a technique in which a plurality of external devices can be remotely operated (controlled) by infrared communication using a mobile phone terminal having an infrared communication unit.
  • the mobile phone terminal described in Japanese Patent Laid-Open No. 2001-36652 includes an external control unit that performs communication with an external device.
  • This mobile phone terminal stores external device control information for remotely controlling an external device by acquiring it via a telephone line or receiving it from an external device, and stores it. Based on this external device control information Remote control of external devices.
  • a remote control that remotely operates a plurality of external devices on a terminal body that is normally used as a mobile phone.
  • application a built-in application program
  • remote control that remotely operates a plurality of external devices on a terminal body that is normally used as a mobile phone.
  • a plurality of external devices can be remotely operated by one mobile phone terminal based on the external device control information corresponding to each external device. . Therefore, there is no need for a complicated operation to use a plurality of individual remote control terminals for each of a plurality of external devices, and the convenience for the user can be improved.
  • each remote control application is temporarily terminated and the next remote control application is started. There is no need to let them. That is, a plurality of applications can be simultaneously activated on one terminal, and can be used by switching to an application of an arbitrary remote controller to be used from among them.
  • the UI of the television remote control application is displayed on the portable terminal 100 including the touch panel 200. Can be reproduced while maintaining operability.
  • the UI of the air conditioner remote control application is similarly displayed on the portable terminal 100 including the touch panel 200 as shown in FIG. Can be reproduced while maintaining its operability.
  • the UI of each application is described based on XML, even if the application is ported to another manufacturer's terminal, the same UI can be easily reproduced simply by processing the XML file describing the UI. .
  • both the TV and the air conditioner require frequent operation. Therefore, both applications are displayed on the display unit using the multitasking and multiwindow functions.
  • the display area is divided and displayed simultaneously. In this case, since each application has only a UI that is assumed to be used alone, when the UIs are simultaneously displayed as they are, the states shown in FIGS. 15A to 15D are obtained.
  • FIGS. 15A to 15D are views showing a state in which UIs of two applications are simultaneously displayed on the mobile terminal 100 in which the multitasking and multiwindow functions are implemented.
  • each UI is reproduced as it is in each window obtained by dividing the display on the display unit of the touch panel 200 vertically, only a part of each UI is displayed.
  • a scroll bar is provided at the right end of each window so that operations can be performed even on parts that cannot be displayed on the screen.
  • the user wants to adjust the volume of the television in the state shown in FIG. 15A
  • the user moves the scroll bar of the window of the television remote control UI
  • the television remote control UI as shown in FIG. You must move the display range.
  • the user moves the scroll bar of the window of the air conditioner remote control UI to move the air conditioner as shown in FIG.
  • the display range of the conditioner remote control UI must be moved.
  • the operation unit constituting the UI of an application such as a remote controller is generally designed with a size close to the minimum. Therefore, when displaying UIs of a plurality of applications at the same time, it is not realistic to reduce each UI as a whole and display it simultaneously.
  • an object of the present invention made in view of such circumstances is to provide a user interface generation apparatus capable of simultaneously realizing user interfaces of a plurality of application programs and maintaining the operability of each user interface.
  • An application program execution unit for realizing various functions based on the application program;
  • a user interface generation unit that generates a user interface for instructing the application program execution unit to execute a predetermined function based on the application program;
  • a display unit for displaying a user interface generated by the user interface generation unit;
  • a storage unit that stores a user interface definition file including user interface object definition information that defines a user interface object that is a component of the user interface, and
  • the user interface generation unit includes a user interface included in a user interface definition file stored in the storage unit corresponding to each of the instructed user interfaces
  • the object definition information is selected and user interface composition processing for generating a composite user interface based on the selected user interface object definition information is performed.
  • the invention according to a second aspect is the user interface generation device according to the first aspect,
  • the user interface object definition information includes user interface object attribute information indicating a relationship between the user interface object and another user interface object included in the user interface including the user interface object,
  • the user interface generation unit is configured to generate the predetermined user interface based on a predetermined display area for displaying a user interface on the display unit and the user interface object attribute information. It is characterized by selecting object definition information.
  • the invention according to a third aspect is the user interface generation device according to the second aspect,
  • the user interface object definition information further includes user interface object attribute information indicating whether each user interface object constituting the user interface is valid or invalid,
  • the user interface generation unit is configured to generate the predetermined user interface based on a predetermined display area for displaying a user interface on the display unit and the user interface object attribute information. It is characterized by selecting object definition information.
  • the invention according to a fourth aspect is the user interface generation device according to any one of the first to third aspects,
  • the user interface definition file includes identification information for identifying a user interface generated based on the user interface definition file,
  • the user interface generation unit processes the selected user interface object definition information based on the identification information.
  • the invention according to a fifth aspect is the user interface generation device according to any one of the first to fourth aspects,
  • the user interface object definition information includes action information indicating an operation content to be executed when an event occurs for the user interface object.
  • the action information includes information related to the change of the user interface object attribute information included in the other user interface object definition information,
  • the user interface generation unit changes the user interface object attribute information based on action information included in user interface object definition information of a user interface object that has received the occurrence of the event when the event occurs in the composite user interface. If so, the user interface composition processing is performed based on the changed user interface object attribute information to generate a new composite user interface.
  • FIG. 4 is a flowchart for further explaining the user interface composition processing of FIG. 3.
  • FIG. 4 is a flowchart for further explaining the user interface generation processing of FIG. 3.
  • composition of a user interface using user interface identification information which is user interface object attribute information concerning a 2nd embodiment.
  • UI generation apparatus of the present invention is not limited to a mobile phone, and can be applied to, for example, an arbitrary mobile terminal such as a notebook personal computer or a PDA. Further, the present invention is not limited to a portable terminal as long as it is an apparatus that requires implementation of the present invention. Note that the main object of the present invention is to synthesize a plurality of UIs so that they can be used at the same time.
  • the application that receives an instruction from each UI is not limited to the remote control function. Can be applied.
  • FIG. 1 is a block diagram showing a schematic configuration of a mobile phone which is a UI generation apparatus according to the first embodiment of the present invention.
  • the mobile phone 1 includes a control unit 10 that controls the whole and a touch panel 20 that receives input from the user and displays an input result or the like according to each application.
  • the touch panel 20 is configured by superimposing an input unit 22 configured with a matrix switch or the like that receives input from a user on a front surface of a display unit 24 configured with a liquid crystal display or the like.
  • the display unit 24 draws and displays a UI for accepting a user operation input in the UI display area.
  • the mobile phone 1 also includes a wireless communication unit 30 that transmits and receives various information such as voice calls and e-mail data with a base station (not shown), and an infrared communication unit 40 that communicates with various external devices (not shown) using infrared rays. Yes.
  • the wireless communication unit 30 uses the wireless communication unit 30, the mobile phone 1 transmits and receives various data to and from the outside of the terminal via the Internet or wireless.
  • the mobile phone 1 has a storage unit 50 that stores input information and various applications, and also functions as a work memory.
  • the storage unit 50 includes an application storage area 52, a UI definition file storage area 54, an individual UI resource storage area 56, and a common UI resource storage area 58.
  • the application storage area 52 stores various applications.
  • the UI definition file storage area 54 stores a UI definition file that defines a series of generation rules for generating each UI as a whole.
  • the individual UI resource storage area 56 stores individual UI resources such as image data and character string (text) data used for generating a UI unique to each application.
  • the common UI resource storage area 58 stores common UI resources such as image data and font data shared and used by the UI used in the terminal other than the individual UI resources specific to each application.
  • common UI resources such as image data and font data shared and used by the UI used in the terminal other than the individual UI resources specific to each application.
  • the control unit 10 includes an application execution unit 12, a UI acquisition unit 14, and a UI generation unit 16.
  • the application execution unit 12 executes various applications stored in the application storage area 52 of the storage unit 50 and controls the execution. Further, based on the input to the UI corresponding to the various applications stored in the application storage area 52, the application execution unit 12 executes the functions of the various applications corresponding to the input.
  • the UI acquisition unit 14 acquires resources (image data and the like) and UI definition files (XML file and the like) outside the terminal via the wireless communication unit 30.
  • the UI generation unit 16 performs parsing processing (parsing) and DOM (Document Object Model) processing on the UI definition file, and generates a UI to be actually used.
  • the UI generation unit 16 interprets UI information described in XML format by the XML engine, and displays the UI generated based on the UI definition file on the display unit 24 of the touch panel 20.
  • the UI generation unit 16 includes a UI composition processing unit 18.
  • the UI synthesis processing unit 18 synthesizes the UIs according to the designated UI definition files.
  • a UI definition file that defines each specification and operation corresponding to the application of the UI required when each application stored in the application storage area 52 is executed. Is memorized. Although the situation where the same UI is used in different applications is also conceivable, here, for convenience of explanation, it is assumed that different UIs are used for different applications, and each UI definition file corresponding to each application is saved. The case will be described.
  • a TV remote control UI definition file is stored in the UI definition file storage area 54 in correspondence with a TV remote control application for remotely controlling a television receiver, which is an external device (not shown), using the mobile phone 1.
  • an air conditioner remote control UI definition file is stored in the UI definition file storage area 54 in correspondence with an air conditioner remote control application that remotely controls an air conditioner of an external device (not shown) with the mobile phone 1.
  • UIML User Interface Markup Language
  • the UI generation unit 16 displays a UI on the display unit 24 of the touch panel 20 of the mobile phone 1, and the application execution unit 12 performs a process according to an input to the input unit 22 by the user. I do.
  • UI object definition information for defining a UI object to be drawn on the display unit 24 is included.
  • the UI object definition information includes information for defining an image and text for drawing a UI object such as a key or a button, which is an element constituting a UI displayed on the display unit 24, and when the UI object is input. This is information that defines an action (in actuality, when an input is made to the part of the input unit 22 corresponding to the UI object).
  • each application execution unit is executed when an event occurs for each UI object in the UI object definition information as information defining an operation when an input is made to the input unit 22 corresponding to the position of the UI object.
  • action information that indicates what action should be performed. For example, when an input event occurs in the input unit 22 corresponding to the position of the “power” UI object of the TV remote control UI, an infrared signal for turning on or off the TV of the external device to the TV remote control application Define the action information to issue an instruction to send
  • the UI object definition information includes UI object attribute information that is information about each UI object used when a plurality of UIs are combined.
  • UI object attribute information the priority with which each object is displayed when a plurality of UIs are combined is defined in advance based on the relationship between each UI object and another UI object.
  • FIG. 2 is a diagram for explaining information indicating priority, which is UI object attribute information according to the present embodiment.
  • FIG. 2A shows a state in which only the TV remote control application is activated on the mobile phone 1 and the TV remote control UI is displayed on the touch panel 20 based on the TV remote control UI definition file.
  • a state in which the UI display area on the touch panel 20 is conceptually divided into small areas corresponding to the attribute information of each UI object is represented by an alternate long and short dash line, and each UI object attribute information corresponding to each small area is shown in the figure.
  • the definition (UI identification information) of handling a plurality of UI objects as a single UI is shown with an interface tag, and the value “TV1_interface” identifies that this is the UI of the TV1 remote control. it can.
  • the TV receiver identified as TV1 can be remotely operated (controlled) by the UI of the TV1 remote controller.
  • the priority for the UI object in each small area described above is defined in advance as a priority value.
  • a UI object with a priority value of zero is an indispensable object
  • a UI object with a priority value of 1 is an important object
  • the UI object has a lower priority as the priority value increases. It means that. That is, for example, since the “power” key shown in the small area (1) in FIG. 2A is an essential key, the priority value is set to zero.
  • the channel selection keys of the small areas (2) and (3) and the volume up / down keys of the small areas (4) and (5) are important keys, so the priority value is 1.
  • the small area (6) numeric keypad can be replaced with the channel selection keys of the small areas (2) and (3), the priority value is set to 3 and the priority is set low.
  • FIG. 2B shows a state in which only the air conditioner remote control UI is displayed on the touch panel 20.
  • the display of “set temperature” shown in the small area (1) is essential, and the “power” key shown in the small area (2) is an essential key, so the priority value is zero.
  • the temperature up / down tuning keys in the small areas (3) and (4) are important keys, so the priority value is 1.
  • the priority value is set to 5.
  • the mode key for the small area (7) and the menu key for the small area (8) are not so frequently used, the priority value is set to 2.
  • the value of the interface tag is “AIR1_interface” so that the plurality of objects can be identified as the UI of the remote controller of one air conditioner 1.
  • the remote control (control) of the air conditioner identified as AIR1 can be performed by the UI of the remote controller.
  • the priority information (priority value) defined based on the relationship between each UI object and another UI object is used as UI object attribute information, and the UI object of each UI definition file is used. It is included in the definition information in advance.
  • FIG. 3 is a flowchart illustrating the entire processing of the UI generation unit 16 according to the present embodiment.
  • a UI definition file (XML file) is designated from an application that provides the UI (step S11).
  • the operation that triggers the UI generation process is a user operation when starting an application that uses the UI, or a user operation when further starting another application that uses the UI while the user is already executing the application. Etc. are assumed.
  • the UI generation unit 16 determines whether the number of designated UI definition files is one or more (step S12). When it is determined that the number of designated files is one, the UI generation unit 16 determines that the application does not request composition of a plurality of UIs, and performs XML parsing processing (step S13) on one designated UI definition file. ) And DOM processing (step S14).
  • the subsequent processing is the same as the processing for generating a conventional UI. That is, based on the UI definition file that has undergone the parsing process and the DOM process, the UI generation unit 16 performs a process of generating a UI (step S15). The UI generation process in step S15 will be described later.
  • the application execution unit 12 performs a process of displaying the UI in the UI display area of the display unit 24 of the touch panel 20 (step S16).
  • the mobile phone 1 can display a single UI on the display unit 24 as a single application is executed.
  • the TV remote control UI definition file is designated by starting the TV remote control application
  • the UI is displayed as shown in FIG.
  • a UI definition file for an air conditioner remote controller is designated by starting an application of the air conditioner remote controller
  • the UI is displayed as shown in FIG.
  • step S12 the UI generation unit 16 determines that the application requests composition of a plurality of UIs, and performs an XML parsing process (steps) on each of the plurality of XML files. S17) and DOM processing (step S18) are performed. In step S19, the UI generation unit 16 determines whether or not the parsing process and the DOM conversion process have been completed for all UI definition files. If not yet completed, the process returns to step S17.
  • the UI composition processing unit 18 When the parsing process and the DOM conversion process are completed for all the UI definition files in step S19, the UI composition processing unit 18 performs a process of synthesizing a plurality of UIs for which the parsing process and the DOM conversion process are completed (step S20). The UI composition process in step S20 will also be described later.
  • the UI generation unit 16 performs a process of generating a combined UI (step S15).
  • the application execution unit 12 performs a process of displaying the generated composite UI in the UI display area of the display unit 24 of the touch panel 20 (Step S16), and ends the entire process of UI generation.
  • step S20 in FIG. 3 will be further described with reference to the flowchart in FIG.
  • the UI composition processing unit 18 extracts all UI objects constituting each DOM node from the DOM nodes of the plurality of UIs for which the parsing processing and the DOM conversion processing have been completed, and each UI object Is analyzed (step S31).
  • priority information (priority) of each UI object is analyzed as attribute information of each UI object.
  • the UI objects that are indispensable to display are arranged as a temporary layout by the calculation process in the UI composition processing unit 18 without actually displaying the UI objects on the display unit 24.
  • the UI composition processing unit 18 determines whether the display of the entire UI in which the UI objects arranged in the provisional layout are arranged within the UI display area that is an area for displaying the UI in the display unit 24. It is determined whether or not (step S34). As a result of this determination, if it is determined that the UI display does not fit in the UI display area, the plurality of UIs cannot be displayed as a combined UI, and the UI combining processing unit 18 has failed to combine the plurality of UIs. A message to that effect is displayed on the display unit 24 (step S35), and the UI composition processing is terminated. This is a measure when a large number of UIs are combined on the same screen so that even essential objects cannot be displayed.
  • step S34 If it is determined in step S34 that the display of the entire UI in which the temporarily arranged essential UI objects are arranged fits in the UI display area in the display unit 24, the UI composition processing unit 18 has the highest priority. It is determined that a UI object (required for display) is adopted (step S36).
  • step S39 if it is determined that the display of the temporarily laid UI objects is within the UI display area of the display unit 24, the UI composition processing unit 18 confirms the adoption of these UI objects (step S40). .
  • the UI composition processing unit 18 determines whether or not the remaining UI objects that have not been analyzed for priority information have become zero (step S41). If the remaining UI objects whose priority information analysis has not been completed are not zero, that is, if there are still unanalyzed UI objects remaining, the process returns to step S37. In this manner, selection and determination of UI objects are repeated in descending order of priority as long as the UI display area permits and UI objects exist.
  • step S41 when the remaining UI objects whose priority information is unanalyzed become zero, that is, when there are no more unanalyzed UI objects remaining, the UI composition processing unit 18 performs the composition UI object at that time. Is determined as an official layout (step S42). Thereafter, the UI objects of the determined layout are collected as one DOM node (step S43), and the UI composition process is terminated.
  • step 39 if the display of the temporarily laid UI object does not fit in the UI display area of the display unit 24, the UI composition processing unit 18 selects a predetermined UI object from among the UI objects extracted at this time. Is selected based on the above condition (step S44), and then the process proceeds to step S42.
  • This predetermined condition is related to the relationship between UI objects or the display size of UI objects, etc., in case there are multiple UI objects with the same priority and all of them do not fit in the UI display area. As appropriate, conditions for selection are defined in advance.
  • step S15 in FIG. 3 will be further described with reference to the flowchart in FIG.
  • either a UI based on one designated UI definition file or a composite UI based on a plurality of UI definition files becomes one DOM document (or DOM node).
  • the UI generation unit 16 performs display-related analysis on the DOM document (step S51).
  • the UI definition file described in the UIML format an attribute with a structure tag or a style tag is analyzed.
  • the UI generation unit 16 analyzes the operation related to the DOM document (step S52).
  • an attribute with a behavior tag is analyzed.
  • the UI generation unit 16 performs processing for converting the expression included in the DOM document into an expression depending on each terminal (step S53). Furthermore, the UI generation unit 16 selects a UI object resource to be used and sets each attribute (property) based on the result of the conversion process in step S53 (step S54). The UI object resources required at this time are stored in the individual UI resource storage area 56 as individual UI resources or in the common UI resource storage area 58 as common UI resources. Thereafter, the UI generation unit 16 performs a plotting process of the UI including each UI object (step S55). As a result, the UI generation process ends, and thereafter, the process proceeds to step S16 in FIG. 3 to perform the UI display process.
  • a combined UI as shown in FIG. 6 is obtained.
  • the composite UI shown in FIG. 6 divides the touch panel 20 into two upper and lower areas, and arranges the UI object of the TV remote control UI in the upper half and the UI object of the air conditioner remote control UI in the lower half.
  • UI objects with a priority of “0” to “1” are extracted, and for the air conditioner remote control UI, only UI objects with a priority of “0” are extracted to synthesize the UI. Yes.
  • two XML files are analyzed, and only a UI object having a high priority is automatically arranged to synthesize a plurality of UIs.
  • the user can use a plurality of UIs simultaneously without switching a plurality of applications or UIs based on the applications.
  • the UI object attribute information which is information related to each UI object used when combining a plurality of UIs, included in the UI object definition information in the first embodiment described above is changed.
  • the priority with which each object is displayed when a plurality of UIs are combined is defined in advance based on the relationship between each UI object and another UI object.
  • UI identification information having a UI object as a constituent element is defined.
  • FIG. 7 is a diagram for explaining UI composition using UI identification information according to the present embodiment.
  • text information to be attached to each UI object is added as UI object attribute information.
  • text information (particular_name) indicating the UI is added to the UI identification information (Interface id).
  • each text information is information that describes a name or the like that can be given on or near the display of the UI object as necessary when the UI object is displayed on the display unit 24. is there.
  • the UI composition processing in step S20 in FIG. 3 according to the present embodiment will be described with reference to the flowchart in FIG.
  • the UI composition process according to the present embodiment shown in FIG. 8 is a UI processing process (step information) based on text information indicating a UI after the UI object layout is determined in step S42 of the first embodiment described with reference to FIG. S71) is added.
  • the UI composition processing unit 18 attaches each text of the UI identification information on or around the UI object.
  • a composite UI of the TV remote controller UI and the air conditioner remote controller UI is generated.
  • the “power” is the same in both UIs. Text information exists. There is no other text information that exists in either UI. Therefore, when the UI object of “power” is displayed, text information (particular_name) added to the UI identification information of the UI to which the UI object belongs is also attached.
  • various modes can be considered in addition to adding the text added to the UI identification information on or near the UI object of the same text.
  • the UI display area is divided and displayed by drawing or color coding for each UI on the basis of the UI identification information of each UI.
  • Each text added to the UI identification information may be displayed at a location that does not become necessary.
  • an icon indicating each UI may be displayed in each divided UI display area instead of the text of the UI identification information.
  • the UI identification information is attached to the description of the text in the document described in the XML format. Therefore, when the character string to be displayed is defined by the image resource, the text is attached to each UI object.
  • an embodiment as shown in FIG. 9C is preferable.
  • UI composition processing by the UI generation apparatus will be described.
  • UI object attribute information which is information related to each UI object used when combining a plurality of UIs, included in the UI object definition information is changed.
  • each UI object constituting the composite UI is enabled or disabled. Information to be included in UI object definition information.
  • FIG. 10 is a diagram for explaining UI composition using information for validating or invalidating each UI object, which is UI object attribute information according to the present embodiment.
  • UI object attribute information UI object attribute information according to the present embodiment.
  • valid / invalid information (com_effect) of each UI object constituting the composite UI is used as UI object attribute information. Append.
  • the valid / invalid information (com_effect) of each UI object is treated as “valid” when the value is “YES”, and when the value is “NO”, The object is treated as “invalid”.
  • the UI object for which this information is valid is displayed in the UI display area of the display unit 24 at the time of UI composition, and the input to the input unit 22 is received at a part corresponding to the display.
  • UI objects for which this information is invalid are not displayed in the UI display area of the display unit 24 at the time of UI composition, and input to the input unit 22 is not accepted.
  • the UI object valid / invalid information (com_effect) is valid ("YES") among the UI objects (1) to (7) constituting the remote control UI of the television 1.
  • the UI object valid / invalid information (com_effect) is valid ("YES"). Only UI objects. Therefore, in the UI display area, only the power ON key is displayed among the UI objects constituting the air conditioner remote control UI.
  • the action information included in the UI object definition information described in the first embodiment includes the validity of each UI object as an operation to be executed by the application execution unit 12 when an event occurs for each UI object. / Include information to change (update) invalidity. Based on this action information, the application execution unit 12 changes the validity / invalidity information (com_effect) of the predetermined UI object from valid to invalid (from “YES” to “NO”) in response to the occurrence of an event for the predetermined UI object. ) Or from invalid to valid (“NO” to “YES”).
  • step S20 in FIG. 3 the UI composition processing in step S20 in FIG. 3 according to the present embodiment will be described with reference to the flowchart in FIG.
  • the UI composition processing according to the present embodiment shown in FIG. 11 is performed only for UI objects that have been analyzed as valid after extracting UI objects and analyzing attribute information in step S31 in the second embodiment described with reference to FIG. Is added (step S91).
  • the UI composition processing unit 18 extracts all UI objects constituting each DOM node for the DOM nodes of a plurality of UIs for which the parsing processing and the DOM conversion processing have been completed.
  • the attribute information of each UI object is analyzed (step S31).
  • priority information (priority) of each UI object used in the first and second embodiments is analyzed as attribute information of each UI object.
  • validity / invalidity information (com_effect) of each UI object is analyzed, and only the UI objects determined to be valid (value is “YES”) are all extracted as target UI objects (step S91).
  • a composite UI can be generated by continuing the processing from step S32 described in the first and second embodiments on the valid UI object extracted as the target UI object.
  • the composite UI is updated accordingly. That is, when an event occurs, the application execution unit 12 updates valid / invalid information of a predetermined UI object based on the action information included in the UI object definition information, and performs the UI composition processing shown in FIG. Again, update the composite UI.
  • the application execution unit 12 when an operation input event occurs for a “power ON” UI object of the air conditioner remote control UI, the application execution unit 12 first turns on the power supply of the air conditioner of the external device. An instruction to send an infrared signal to turn ON is issued. Furthermore, the application execution unit 12 changes the value of com_effect, which is the attribute of the UI object “power ON” of the air conditioner remote controller UI of FIG. 10A, from “YES” to “NO” based on the action information. The value of com_effect of another predetermined UI object is also changed.
  • FIG. 10B is a diagram illustrating a state after the value of com_effect, which is an attribute of the UI object, is changed based on the action information after the event occurs.
  • the value surrounded by the alternate long and short dash line is changed from valid to invalid or invalid to valid. It has changed.
  • the UI is updated to a composite UI including valid UI objects. .
  • each UI can prevent unnecessary UI objects from being displayed before the power is turned on, so a limited UI display area can be displayed. It can be used effectively.
  • a necessary UI object is expanded after the power is turned on as shown in FIG. 10B.
  • the necessary UI objects can be displayed only when necessary.
  • the effective UI object is also analyzed based on the priority attribute described in the first embodiment. Objects change dynamically in order according to their priorities.
  • the application execution unit 12 updates the validity / invalidity information of a predetermined UI object constituting the TV remote control UI, so that a higher priority is displayed in the UI display area. Will come to be. However, in the state shown in FIG. 12A, there is no area for displaying any more UI objects in the UI display area. For this reason, when the composite UI is updated, the UI composition processing unit 18 generates a composite UI without adopting a UI object with a low priority based on the priority attribute information of each UI object.
  • the TV remote controller UI is turned on to display the UI object of the important TV remote controller UI.
  • the air conditioner remote control UI a UI object having a low importance level is not displayed at the time of updating, and a composite UI using the UI display area more effectively can be provided.
  • some UI objects such as UI objects for manipulating the volume, are not easy to use with either “volume + (increase)” or “volume ⁇ (decrease)”, and both UI objects are aligned. There is something that makes sense for the first time. Therefore, in this embodiment, when the composition of the UI display area is sequentially changed by updating the composite UI as described above, two UI objects that should be paired are determined as a pair. .
  • an attribute (relate_ID) indicating that a plurality of UI objects are paired is further added as UI object attribute information to the UI object definition information, and the attribute value is paired according to the value of the attribute.
  • a UI object In the example shown in FIG. 13, in the TV remote control UI, it is indicated by an attribute (relate_ID) that the UI object of “channel selection +” in (2) and “channel selection ⁇ ” in (3) is a pair. Is defined as “select_1”.
  • the attribute (relate_ID) indicates that the UI objects of (4) “volume +” and (5) “volume ⁇ ” are also a pair, and the value of the attribute is defined as “volume_1”.
  • the valid / invalid attribute (com_effect) of each UI object is omitted.
  • an attribute (relate_ID) that handles a UI object as a pair when performing analysis based on a priority (priority) or valid / invalid (com_effect) attribute also analyze.
  • the UI object to which the attribute (relate_ID) to be treated as a pair is added is determined to be adopted or not adopted based on the value.
  • the present invention is not limited to the above-described embodiment, and many changes or modifications can be made.
  • the UI object attribute information (relate_ID) is used to determine whether or not two UI objects to be paired are to be adopted as a pair.
  • the number of UI objects is not limited to two, and can be three or more.
  • the mobile phone 1 of each embodiment mentioned above controlled the external apparatus remotely by performing infrared communication by the infrared communication part 40
  • communication with an external apparatus is not restricted to infrared communication, For example, Bluetooth (trademark) ) Or wireless LAN or other short-range wireless communication.
  • the UI object attribute information has been described as being included in the UI object definition information.
  • the UI object attribute information is not necessarily included in the UI object definition information.
  • the UI object attribute information may be stored in an area different from the area where the UI object definition information is stored in the storage unit 50 in association with the corresponding UI object definition information.
  • the UI object attribute information does not have to be defined with its contents fixed. That is, for example, the control unit 10 may change the content of the UI object attribute information based on a UI usage history or the like.
  • the UI object attribute information may not be defined in advance. That is, for example, the control unit 10 analyzes the UI definition file stored in the storage unit 50, the contents of the UI object definition information included in the UI definition file, the relevance between the UI object definition information, and the use of the UI UI object attribute information may be generated based on a history or the like.
  • a trigger for starting the UI generation process a user operation for starting an application using a UI, or a user for starting another application using a UI when an application is already being executed.
  • the operation has been described as an example, but the operation for starting the UI generation processing is not limited to these.
  • the mobile phone 1 that is a UI generation device acquires information on external devices existing around the UI generation device by short-range wireless communication such as a wireless LAN or Bluetooth, or an RF tag reader.
  • the UI may be generated based on the acquired information. That is, the mobile phone 1 detects the presence of an external device in the vicinity of the mobile phone 1 so that a UI related to the external device (such as a UI for a remote control application that operates the external device) depends on a user operation. Automatically generated.
  • the mobile phone 1 that is a UI generation device may be configured to select a UI to be generated based on position information and time information acquired by GPS or the like. That is, the mobile phone 1 automatically generates a UI necessary at that location based on a change in the current position or a preset schedule.
  • a UI definition file corresponding to each application is stored in the UI definition file storage area 54 in advance.
  • a necessary UI definition file is appropriately acquired from the outside. You can also. That is, when the UI is generated, if the necessary UI definition file is not stored in the storage unit 50, the necessary UI definition file may be downloaded and obtained via the communication means of the mobile phone 1. good.
  • the UI acquisition unit 14 of the control unit 10 receives the necessary UI definition file from an external device or an external server (not shown) via the wireless communication unit 30. To get.
  • the touch panel is not an essential element.
  • the present invention can be applied to a terminal having an arbitrary input unit that is supposed to be used by combining UIs, such as an input unit having a large number of mechanical keys or a terminal having an arbitrary pointing device. .
  • UI definition file As an example of the UI definition file used in each embodiment described above, an example of a file in the UIML format based on XML is shown below. The portion to which each UI object attribute information according to the present invention is added is underlined.
  • the UI object is defined by a ⁇ template> tag, and therefore the description between ⁇ template> to ⁇ / template> corresponds to the UI object definition information.
  • TV1_interface.uiml file is shown as a UI definition file constituting the TV remote control UI.
  • the present invention it is possible to synthesize a plurality of UIs, automatically select important UI objects when operating an application corresponding to each UI, and generate one synthesized UI that fits in a predetermined UI display area. Therefore, a plurality of UIs can be used simultaneously without switching. Furthermore, since there is no need to select a display area (window) or move the scroll bar within the display area as in the case of a multi-window, the user's operation load can be greatly reduced.

Abstract

 ユーザインタフェース生成装置1は、ユーザインタフェースを生成するユーザインタフェース生成部16と、ユーザインタフェース生成部16により生成されるユーザインタフェースを表示する表示部24と、ユーザインタフェースの構成要素であるオブジェクトを定義するオブジェクト定義情報を含む定義ファイルを格納する記憶部50とを備え、ユーザインタフェース生成部16は、複数のユーザインタフェースの生成が指示された場合、記憶部50に格納された定義ファイルに含まれるオブジェクト定義情報を取捨選択し、選択されたオブジェクト定義情報に基づいて合成ユーザインタフェースを生成する処理を行うことを特徴とする。

Description

ユーザインタフェース生成装置 関連出願の相互参照
 本出願は、2008年2月27日に出願された日本国特許出願2008-45726号、および2008年3月28日に出願された日本国特許出願2008-88248号の優先権を主張するものであり、これらの先の出願の開示全体をここに参照のために取り込む。
 本発明は、ユーザインタフェース生成装置に関し、特に、携帯端末のユーザインタフェースを生成するユーザインタフェース生成装置に関するものである。
関連技術
 携帯電話に代表される携帯端末のユーザインタフェース(以下、適宜「UI」と略記する)は、ユーザが携帯端末を操作する際の操作性を大きく左右する。そのため、携帯端末のUIは、ユーザが携帯端末を購入する際の決め手となる重要な要素の1つになっている。
 近年、携帯端末は著しく多機能化し、それに伴いアニメーションや3Dの表現などを利用した表現力豊かなUIを備える携帯端末も多い。また、ユーザの嗜好に合わせてUIをカスタマイズできる携帯端末もあり、このような携帯端末は、ユーザにとっての利便性を著しく向上させている。
 従来の携帯端末は、各メーカ間および各機種間でUIのデザインや操作方法が異なるのが一般的であった。すなわち、UIは各端末機器に固有のものであり、端末ごとに機種依存性の高いUIを備えるものがほとんどであった。そのため、端末の開発を行う際に、他の端末のプログラムコードを再利用する場合、そのプログラムコードに対して必要なUI部分の変更は膨大になる。したがって、ある端末のプログラムコードを他の端末に移植するのは困難であった。 
 そこで、最近では、XML(Extensible Markup Language)をベースにしたUIが導入されつつある。記述方式が共通化されたXMLファイルを用いてUIを表現することによって、プログラムコードの再利用が容易になり、他の機種へのUIの移植も可能になる。したがって、例えば、異なるメーカの異なる端末機種間でも同じUIを使用することができるなど、各端末からUIのみを独立させるように扱うことも可能になる。
 このような、XMLをベースにしたUIのうち代表的なものとして、TAT社(http://www.tat.se/)が開発したUI Foundationや、Acrodea社(http://www.acrodea.co.jp/)が開発したVIVID UIや、Qualcomm社(http://www.qualcomm.co.jp/)が開発したUI Oneなどを挙げることができる。
 また、近年の携帯端末は、端末本体の多機能化および高性能化に伴い、同時に複数のタスクを並行して実行できるマルチタスク処理に対応したOS(オペレーティングシステム)を実装したものが増えている。さらに、並行して同時に処理する複数のタスクにそれぞれ固有の表示領域(ウィンドウ)を割り当てて、出力画面の表示を多重化するマルチウィンドウ機能に対応した携帯端末も普及しつつある。
 ところで、例えば特開2001-36652号公報には、赤外線通信部を備える携帯電話端末を用いて、赤外線通信により複数の外部機器を遠隔操作(制御)できるようにした技術が開示されている。この特開2001-36652号公報に記載の携帯電話端末は、外部機器との通信を行う外部制御部を備えている。この携帯電話端末は、外部の機器を遠隔制御するための外部機器制御情報を、電話回線などを介して取得したり、または外部機器から受信するなどして記憶し、この外部機器制御情報に基づいて外部機器を遠隔制御することができる。すなわち、内蔵のアプリケーションプログラム(以下、単に「アプリケーション」という)を変更することで、通常は携帯電話として使用する端末本体を、複数の外部機器を遠隔操作するリモートコントロール(以下、単に「リモコン」という)端末として用いることができる。
 上記特開2001-36652号公報に開示されている携帯電話端末によると、各外部機器に対応するそれぞれの外部機器制御情報に基づいて、1台の携帯電話端末で複数の外部機器を遠隔操作できる。したがって、複数の外部機器のそれぞれについて個別のリモコン端末を複数使い分ける煩雑な操作が必要なく、ユーザにとっての利便性を高めることができる。
 このような、遠隔制御する複数の外部機器を切り替えるリモコン機能を、上述したマルチタスク処理が可能な携帯端末にて実現すれば、各リモコンのアプリケーションをいちいち一旦終了させて次のリモコンのアプリケーションを起動させる必要はない。すなわち、複数のアプリケーションを1つの端末で同時に起動させて、その中から、使いたい任意のリモコンのアプリケーションに適時切り替えて使用できる。
 しかしながら、複数のアプリケーションを頻繁に切り替えて使用する場合には、その切り替え操作は煩雑なものとなる。
 そこで、携帯端末に上述したマルチウィンドウの機能を組み合わせれば、複数のウィンドウに、複数のアプリケーションを操作するUIをそれぞれ再現することも可能になる。このようにすれば、複数のアプリケーションを切り替えて使用するのではなく、1画面上で同時に使用できる。
 例えば、図14(A)に示すような、テレビのリモコン端末単独であれば、図14(B)に示すように、例えばタッチパネル200を備える携帯端末100上に、テレビリモコンアプリケーションのUIを、その操作性を維持したまま再現できる。また、図14(C)に示すような、エアコンディショナーのリモコン端末単独の場合も同様に、図14(D)のように、タッチパネル200を備える携帯端末100上に、エアコンディショナーリモコンアプリケーションのUIを、その操作性を維持したまま再現できる。さらに、それぞれのアプリケーションのUIを、XMLをベースとして記述すれば、他メーカの端末などにアプリケーションを移植しても、UIを記述したXMLのファイルを加工するだけでほとんど同じUIを容易に再現できる。
 しかしながら、上述の例において、テレビの視聴中にエアコンディショナーの操作を行う場合、テレビもエアコンディショナーも頻繁な操作を要するため、両者のアプリケーションを、マルチタスクおよびマルチウィンドウの機能を用いて、表示部の表示領域を分割して同時に表示したとする。この場合、各アプリケーションは単独で使用することを想定したUIしか備えていないため、各UIをそのまま同時表示すると、図15(A)~(D)に示すような状態になる。
 図15(A)~(D)は、マルチタスクおよびマルチウィンドウの機能を実装した携帯端末100で2つのアプリケーションのUIを同時表示した様子を示す図である。図に示す例においては、タッチパネル200の表示部の表示を上下に分割した各ウィンドウ内で、それぞれのUIをそのまま再現したため、各UIとも一部しか表示されていない。画面上に表示しきれない部分でも操作ができるように、各ウィンドウの右端にはスクロールバーを備えている。
 例えば図15(A)に示す状態で、テレビの音量を調節したい場合には、ユーザは、テレビリモコンUIのウィンドウのスクロールバーを移動して、図15(B)に示すようにテレビリモコンUIの表示範囲を移動させなくてはならない。同様に、例えば図15(C)に示す状態で、エアコンディショナーの温度を調節したい場合、ユーザは、エアコンディショナーリモコンUIのウィンドウのスクロールバーを移動して、図15(D)に示すようにエアコンディショナーリモコンUIの表示範囲を移動させなくてはならない。さらに、マルチウィンドウで複数のアプリケーションを起動する場合、UIを重畳表示する際は、まず入力するウィンドウを選択してアクティブにしてから入力操作を開始しなくてはならない。
 特に、携帯端末の場合は、端末本体が非常に小さく設計されるため、タッチパネルで構成するUIの場合も物理的なキーで構成するUIの場合も、UIとして利用できる領域は極めて制限されている。したがって、リモコンなどのアプリケーションのUIを構成する操作部は、もともと最小に近い大きさで設計されるのが一般的である。そのため、複数のアプリケーションのUIを同時表示する際に、各UIをそれぞれ全体的に縮小して同時に表示するのは現実的ではない。
 このように一画面用にデザインされたUIをマルチウィンドウで表示した場合、その操作性は悪化してしまう。
 したがって、かかる事情に鑑みてなされた本発明の目的は、複数のアプリケーションプログラムのユーザインタフェースを同時に実現し、かつ各ユーザインタフェースの操作性を維持できるユーザインタフェース生成装置を提供することにある。
 上記目的を達成する第1の観点に係るユーザインタフェース生成装置の発明は、
 アプリケーションプログラムに基づいて各種の機能を実現するアプリケーションプログラム実行部と、
 前記アプリケーションプログラムに基づく所定の機能の実行を前記アプリケーションプログラム実行部に指示するためのユーザインタフェースを生成するユーザインタフェース生成部と、
 前記ユーザインタフェース生成部により生成されるユーザインタフェースを表示する表示部と、
 前記ユーザインタフェースの構成要素であるユーザインタフェースオブジェクトを定義するユーザインタフェースオブジェクト定義情報を含むユーザインタフェース定義ファイルを格納する記憶部と、を備え、
 前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、当該指示された複数のユーザインタフェースの各々に対応して前記記憶部に格納されたユーザインタフェース定義ファイルに含まれるユーザインタフェースオブジェクト定義情報を取捨選択し、選択されたユーザインタフェースオブジェクト定義情報に基づいて合成ユーザインタフェースを生成するユーザインタフェース合成処理を行うことを特徴とするものである。
 第2の観点に係る発明は、第1の観点に係るユーザインタフェース生成装置において、
 前記ユーザインタフェースオブジェクト定義情報は、該ユーザインタフェースオブジェクトと、該ユーザインタフェースオブジェクトを含むユーザインタフェースに含まれる他のユーザインタフェースオブジェクトとの関係を示すユーザインタフェースオブジェクト属性情報を含み、
 前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、前記表示部においてユーザインタフェースを表示する所定の表示領域と、前記ユーザインタフェースオブジェクト属性情報とに基づき、前記所定のユーザインタフェースオブジェクト定義情報を取捨選択することを特徴とするものである。
 第3の観点に係る発明は、第2の観点に係るユーザインタフェース生成装置において、
 前記ユーザインタフェースオブジェクト定義情報は、当該ユーザインタフェースを構成する各ユーザインタフェースオブジェクトが有効か無効かを示すユーザインタフェースオブジェクト属性情報をさらに含み、
 前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、前記表示部においてユーザインタフェースを表示する所定の表示領域と、前記ユーザインタフェースオブジェクト属性情報とに基づき、前記所定のユーザインタフェースオブジェクト定義情報を取捨選択することを特徴とするものである。
 第4の観点に係る発明は、第1の観点から第3の観点のいずれか1つの観点に係るユーザインタフェース生成装置において、
 前記ユーザインタフェース定義ファイルは、該ユーザインタフェース定義ファイルに基づいて生成されるユーザインタフェースを識別する識別情報を含み、
 前記ユーザインタフェース生成部は、選択されたユーザインタフェースオブジェクト定義情報を前記識別情報に基づいて加工することを特徴とするものである。
 第5の観点に係る発明は、第1の観点から第4の観点のいずれか1つの観点に係るユーザインタフェース生成装置において、
 前記ユーザインタフェースオブジェクト定義情報は、当該ユーザインタフェースオブジェクトに対するイベント発生時に実行すべき動作内容を示すアクション情報を含み、
 該アクション情報は、他のユーザインタフェースオブジェクト定義情報に含まれる前記ユーザインタフェースオブジェクト属性情報の変更に関する情報を含み、
 前記ユーザインタフェース生成部は、前記合成ユーザインタフェースにおいて前記イベントが発生し、当該イベントの発生を受け付けたユーザインタフェースオブジェクトのユーザインタフェースオブジェクト定義情報に含まれるアクション情報に基づいて前記ユーザインタフェースオブジェクト属性情報が変更された場合、当該変更されたユーザインタフェースオブジェクト属性情報に基づいてユーザインタフェース合成処理を行い新たな合成ユーザインタフェースを生成することを特徴とするものである。
第1実施の形態に係るユーザインタフェース生成装置の概略構成を示すブロック図である。 第1実施の形態に係るユーザインタフェースオブジェクト属性情報である優先度を示す情報を説明する図である。 第1実施の形態によるユーザインタフェース生成部の処理全体を説明するフローチャートである。 図3のユーザインタフェース合成処理についてさらに説明するフローチャートである。 図3のユーザインタフェース生成処理についてさらに説明するフローチャートである。 第1実施の形態において2つのユーザインタフェースを合成した例を示す図である。 第2実施の形態に係るユーザインタフェースオブジェクト属性情報であるユーザインタフェース識別情報を利用したユーザインタフェースの合成を説明する図である。 第2実施の形態によるユーザインタフェース合成処理について説明するフローチャートである。 第2実施の形態において2つのユーザインタフェースを合成した例を示す図である。 第3実施の形態に係るユーザインタフェースオブジェクト属性情報であるユーザインタフェースオブジェクトの有効/無効を示す情報を利用したユーザインタフェースの合成を説明する図である。 第3実施の形態によるユーザインタフェース合成処理について説明するフローチャートである。 第3実施の形態においてユーザインタフェースを更新した例を示す図である。 第3実施の形態においてユーザインタフェースを更新する際の属性情報を説明する図である。 従来のリモートコントロール端末を携帯端末のユーザインタフェースで再現した状態を示す図である。 従来の携帯端末にて2つのユーザインタフェースを合成した例を示す図である。
符号の説明
1 ユーザインタフェース生成装置
10 制御部
12 アプリケーションプログラム実行部
14 ユーザインタフェース取得部
16 ユーザインタフェース生成部
18 ユーザインタフェース合成処理部
20 タッチパネル
22 入力部
24 表示部
30 無線通信部
40 赤外線通信部
50 記憶部
52 アプリケーションプログラム記憶領域
54 ユーザインタフェース定義ファイル記憶領域
56 個別ユーザインタフェースリソース記憶領域
58 共通ユーザインタフェースリソース記憶領域
 以下、本発明の各実施の形態について、図面を参照して説明する。以下の各実施の形態では、本発明のユーザインタフェース(以下、「UI」と記す)生成装置の一例として、各種外部機器の遠隔制御が可能なリモコン機能を実装した携帯電話を想定して説明する。しかしながら、本発明のUI生成装置は携帯電話に限定されるものではなく、例えばノートパソコンやPDAなどの任意の携帯端末などに適用することが可能である。また、本発明の実装を必要とする装置であれば、携帯端末にも限定されることはない。なお、本発明は、複数のUIを同時に使用できるように合成することを主目的とするものであり、各UIにより指示を受けるアプリケーションはリモコン機能に限定されるものではなく、任意の各種アプリケーションに適用することができる。
(第1実施の形態)
 図1は、本発明の第1実施の形態に係るUI生成装置である携帯電話の概略構成を示すブロック図である。
 携帯電話1は、全体を制御する制御部10と、ユーザからの入力を受け付けると共に、各アプリケーションに応じて入力結果などの表示を行うタッチパネル20とを備えている。タッチパネル20は、ユーザからの入力を受け付けるマトリクススイッチなどで構成した入力部22を、液晶ディスプレイなどで構成した表示部24の前面に重畳させて構成する。表示部24は、アプリケーションプログラムに関する表示をする他、ユーザの操作入力を受け付けるUIをUI表示領域に描画して表示する。
 また、携帯電話1は、図示しない基地局と音声通話および電子メールのデータなど各種情報を送受信する無線通信部30と、図示しない各種外部機器と赤外線により通信を行う赤外線通信部40とを備えている。無線通信部30を用いて、携帯電話1は、インターネットや無線等を介して端末外部と各種データの送受信を行う。
 さらに、携帯電話1は、入力された情報および各種アプリケーション等を記憶したり、ワークメモリなどとしても機能する記憶部50を有する。記憶部50は、アプリケーション記憶領域52と、UI定義ファイル記憶領域54と、個別UIリソース記憶領域56と、共通UIリソース記憶領域58とを含む。アプリケーション記憶領域52には、各種のアプリケーションを記憶する。UI定義ファイル記憶領域54には、各UI全体を生成する際の一連の生成ルールを定義するUI定義ファイルを記憶する。また、個別UIリソース記憶領域56は、各アプリケーション固有のUIの生成に使用する画像データや文字列(テキスト)データなどの個別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定義ファイルを保存している場合について説明する。例えば、図示しない外部機器であるテレビ受像機を携帯電話1にて遠隔制御するテレビリモコンアプリケーションに対応して、テレビリモコンUI定義ファイルをUI定義ファイル記憶領域54に記憶する。同様に、図示しない外部機器のエアコンディショナーを携帯電話1にて遠隔制御するエアコンディショナーリモコンアプリケーションに対応して、エアコンディショナーリモコンUI定義ファイルをUI定義ファイル記憶領域54に記憶する。
 本実施の形態では、UI定義ファイルを記述する言語の例として、XML言語をベースにしたUIML(User Interface Markup Language)の形式に従って説明する。このUIMLファイル形式で記述される定義に従って、UI生成部16は、携帯電話1のタッチパネル20の表示部24にUIを表示し、アプリケーション実行部12は、ユーザによる入力部22に対する入力に応じた処理を行う。
 本実施の形態によるUI定義ファイルには、表示部24に描画するUIオブジェクトを定義するUIオブジェクト定義情報を含ませる。UIオブジェクト定義情報は、表示部24に表示するUIを構成する要素であるキーまたはボタンなどのUIオブジェクトを描画するための画像およびテキストを定義する情報、およびそのUIオブジェクトに入力がされた際の(実際にはUIオブジェクトに対応する入力部22の部位に入力がされた際の)動作を定義する情報である。
 本実施の形態では、UIオブジェクトの位置に対応する入力部22に入力がされた際の動作を定義する情報として、UIオブジェクト定義情報に、各UIオブジェクトに対するイベント発生時に各アプリケーション実行部が実行すべき動作内容を示すアクション情報を含める。例えば、テレビリモコンUIの「電源」のUIオブジェクトの位置に対応する入力部22に入力のイベントが発生した場合、テレビリモコンアプリケーションに対して、外部機器のテレビの電源をONまたはOFFにする赤外線信号を発信する指示を出すようアクション情報で定義する。
 さらに、UIオブジェクト定義情報には、複数のUIを合成する際に用いる各UIオブジェクトに関する情報であるUIオブジェクト属性情報を含ませる。本実施の形態においては、UIオブジェクト属性情報として、各UIオブジェクトと他のUIオブジェクトとの関係に基づいて、複数のUIを合成する際に各オブジェクトが表示される優先度を予め定義する。
 図2は、本実施の形態に係るUIオブジェクト属性情報である優先度を示す情報を説明する図である。
 図2(A)は、携帯電話1において、テレビリモコンアプリケーションのみを起動し、テレビリモコンUI定義ファイルに基づいて、テレビリモコンUIをタッチパネル20に表示した様子を示している。図中では、タッチパネル20上のUI表示領域を各UIオブジェクトの属性情報に対応する小領域に概念的に分割した様子を一点鎖線によって表し、各小領域に対応する各UIオブジェクト属性情報を図の右側に列記してある。また、複数のUIオブジェクトをまとめて1つのUIとして扱うことの定義(UI識別情報)をinterfaceのタグを付して示し、“TV1_interface”という値から、これがTV1のリモコンのUIであることが特定できる。なお、図2(A)に示す例では、TV1のリモコンのUIによって、TV1として識別されるテレビ受像機の遠隔操作(制御)を行うことができる。
 本実施の形態では、UIオブジェクト属性情報として、上述した各小領域のUIオブジェクトについての優先度を、priorityの値として予め定義する。図2の例では、priorityの値がゼロのUIオブジェクトは必須のオブジェクトとし、priorityの値が1のUIオブジェクトは重要なオブジェクトとし、それ以降はpriorityの値が増大するほど優先度が低いUIオブジェクトであることを意味する。すなわち、例えば図2(A)の小領域(1)に示す「電源」のキーは必須のキーであるため、priorityの値をゼロとする。また、小領域(2)および(3)のチャンネル選局キー、ならびに小領域(4)および(5)の音量上下キーは重要なキーであるためpriorityの値は1とする。しかしながら、小領域(6)のテンキーは、小領域(2)および(3)のチャンネル選局キーで代替できるため、priorityの値を3とし、優先度を低く設定する。
 同様に、図2(B)は、エアコンディショナーリモコンUIのみをタッチパネル20に表示した様子を示す。エアコンディショナーリモコンUIでは、例えば小領域(1)に示す「設定温度」の表示は必須であり、小領域(2)に示す「電源」のキーは必須のキーであるため、priorityの値をゼロとする。また、小領域(3)および(4)の温度上下選局キーは重要なキーであるためpriorityの値は1とする。しかしながら、小領域(5)および(6)の風向+-キーは他のキーに比べ重要でないためpriorityの値は5とする。さらに、小領域(7)のモードキーおよび小領域(8)のメニューキーは、使用頻度がさほど多くないためpriorityの値を2に設定する。なお、これら複数のオブジェクトがまとまった1つのエアコンディショナー1のリモコンのUIであることが特定できるよう、interfaceのタグの値は“AIR1_interface”とする。図2(B)に示す例では、このリモコンのUIによって、AIR1として識別されるエアコンディショナーの遠隔操作(制御)を行うことができる。
 このように、本実施の形態では、各UIオブジェクトと他のUIオブジェクトとの関係に基づいて定義された優先度情報(priorityの値)を、UIオブジェクト属性情報として、各UI定義ファイルのUIオブジェクト定義情報に予め含ませる。
 次に、図3~5のフローチャートを参照しながら、本実施の形態による複数のアプリケーションのUIを合成する際の動作について説明する。
 図3は、本実施の形態による、UI生成部16の処理全体を説明するフローチャートである。まず、ユーザからの入力部22への操作入力などに基づいてUIを生成する処理が開始すると、UIを提供するアプリケーションからUI定義ファイル(XMLファイル)が指定される(ステップS11)。このUI生成の処理のきっかけとなる動作は、UIを用いるアプリケーションを起動する際のユーザの操作、またはユーザが既にアプリケーションを実行中に、UIを用いる他のアプリケーションをさらに起動する際のユーザの操作などが想定される。
 次に、UI生成部16は、指定されたUI定義ファイルの数が1つか複数かを判定する(ステップS12)。指定ファイル数が1つと判定された場合、UI生成部16は、アプリケーションが複数のUIの合成を要求していないと判断し、指定された1つのUI定義ファイルに対してXMLパース処理(ステップS13)およびDOM化処理(ステップS14)を行う。
 このように、指定されたUI定義ファイルが1つの場合には、それ以降の処理は従来式のUIを生成する処理と同じになる。すなわち、パース処理およびDOM化処理を行ったUI定義ファイルに基づいて、UI生成部16は、UIを生成する処理を行う(ステップS15)。なお、ステップS15のUI生成処理については後述する。次に、UI生成処理により生成されたXMLファイルのUIに基づいて、アプリケーション実行部12は、タッチパネル20の表示部24のUI表示領域にUIを表示する処理を行う(ステップS16)。
 以上の処理により、携帯電話1は、単一のアプリケーションの実行に伴い、単一のUIを表示部24に表示できる。例えば、テレビリモコンのアプリケーションの起動によりテレビリモコン用のUI定義ファイルが指定された場合には、前述の図2(A)に示すようなUIの表示になる。また、エアコンディショナーリモコンのアプリケーションの起動によりエアコンディショナーリモコン用のUI定義ファイルが指定された場合には、図2(B)に示すようなUIの表示になる。
 一方、ステップS12にて、指定されたファイル数が複数の場合、UI生成部16は、アプリケーションが複数のUIの合成を要求していると判断し、複数の各XMLファイルについてXMLパース処理(ステップS17)およびDOM化処理(ステップS18)を行う。ステップS19にて、UI生成部16は、上記パース処理およびDOM化処理が全てのUI定義ファイルについて完了したか否かを判定し、まだ完了していない場合にはステップS17に戻る。
 ステップS19で全てのUI定義ファイルについてパース処理およびDOM化処理が完了したら、UI合成処理部18は、パース処理およびDOM化処理が完了した複数のUIを合成する処理を行う(ステップS20)。なお、ステップS20のUI合成処理についても後述する。
 この後、ステップS20にて合成した合成UI定義ファイルに基づいて、UI生成部16は、合成UIを生成する処理を行う(ステップS15)。次に、アプリケーション実行部12は、生成された合成UIをタッチパネル20の表示部24のUI表示領域に表示する処理を行い(ステップS16)、UI生成の全体的な処理を終了する。
 次に、図4のフローチャートを参照しながら、図3のステップS20のUI合成処理についてさらに説明する。
 UI合成処理が開始されると、UI合成処理部18は、パース処理およびDOM化処理が完了した複数のUIのDOMノードについて、各DOMノードを構成するUIオブジェクトを全て抽出して、各UIオブジェクトの属性情報を解析する(ステップS31)。本実施の形態では、各UIオブジェクトの属性情報として、各UIオブジェクトの優先度情報(priority)を解析する。
 次に、UI合成処理部18は、解析した優先度情報の優先度が最上位(priority=”0”)、つまり表示が必須であるUIオブジェクトを全て抽出し(ステップS32)、当該抽出したUIオブジェクトを用いて、仮のレイアウト処理を行う(ステップS33)。この仮のレイアウト処理は、実際には表示部24にUIオブジェクトを表示せずに、UI合成処理部18内の演算処理により、表示が必須のUIオブジェクトを仮レイアウトとして配列する。
 仮のレイアウト処理が完了したら、UI合成処理部18は、当該仮レイアウトしたUIオブジェクトを配列したUI全体の表示が、表示部24内でUIを表示するための領域であるUI表示領域に収まるか否か判定する(ステップS34)。この判定の結果、UIの表示がUI表示領域に収まらないと判定された場合、この複数のUIは合成UIとして表示できないため、UI合成処理部18は、当該複数のUIの合成処理が失敗した旨を表示部24に表示し(ステップS35)、UI合成処理を終了する。これは、必須のオブジェクトさえも表示できないほど、同一画面上に多数のUIを合成しようとした場合の措置である。
 ステップS34にて、仮レイアウトした必須UIオブジェクトを配列したUI全体の表示が表示部24内のUI表示領域に収まると判定された場合、UI合成処理部18は、これらの優先度が最上位の(表示が必須の)UIオブジェクトを採用することを確定する(ステップS36)。
 次に、UI合成処理部18は、解析された優先度の情報に基づいて、優先度が次に高いUIオブジェクトを全て抽出する(ステップS37)。例えば、今まで抽出して処理したのがpriority=”0”のUIオブジェクトであれば、次はpriority=”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オブジェクトの残りがゼロになったか否か判定する(ステップS41)。優先度情報の解析がまだ終了していないUIオブジェクトの残りがゼロでない、つまりまだ未解析のUIオブジェクトが残っている場合には、ステップS37に戻る。このようにして、UI表示領域が許す限り、またUIオブジェクトが存在する限り、優先度の高い順にUIオブジェクトの選出と確定を繰り返す。
 ステップS41にて、優先度情報が未解析のUIオブジェクトの残りがゼロになった、つまり未解析のUIオブジェクトがもう残っていない場合は、UI合成処理部18は、その時点での合成UIオブジェクトの仮レイアウトを正式なレイアウトとして確定する(ステップS42)。この後は、確定したレイアウトのUIオブジェクトを1つのDOMノードとして集約し(ステップS43)、UI合成処理を終了する。
 なお、ステップ39にて、仮レイアウトしたUIオブジェクトの表示が表示部24のUI表示領域に収まらない場合には、UI合成処理部18は、この時点で抽出されている各UIオブジェクトの中から所定の条件に基づいて取捨選択してから(ステップS44)、ステップS42に移行する。この所定の条件とは、優先度が同等のUIオブジェクトが複数存在し、それら全てがUI表示領域に収まらない場合に備え、各UIオブジェクト同士の関連性、またはUIオブジェクトの表示サイズ等に関連付けて、適宜、取捨選択の条件を予め定義しておく。
 次に、図5のフローチャートを参照しながら、図3のステップS15のUI生成処理についてさらに説明する。
 図5に示すUI生成処理の開始時点では、指定された1つのUI定義ファイルに基づくUI、または複数のUI定義ファイルに基づく合成UIのどちらかが、1つのDOMドキュメント(またはDOMノード)になっている。まず、UI生成部16は、DOMドキュメントに対して表示関連の解析を行う(ステップS51)。これは、UIML形式で記述されたUI定義ファイルでは、structureタグやstyleタグを付された属性などを解析する。次に、UI生成部16は、DOMドキュメントの動作関連について解析を行う(ステップS52)。これは、UIML形式で記述されたUI定義ファイルでは、behaviorタグを付された属性などを解析する。
 次に、UI生成部16は、DOMドキュメントに含まれる表現を、各端末に依存する表現に変換する処理を行う(ステップS53)。さらに、UI生成部16は、ステップS53の変換処理の結果に基づいて、使用するUIオブジェクトのリソースを選定して各属性(プロパティ)を設定する(ステップS54)。この際に必要なUIオブジェクトのリソースは、個別UIリソースとして個別UIリソース記憶領域56に、または共通UIリソースとして共通UIリソース記憶領域58に記憶されている。この後、UI生成部16は、各UIオブジェクトを含むUIのプロット処理を行う(ステップS55)。これによりUIの生成処理は終了し、この後は図3のステップS16に移行して、UIの表示処理を行う。
 以上のようにすることで、例えば図2(A)に示すテレビリモコンUIと、図2(B)に示すエアコンディショナーリモコンUIとの2つのUIを合成すると、図6に示すような合成UIが生成される。図6に示す合成UIは、タッチパネル20を上下2つの領域に分割して、上半分にテレビリモコンUIのUIオブジェクトを、また下半分にエアコンディショナーリモコンUIのUIオブジェクトを配置している。ここでは、テレビリモコンUIについてはpriorityが”0”から”1”までのUIオブジェクトを抽出して、エアコンディショナーリモコンUIについてはpriorityが”0”のUIオブジェクトのみを抽出してUIを合成している。このように、本実施の形態では、2つのXMLファイルを解析して、優先度の高いUIオブジェクトのみを自動配置して複数のUIを合成する。これによりユーザは複数のアプリケーションまたは当該アプリケーションに基づくUIを切り替えることなく、複数のUIを同時に利用することができる。
(第2実施の形態)
 次に、本発明の第2実施の形態に係るUI生成装置によるUI合成処理について説明する。本実施の形態では、上述した第1実施の形態において、UIオブジェクト定義情報に含まれる、複数のUIを合成する際に用いる各UIオブジェクトに関する情報であるUIオブジェクト属性情報を変更する。
 上述した第1実施の形態では、UIオブジェクト属性情報として、各UIオブジェクトと他のUIオブジェクトとの関係に基づいて、複数のUIを合成する際に各オブジェクトが表示される優先度を予め定義した。本実施の形態では、第1実施の形態のUIオブジェクト属性情報と合わせて、UIオブジェクトを構成要素とするUIの識別情報を定義する。
 図7は、本実施の形態に係るUI識別情報を利用したUIの合成を説明する図である。本実施の形態では、図7の右側に示すように、図2で説明したUIオブジェクト定義情報の他に、各UIオブジェクトに付すべきテキスト情報(text)をUIオブジェクト属性情報として付加する。また、UI識別情報(Interface id)に、当該UIを示すテキスト情報(particular_name)を付加する。
 このUIを示すテキスト情報(particular_name)は、XML形式で記述されたUI定義情報において、必要に応じてUIオブジェクトなどに表示することで当該UIオブジェクトが属するUIを特定することのできる名称などを、テキストやアイコンへのリンクなどで記述した情報である。例えば、図7の右側にてUI識別情報(Interface id)に、破線で囲んで示したparticular_name=”テレビ1”というUIを示すテキスト情報を付加し、(1)~(6)の一連のUIオブジェクトが「テレビ1」のUIを構成するものであることを示す。同じく、破線で囲んで示したparticular_name=”○製エアコンディショナー”というUIを示すテキスト情報を付加し、(1)~(8)の一連のUIオブジェクトが「○製エアコンディショナー」のUIを構成することを示す。また、各テキスト情報(text)は、UIオブジェクトを表示部24に表示する際に、必要に応じて当該UIオブジェクトの表示の上または近傍などに付すことのできる名称などをテキストで記述した情報である。
 これらのUIを示すテキスト情報を利用することで、複数のUIを合成する際に、合成UIとして表示されたキーやボタンなどが、どのUIに属するものなのかを容易に判別できる。
 次に、図8のフローチャートを参照しながら、本実施の形態による、図3におけるステップS20のUI合成処理について説明する。図8に示す本実施の形態によるUI合成処理は、図4で説明した第1実施の形態のステップS42にてUIオブジェクトのレイアウトを確定した後に、UIを示すテキスト情報などによるUI加工処理(ステップS71)を追加したものである。
 ステップS71のUIを示すテキスト情報などによるUI加工処理では、例えば、複数のUIを合成するにあたり、各UIオブジェクトの属性情報を解析した際に、複数のUIの間で、同じ文言のテキスト情報(text)を有するUIオブジェクトがあるか否かを判定する。異なるUIの間で同じテキスト情報のUIオブジェクトがある場合、そのままで合成UIを生成すると、ユーザは、同じテキスト情報を有する複数のUIオブジェクトがそれぞれどのUIに属するUIオブジェクトなのか判別し難くなる。したがって、異なるUIの間で同じテキスト情報のUIオブジェクトがある場合、UI合成処理部18は、当該UIオブジェクト上またはその周辺にUI識別情報の各テキストを付す。
 例えば、図7に示す例では、テレビリモコンUIとエアコンディショナーリモコンUIとの合成UIを生成したが、2つのUIの各UIオブジェクトについてテキスト情報を解析すると、どちらのUIにおいても”電源”の同じテキスト情報が存在する。その他には、どちらのUIにおいても存在する同じテキスト情報はない。したがって、この”電源”のUIオブジェクトを表示する際には、そのそばに当該UIオブジェクトが属するUIのUI識別情報に付加されているテキスト情報(particular_name)も付す。
 このようにすれば、図7左側に示すような合成UIが生成される。図6で説明した合成UIでは、「電源」のUIオブジェクトには、単に「電源」のみが表示されるため、ユーザは、何のUIの電源なのか一見して判別し難い。しかしながら、図7に示す合成UIでは、ユーザは、各電源のUIオブジェクトがそれぞれ何のUIに属するUIオブジェクトなのか一見して判別できる。
 本実施の形態の変形例として、同じテキストのUIオブジェクト上またはその付近にUI識別情報に付加されているテキストを付す以外に、種々の態様が考えられる。例えば、図9(A)に示すように、UI表示領域を、各UIのUI識別情報に基づいて、UIごとに区分けの描画または色分けなどにより分割表示し、分割した各表示領域内の邪魔にならない箇所に、UI識別情報に付加されている各テキストを表示してもよい。
 また、図9(B)に示すように、各UIオブジェクトのテキスト情報に同じものがあるか否かに関わらず、全ての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の右側に示すように、図7で説明したUIオブジェクト定義情報に、さらに合成UIを構成する各UIオブジェクトの有効/無効の情報(com_effect)をUIオブジェクト属性情報として付加する。
 この各UIオブジェクトの有効/無効の情報(com_effect)は、値が”YES”になっている場合、当該UIオブジェクトは「有効」として扱い、また値が”NO”になっている場合、当該UIオブジェクトは「無効」として扱う。この情報が有効になっているUIオブジェクトは、UI合成の際に表示部24のUI表示領域に表示して、当該表示に対応する部位にて入力部22への入力を受け付ける。一方、この情報が無効になっているUIオブジェクトは、UI合成の際に表示部24のUI表示領域に表示せず、入力部22への入力も受け付けない。
 例えば、図10(A)に示す例では、テレビ1のリモコンUIを構成する(1)~(7)のUIオブジェクトのうち、UIオブジェクトの有効/無効の情報(com_effect)が有効(”YES”)なのは、(1)の「電源ON」のUIオブジェクトのみである。したがって、UI表示領域には、テレビリモコンUIを構成する各UIオブジェクトのうち、電源ONのキーのみを表示する。また、エアコンディショナーリモコンUIを構成する(1)~(9)のUIオブジェクトのうち、UIオブジェクトの有効/無効の情報(com_effect)が有効(”YES”)なのは、(2)の「電源ON」のUIオブジェクトのみである。したがって、UI表示領域には、エアコンディショナーリモコンUIを構成するUIオブジェクトのうち、電源ONのキーのみを表示する。
 また、本実施の形態では、第1実施の形態で説明したUIオブジェクト定義情報に含まれるアクション情報に、各UIオブジェクトに対するイベント発生時にアプリケーション実行部12が実行すべき動作として、各UIオブジェクトの有効/無効を変更(更新)する情報を含める。このアクション情報に基づいて、アプリケーション実行部12は、所定のUIオブジェクトに対するイベント発生に応じて、所定のUIオブジェクトの有効/無効の情報(com_effect)を、有効から無効(“YES”から”NO”)へ、または無効から有効(”NO”から“YES”)へと更新できる。
 次に、図11のフローチャートを参照しながら、本実施の形態による、図3のステップS20のUI合成処理について説明する。図11に示す本実施の形態によるUI合成処理は、図8で説明した第2実施の形態において、ステップS31でUIオブジェクトを抽出して属性情報を解析した後に、有効と解析されたUIオブジェクトのみを抽出する処理(ステップS91)を追加したものである。
 図11のUI合成処理が開始されると、UI合成処理部18は、パース処理およびDOM化処理が完了した複数のUIのDOMノードについて、各DOMノードを構成するUIオブジェクトを全て抽出して、各UIオブジェクトの属性情報を解析する(ステップS31)。本実施の形態では、各UIオブジェクトの属性情報として、第1および第2実施の形態で用いた各UIオブジェクトの優先度情報(priority)を解析する。さらに、各UIオブジェクトの有効/無効の情報(com_effect)を解析し、有効(値が”YES”)と判断されたUIオブジェクトのみを対象UIオブジェクトとして全て抽出する(ステップS91)。
 この後は、対象UIオブジェクトとして抽出した有効なUIオブジェクトについて、第1および第2実施の形態で説明したステップS32以降の処理を続行することで、合成UIを生成することができる。
 本実施の形態では、生成された合成UIを表示部24のUI表示領域に表示した後、所定のUIオブジェクトに対応する入力部22に対して操作入力のイベントが発生した場合、発生したイベントに応じて合成UIを更新する。すなわち、イベントが発生したら、アプリケーション実行部12は、UIオブジェクト定義情報に含まれるアクション情報に基づいて、所定のUIオブジェクトの有効/無効の情報を更新すると共に、図11に示したUI合成処理を再び行い、合成UIを更新する。
 例えば、図10(A)に示す状態で、エアコンディショナーリモコンUIの「電源ON」のUIオブジェクトに対して操作入力のイベントが発生すると、まず、アプリケーション実行部12は、外部機器のエアコンディショナーの電源をONにする赤外線信号を発信するよう指示を出す。さらに、アプリケーション実行部12は、アクション情報に基づいて、図10(A)のエアコンディショナーリモコンUIのUIオブジェクト「電源ON」の属性であるcom_effectの値を“YES”から”NO”に変更すると共に、所定の他のUIオブジェクトのcom_effectの値も変更する。
 図10(B)は、イベント発生後にアクション情報に基づいて、UIオブジェクトの属性であるcom_effectの値が変更された後の状態を示す図である。図10(A)と比べて、図10(B)の右側に示すように、エアコンディショナーリモコンUIの属性com_effectの値のうち、一点鎖線で囲んだものの値が、有効から無効または無効から有効に変化している。このように所定のUIオブジェクトの有効/無効の情報を変更すると共に、UI合成処理を再び行うと、図10(B)の左側に示すように、有効なUIオブジェクトを含む合成UIに更新される。
 このように処理を行うことで、例えば図10(A)に示すように、各UIとも、電源ONにする前は必要のないUIオブジェクトは表示しないようにできるため、限られたUI表示領域を有効に利用できる。さらに、例えば図10(A)のエアコンディショナーリモコンUIにて電源ONのオブジェクトに入力があると、図10(B)に示すように、電源をONにした後に必要なUIオブジェクトが展開される。このように、ユーザの入力に基づいて、UI表示領域に表示されるUIが動的に変化するため、必要なUIオブジェクトを必要な時だけ表示できる。
 また、このようにイベント発生ごとに合成UIを更新する際に、有効なUIオブジェクトについて、第1実施の形態で説明した優先度(priority)の属性に基づく解析も行うため、表示される各UIオブジェクトは、その優先度に応じて順次動的に変化する。
 例えば、図12(A)に示す状態で、テレビリモコンUIのUIオブジェクト「電源ON」に入力があった場合について説明する。「電源ON」への入力のイベント発生により、アプリケーション実行部12は、テレビリモコンUIを構成する所定のUIオブジェクトの有効/無効の情報を更新するため、優先度の高いものはUI表示領域に表示されるようになる。しかしながら、図12(A)に示す状態では、UI表示領域にこれ以上のUIオブジェクトを表示する領域がない。そのため、合成UIの更新時には、UI合成処理部18は、各UIオブジェクトの優先度の属性情報に基づいて、優先度の低いUIオブジェクトは採用せずに合成UIを生成する。
 このようにUIを更新(合成)することで、図12(B)に示すように、テレビリモコンUIにてテレビの電源をONにすることにより、重要なテレビリモコンUIのUIオブジェクトが表示される。一方、エアコンディショナーリモコンUIにおいては、更新の際に重要度の低いUIオブジェクトが表示されなくなり、UI表示領域を一層有効に活用した合成UIを提供できる。
 また、UIオブジェクトの中には、例えば音量を操作するUIオブジェクトのように、「音量+(増加)」または「音量-(減少)」の一方のみでは使い勝手が悪く、両方のUIオブジェクトが揃って初めて意味をなすものがある。したがって、本実施の形態では、上述したように合成UIを更新することでUI表示領域の構成を順次変更する際、対になるべき2つのUIオブジェクトは、採用するか否かを対として決定する。
 具体的には、図13に示すように、UIオブジェクト定義情報に、複数のUIオブジェクトが対であることを示す属性(relate_ID)をUIオブジェクト属性情報としてさらに付加し、その属性の値によって対であるUIオブジェクトを定義する。図13に示す例では、テレビリモコンUIにおいては、(2)の「選局+」および(3)の「選局-」のUIオブジェクトが対であることを属性(relate_ID)により示し、その属性の値を”select_1”として定義している。また、(4)「音量+」および(5)「音量-」のUIオブジェクトも対であることを属性(relate_ID)により示し、その属性の値を”volume_1”として定義している。なお、図13に示す属性情報においては、各UIオブジェクトの有効/無効の属性(com_effect)は省略してある。
 同様に、エアコンディショナーリモコンUIにおいては、(3)「温度+」および(4)「温度-」のUIオブジェクトが対であることを属性(relate_ID)により示し、その属性の値を”set_1”として定義している。また、(5)「風向+」および(6)「風向-」のUIオブジェクトも対であることを属性(relate_ID)により示し、その属性の値を”wind_1”として定義している。
 このようにUIオブジェクト属性情報を設定し、合成UIを更新する場合、優先度(priority)や有効/無効(com_effect)の属性に基づく解析を行う際に、UIオブジェクトを対として扱う属性(relate_ID)も解析する。対として扱う属性(relate_ID)の付加されたUIオブジェクトは、その値に基づいて、採用または不採用を対として決定する。
 このように処理することで、例えば同じ優先度(priority)のUIオブジェクトが多数存在する場合でも、対になるべき2つのUIオブジェクトは、常に、対として表示および消去が行われる。図13に示す例では、エアコンディショナーリモコンUIにおいて、優先度の高い(priority=”1”)「温度+」および「温度-」のUIオブジェクトは対として採用され、優先度の低い(priority=”5”)「風向+」および「風向-」のUIオブジェクトは対として不採用になる。したがって、合成UIを更新した際に、例えば、「音量+」のUIオブジェクトのみが表示されて「音量-」は表示されないという不都合は生じない。
 なお、本発明は、上述した実施の形態にのみ限定されるものではなく、幾多の変更または変形が可能である。例えば、第3実施の形態においては、UIオブジェクト属性情報(relate_ID)を用いることで、対になるべき2つのUIオブジェクトは、対として採用するか否かを決定したが、このようにグループ化するUIオブジェクトは2つに限定されず、3つ以上にもできる。
 また、上述した各実施の形態の携帯電話1は、赤外線通信部40により赤外線通信をすることで外部機器を遠隔制御したが、外部機器との通信は赤外線通信に限らず、例えばBluetooth(登録商標)や無線LANなどの近距離無線通信を採用してもよい。
 上述の各実施の形態では、UIオブジェクト属性情報は、UIオブジェクト定義情報に含まれるものとして説明したが、必ずしもUIオブジェクト定義情報に含まれていなくても良い。例えば、記憶部50のUIオブジェクト定義情報が格納されている領域とは別の領域に、UIオブジェクト属性情報を、対応するUIオブジェクト定義情報と関連付けて格納しても良い。
 また、UIオブジェクト属性情報は、その内容が固定された状態で定義されていなくても良い。すなわち、例えば、制御部10は、UIの使用履歴などに基づいて、UIオブジェクト属性情報の内容を変更しても良い。
 さらに、UIオブジェクト属性情報は、予め定義されていなくても良い。すなわち、例えば、制御部10は、記憶部50に格納されたUI定義ファイルを解析し、当該UI定義ファイルに含まれるUIオブジェクト定義情報の内容やUIオブジェクト定義情報同士の関連性、当該UIの使用履歴などに基づいて、UIオブジェクト属性情報を生成しても良い。
 さらに、上記各実施の形態では、UI生成処理を開始するきっかけとして、UIを用いるアプリケーションを起動するユーザ操作や、すでに何らかのアプリケーションが実行中であるときに、UIを用いる他のアプリケーションを起動するユーザ操作などを例として説明したが、UI生成処理を開始するきっかけの動作はこれらに限定されるものではない。
 例えば、上記各実施の形態において、UI生成装置である携帯電話1は、無線LAN、Bluetoothなどの近距離無線通信やRFタグリーダなどにより、当該UI生成装置周辺に存在する外部機器に関する情報を取得し、取得した情報に基づいてUIを生成するように構成しても良い。つまり、携帯電話1は、携帯電話1周辺にある外部機器の存在を検知することにより、その外部機器に関連するUI(当該外部機器を操作するリモコンアプリケーション用UIなど)を、ユーザ操作に依存せずに自動で生成する。
 また、上記各実施の形態において、UI生成装置である携帯電話1は、GPSなどにより取得した位置情報や時間情報に基づいて、生成するUIを選択するよう構成しても良い。つまり、携帯電話1は、現在位置の変化や予め設定されたスケジュールなどに基づいて、その時その場所で必要なUIを自動で生成する。
 さらに、上述した各実施の形態では、各アプリケーションに対応したUIのUI定義ファイルが予めUI定義ファイル記憶領域54に記憶された場合について説明したが、必要なUI定義ファイルを適宜外部から取得するようにもできる。すなわち、UIを生成する際に、記憶部50に必要なUI定義ファイルが記憶されていない場合には、携帯電話1の通信手段を介して必要なUI定義ファイルをダウンロードして得るようにしても良い。
 この場合、図3のステップS11にて、UIを提供するアプリケーションからUI定義ファイルが指定された際、必要なUI定義ファイルがUI定義ファイル記憶領域54に存在するか否か判定する。必要なUI定義ファイルがUI定義ファイル記憶領域54に存在しない場合、制御部10のUI取得部14は、無線通信部30を介して、図示しない外部機器または外部サーバなどから、必要なUI定義ファイルを取得する。
 上述した各実施の形態では、タッチパネルを備える携帯端末でUIを合成処理する場合について説明した。しかしながら、本発明のUI合成処理においては、タッチパネルは必須の要素ではない。本発明は、例えば機械式のキーを多数備える入力部や、任意のポインティングデバイスなどを有する端末の場合など、UIを合成して使用することが想定される任意の入力部を備える端末に適用できる。
 なお、上述した各実施の形態で用いるUI定義ファイルの一例として、以下にXMLをベースとしたUIML形式のファイルの例を示す。本発明による各UIオブジェクト属性情報を付加した箇所には下線を付してある。また、本例において、UIオブジェクトは<template>タグにより定義されており、したがって<template>~</template>の間の記載がUIオブジェクト定義情報に相当する。
 まず、テレビリモコンUIを構成するUI定義ファイルとして、TV1_interface.uimlのファイルの例を示す。
Figure JPOXMLDOC01-appb-I000001
Figure JPOXMLDOC01-appb-I000002
Figure JPOXMLDOC01-appb-I000003
 次に、エアコンディショナーリモコンUIを構成するUI定義ファイルとして、AIR1_interface.uimlのファイルの例を示す。
Figure JPOXMLDOC01-appb-I000004
Figure JPOXMLDOC01-appb-I000005
Figure JPOXMLDOC01-appb-I000006
Figure JPOXMLDOC01-appb-I000007
 さらに、第3実施の形態において図10で説明した、エアコンディショナーリモコンUIを構成するUIオブジェクトの有効/無効の属性が変更される際のUI定義ファイルとして、AIR2_interface.uimlのファイルの例を一部抜粋して示す。
Figure JPOXMLDOC01-appb-I000008
 本発明によれば、複数のUIを合成し、各UIに対応するアプリケーションの操作に際し重要なUIオブジェクトを自動的に選定して所定のUI表示領域に収まる1つの合成UIを生成できる。したがって、複数のUIを切り替えることなく同時に使用することができる。さらに、マルチウィンドウの場合の様に表示領域(ウィンドウ)を選択する操作や、表示領域内にてスクロールバーを移動させる操作が必要ないため、ユーザの操作負荷を大幅に軽減できる。

Claims (5)

  1.  アプリケーションプログラムに基づいて各種の機能を実現するアプリケーションプログラム実行部と、
     前記アプリケーションプログラムに基づく所定の機能の実行を前記アプリケーションプログラム実行部に指示するためのユーザインタフェースを生成するユーザインタフェース生成部と、
     前記ユーザインタフェース生成部により生成されるユーザインタフェースを表示する表示部と、
     前記ユーザインタフェースの構成要素であるユーザインタフェースオブジェクトを定義するユーザインタフェースオブジェクト定義情報を含むユーザインタフェース定義ファイルを格納する記憶部と、を備え、
     前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、当該指示された複数のユーザインタフェースの各々に対応して前記記憶部に格納されたユーザインタフェース定義ファイルに含まれるユーザインタフェースオブジェクト定義情報を取捨選択し、選択されたユーザインタフェースオブジェクト定義情報に基づいて合成ユーザインタフェースを生成するユーザインタフェース合成処理を行うことを特徴とするユーザインタフェース生成装置。
  2.  前記ユーザインタフェースオブジェクト定義情報は、該ユーザインタフェースオブジェクトと、該ユーザインタフェースオブジェクトを含むユーザインタフェースに含まれる他のユーザインタフェースオブジェクトとの関係を示すユーザインタフェースオブジェクト属性情報を含み、
     前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、前記表示部においてユーザインタフェースを表示する所定の表示領域と、前記ユーザインタフェースオブジェクト属性情報とに基づき、前記所定のユーザインタフェースオブジェクト定義情報を取捨選択することを特徴とする、請求項1に記載のユーザインタフェース生成装置。
  3.  前記ユーザインタフェースオブジェクト定義情報は、当該ユーザインタフェースを構成する各ユーザインタフェースオブジェクトが有効か無効かを示すユーザインタフェースオブジェクト属性情報をさらに含み、
     前記ユーザインタフェース生成部は、複数の前記ユーザインタフェースの生成が指示された場合、前記表示部においてユーザインタフェースを表示する所定の表示領域と、前記ユーザインタフェースオブジェクト属性情報とに基づき、前記所定のユーザインタフェースオブジェクト定義情報を取捨選択することを特徴とする、請求項2に記載のユーザインタフェース生成装置。
  4.  前記ユーザインタフェース定義ファイルは、該ユーザインタフェース定義ファイルに基づいて生成されるユーザインタフェースを識別する識別情報を含み、
     前記ユーザインタフェース生成部は、選択されたユーザインタフェースオブジェクト定義情報を前記識別情報に基づいて加工することを特徴とする、請求項1~3のいずれか1項に記載のユーザインタフェース生成装置。
  5.  前記ユーザインタフェースオブジェクト定義情報は、当該ユーザインタフェースオブジェクトに対するイベント発生時に実行すべき動作内容を示すアクション情報を含み、
     該アクション情報は、他のユーザインタフェースオブジェクト定義情報に含まれる前記ユーザインタフェースオブジェクト属性情報の変更に関する情報を含み、
     前記ユーザインタフェース生成部は、前記合成ユーザインタフェースにおいて前記イベントが発生し、当該イベントの発生を受け付けたユーザインタフェースオブジェクトのユーザインタフェースオブジェクト定義情報に含まれるアクション情報に基づいて前記ユーザインタフェースオブジェクト属性情報が変更された場合、当該変更されたユーザインタフェースオブジェクト属性情報に基づいてユーザインタフェース合成処理を行い新たな合成ユーザインタフェースを生成することを特徴とする、請求項1~4のいずれか1項に記載のユーザインタフェース生成装置。
PCT/JP2009/053227 2008-02-27 2009-02-23 ユーザインタフェース生成装置 WO2009107589A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010500681A JP5200095B2 (ja) 2008-02-27 2009-02-23 ユーザインタフェース生成装置
KR1020107018957A KR101201856B1 (ko) 2008-02-27 2009-02-23 유저인터페이스생성장치
US12/919,351 US8726175B2 (en) 2008-02-27 2009-02-23 User interface generation apparatus

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008-045726 2008-02-27
JP2008045726 2008-02-27
JP2008-088248 2008-03-28
JP2008088248 2008-03-28

Publications (1)

Publication Number Publication Date
WO2009107589A1 true WO2009107589A1 (ja) 2009-09-03

Family

ID=41015983

Family Applications (1)

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

Country Status (4)

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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017527930A (ja) * 2015-07-13 2017-09-21 小米科技有限責任公司Xiaomi Inc. スマート機器をコントロールするための方法、装置、プログラム及び記録媒体
WO2018029738A1 (ja) * 2016-08-08 2018-02-15 三菱電機株式会社 ユーザーインターフェース制御装置及びユーザーインターフェース制御方法
JP2019133561A (ja) * 2018-02-02 2019-08-08 コニカミノルタ株式会社 画像形成装置及びプログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2734348T3 (es) * 2012-11-07 2019-12-05 Rain Bird Corp Sistema de control de riego
JP2015167102A (ja) * 2014-03-04 2015-09-24 株式会社オートネットワーク技術研究所 蓄電モジュール
EP3224705A4 (en) * 2014-11-24 2018-07-11 Hewlett-Packard Enterprise Development LP Detection of user interface layout changes
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 富士通株式会社 情報処理装置、情報共有システムおよび同期制御方法
US11138288B2 (en) * 2019-08-01 2021-10-05 International Business Machines Corporation Priority-based rendering

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005096596A (ja) * 2003-09-25 2005-04-14 Sony Corp 車載装置及び車載装置の制御方法
JP2006350819A (ja) * 2005-06-17 2006-12-28 Toshiba Corp 家電機器制御システム
JP2007066099A (ja) * 2005-08-31 2007-03-15 Canon Inc Gui構成システム、gui構成方法及びプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1113302C (zh) * 1993-07-30 2003-07-02 佳能株式会社 通过通信线路控制设备的控制器和方法
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機器コントロール装置
JP2002278666A (ja) 2001-03-22 2002-09-27 Toyoda Mach Works Ltd 設備制御用操作盤
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
EP1483653B1 (en) * 2002-03-08 2006-05-31 Revelations in Design, LP Electric device control apparatus
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 株式会社ソニー・コンピュータエンタテインメント マルチメディア再生装置およびメニュー画面表示方法
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005096596A (ja) * 2003-09-25 2005-04-14 Sony Corp 車載装置及び車載装置の制御方法
JP2006350819A (ja) * 2005-06-17 2006-12-28 Toshiba Corp 家電機器制御システム
JP2007066099A (ja) * 2005-08-31 2007-03-15 Canon Inc Gui構成システム、gui構成方法及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017527930A (ja) * 2015-07-13 2017-09-21 小米科技有限責任公司Xiaomi Inc. スマート機器をコントロールするための方法、装置、プログラム及び記録媒体
WO2018029738A1 (ja) * 2016-08-08 2018-02-15 三菱電機株式会社 ユーザーインターフェース制御装置及びユーザーインターフェース制御方法
JPWO2018029738A1 (ja) * 2016-08-08 2018-08-16 三菱電機株式会社 ユーザーインターフェース制御装置及びユーザーインターフェース制御方法
JP2019133561A (ja) * 2018-02-02 2019-08-08 コニカミノルタ株式会社 画像形成装置及びプログラム
JP6992557B2 (ja) 2018-02-02 2022-01-13 コニカミノルタ株式会社 画像形成装置及びプログラム

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5200095B2 (ja) ユーザインタフェース生成装置
JP5406176B2 (ja) ユーザインタフェース生成装置
JP5351165B2 (ja) ユーザインタフェース生成装置
JP5680404B2 (ja) ユーザインタフェース生成装置
JP5431321B2 (ja) ユーザインタフェース生成装置
KR101256016B1 (ko) 유저인터페이스 생성장치
KR101256014B1 (ko) 유저인터페이스 생성장치
WO2010027088A1 (ja) 情報処理装置及びプログラム
JPH1023117A (ja) 携帯電話装置
JP3354549B2 (ja) 携帯電話装置
JP4672717B2 (ja) 情報処理装置及び画面表示方法
JP2012079181A (ja) 文書閲覧装置
JP2001273213A (ja) 情報入力システムにおける入力方法及び入力装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09714440

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2010500681

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12919351

Country of ref document: US

ENP Entry into the national phase

Ref document number: 20107018957

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09714440

Country of ref document: EP

Kind code of ref document: A1