The present application claims priority to and incorporates by reference the entire contents of Japanese priority document 2007-153198 filed in Japan on Jun. 8, 2007.
1. Field of the Invention
The present invention relates to a screen editing apparatus that edits contents of an operation screen to be displayed on a displaying unit, a screen editing method that edits contents of an operation screen to be displayed on a displaying unit, and a computer program to cause a computer to function as the screen editing apparatus.
2. Description of the Related Art
It has been known to use a graphical user interface (GUI) screen to display various data thereon or to receive user operations therefrom on a displaying unit.
A GUI can be designed by arranging various components on a screen. Examples of such components include a button that receives a user operation and a frame that displays characters for presenting the user with set contents. Recently, demands for GUI customization are increasing, to allow a user to edit the contents of a GUI screen to create a GUI suitable for their own applications, instead of just to use a GUI provided by a manufacturer.
Japanese Patent Application Laid-Open No. 2005-45370, 2003-150971, and 2003-5825 for example, are known as examples of the GUI customization technologies.
The Japanese Patent Application Laid-Open No. 2005-45370 discloses an image forming apparatus that enables a user to make modifications to a screen that is to be displayed on a liquid crystal displaying unit. By selecting a panel customization mode, the user can make modifications to a screen, such as whether to show or hide, a position, or a size of a function keys on a screen.
The Japanese Patent Application Laid-Open No. 2003-150971 describes a technology that enables a user to edit an operation screen of an electronic device by accessing a server from a user terminal. Examples of the available edits include enlarging/reducing the size of, segmenting, combining, changing position of, or killing (eliminating) a function of an operation button.
The Japanese Patent Application Laid-Open No. 2003-5825 describes industrial equipment that enables a user to customize a GUI by correcting an HTML file defining a layout of a screen.
A plurality of components that are interrelated to each other may be displayed on the GUI. For example, a plurality of buttons may be provided to receive a user selection of set contents from a plurality of options associated therewith. There is also a demand for hiding some of the buttons to limit the available function, so that a user is prohibited from choosing the corresponding options.
However, if those buttons corresponding to only some of the options are hidden, the remaining buttons sometimes can appear unnatural. For example, consider that one of the options must be always selected. If the buttons corresponding to the all of the options are hidden except for the one corresponding to one of the options, that button might appear as if a user can make some operation thereto on the GUI, regardless of the remaining options are substantially chosen. The same thing can be said for other operating elements other than a button.
No technology has been known to solve this problem in an appropriate manner.
It is an object of the present invention to at least partially solve the problems in the conventional technology.
According to an aspect of the present invention, there is provided an apparatus for editing an operation screen to be displayed on a display unit, including an attribute storing unit that stores therein a type attribute indicating a type of a selection component for defining how the selection component having a plurality of options is to be displayed on the operation screen and a display attribute indicating a display status of an operation component representing each of the options; a display attribute modifying unit that modifies a value of the display attribute stored in the attribute storing unit according to an operation from a user; and a type attribute modifying unit that modifies, when a value of the display attribute of any of the options is changed, the type attribute of the selection component having the option to an appropriate value depending on number of the options whose display attributes are set to show.
Furthermore, according to another aspect of the present invention, there is provided a method of editing an operation screen to be displayed on a display unit, including storing a type attribute indicating a type of a selection component for defining how the selection component having a plurality of options is to be displayed on the operation screen and a display attribute indicating a display status of an operation component representing each of the options; modifying a value of the display attribute according to an operation from a user; and modifying, when a value of the display attribute of any of the options is changed, the type attribute of the selection component having the option to an appropriate value depending on number of the options whose display attributes are set to be displayed.
Moreover, according to still another aspect of the present invention, there is provided a computer program product comprising a computer-usable medium having computer-readable program codes embodied in the medium that when executed cause a computer to execute storing a type attribute indicating a type of a selection component for defining how the selection component having a plurality of options is to be displayed on the operation screen and a display attribute indicating a display status of an operation component representing each of the options; modifying a value of the display attribute according to an operation from a user; and modifying, when a value of the display attribute of any of the options is changed, the type attribute of the selection component having the option to an appropriate value depending on number of the options whose display attributes are set to be displayed.
The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings.
Exemplary embodiments of the present invention will be explained in detail below with reference to the accompanying drawings.
A screen editing apparatus according to an embodiment of the present invention enables a user to edit contents of an operation screen that is to be displayed on a displaying unit of some kind of apparatus. The screen editing apparatus may be realized by providing a screen editing function to the operation screen displaying apparatus itself, or causing a computer, such as a personal computer (PC), communicatable with the operation screen displaying apparatus over a communication path e.g., a network to execute a required application program.
The editing function can be realized by the operation screen displaying apparatus that functions as an application server, and is made available to a general client application, such as a web browser on a PC, accessing thereto. Alternatively, a completely independent editing apparatus may be used only to edit operation screen data and to store the data in a recording medium so that the operation screen displaying apparatus can read the operation screen data from the recording medium.
In other words, any hardware may be used to realize the screen editing apparatus as long as the hardware includes elements such as a central processing unit (CPU), a read only memory (ROM), and a random access memory (RAM), and a certain computing capacity.
In the examples described below, the screen editing apparatus is implemented as a PC. An operation screen whose contents are edited with the screen editing apparatus is displayed on the image processing apparatus connected to the PC over a network. To begin with, a configuration of the image processing apparatus will be now explained. The image processing apparatus herein represents an example of an apparatus that displays a screen based on a screen data edited by the screen editing apparatus.
As shown in
Out of these elements, the CPU 11, the ROM 12, the RAM 13, the NVRAM 14, and the communication I/F 17 are connected to a system bus 20. The operation panel 18 and the engine unit 19 are connected to the system bus 20 via a panel I/F 15 and an engine I/F 16, respectively.
The communication I/F 17 can communicate with a PC 40 over a network 30, such as a local area network (LAN). For the communication, any communication circuit may be used, including cabled and wireless circuits.
The image processing apparatus 10 generally includes a hardware module 110, a system service module 120, and an application module 130.
The hardware module 110 includes hardware resources, such as the operation panel 18, the engine, and the memory.
The system service module 120 and the application module 130 are implemented by software.
The system service module 120 is an intermediary module located between the hardware module 110 and the application module 130. The system service module 120 realizes functions to receive operation requests from the application module 130 on behalf of the hardware module 110, to perform arbitrations between the operation requests, and to control the operations based on the operation requests.
A panel control unit 121, shown in
A user interface (UI) customization control unit 122 functions based on a request received from an external screen editing apparatus, such as the PC 40 connected thereto over the network 30, to provide a GUI data that is used for displaying a screen on the image processing apparatus 10 to the external screen editing apparatus, so that the GUI data can be edited. The UI customization control unit 122 also functions to set the edited data to the image processing apparatus 10, so that the edited data is used in displaying the screen on the image processing apparatus 10.
The application module 130 functions to operate according to, for example, a user instruction or a command issued by an external apparatus, by controlling the hardware module 110 through the system service module 120. The application module 130 is shown in a singularity in
Obviously, a specific configuration of the application module 130 differs depending on the function to be achieved thereby. The one shown in
The mode control module 132 functions to set an operation mode to the image processing apparatus 10 based on the operation performed on the GUI. The mode control module 132 does not only reflect the operations performed on the GUI to the operating mode as it is, but also performs a pre-prioritization, which prohibits other settings to be set if a given setting has been already set, or a post-prioritization, which cancels other specific settings when a given setting is set.
Operations of the UI module 131 and the mode control module 132 will be now explained in detail.
When the image processing apparatus 10 is started up by, e.g., powered on or reset, the UI module 131 and the mode control module 132 perform predetermined initialization processes, respectively (S11, S12).
The mode control module 132 then requests configuration information of an initial screen that is to be displayed on the operation panel 18 from the UI module 131, based on the settings at startup stored in the nonvolatile memory (S13). The configuration information includes information of screen components, such as a button or a text to be arranged on the screen, display formats thereof, and positions thereof.
In response, the UI module 131 retrieves screen components included in the requested screen, from data representing contents of the displayed screens, which is to be described later (S14). The UI module 131 then requests the panel control unit 121 to display the initial screen having the screen components found in the retrieval (S15). At the same time, the UI module 131 notifies the configuration information of the initial screen to the mode control module 132 (S16).
Configuration information of each screen can be edited by the user, as will be described later. The user can disable a function by deleting (setting to hide) a button representing the function, or prohibit an option from being selected by deleting (setting to hide) a button representing the option. The user can also move or duplicate a button that has been arranged on a screen upon shipment of the apparatus from the manufacturer to the user-desired screen, or arrange a new button on a screen to instruct to perform the user-defined operation sequence or a setting to the apparatus.
Upon receiving the configuration information of the initial screen from the UI module, the mode control module 132 sets a mode suitable for the screen components to be arranged on the screen (S17). More specifically, if the screen component, such as a button, is set to be displayed on the initial screen, the mode control module 132 sets a predetermined initial value to the function corresponding to the screen component. If the screen component is set to be hidden on the initial screen, the mode control module 132 sets to disable the function corresponding thereto.
However, depending on the contents of a screen, a button could be set to be hidden even if a function corresponding thereto is required. For example, in spite that a screen is provided to receive settings relating to printing function, all buttons relating to paper tray selection could be set to be hidden. In such a situation, the mode control module 132 cannot perform a proper setting. Such a situation shall be hereinafter called as “inconsistency” between a function and a display.
When the settings are completed at the step S17, a process is performed to check for the display consistency for that function (S18). If no inconsistency is detected, the startup process is ended at this point, and the system control continues to a process for a normal operation. If the inconsistency is detected, the steps subsequent to the step S19, shown in dotted lines, are the processes executed.
If the inconsistency between a function and a display is detected (S19), the mode control module 132 requests the UI module 131 to display an alarming message, such as “You specified XX function, but no corresponding button is displayed. Do you want to cancel (or make a change for) the XX function? [YES], [NO]” (S20). Upon receiving the request, the UI module 131 requests and causes the panel control unit 121 to display the alarming message to the operation panel 18 (S21). The UI module 131 executes the step S21 independently from the processes up to the steps S16.
The mode control module 132 also notifies the inconsistency error to a management module, not shown, that controls the image processing apparatus 10 (S22). The startup process is then ended. If the user selects “YES” at the alarming message, the system control cancels or changes the setting to resolve the inconsistency, and proceeds to the process for the normal operation. If the user selects “NO”, the system control automatically provides appropriate settings without displaying the button for the inconsistent function, and proceeds to the process for the normal operation.
In other words, regardless of the choice the user makes, the image processing apparatus 10 can be operated with limitations in the displayed contents of the screen. Therefore, the apparatus is prevented from being down for a long time because of the inconsistency between the function and the display.
Based on the processes, the image processing apparatus 10 can display the initial screen on the operation panel 18 at startup, as well as be ready for receiving the user operation therethrough. To change the screen displayed on the operation panel 18 to another, the UI module 131 and the mode control module 132 can perform the step S13 and the subsequent steps, shown in
If the user makes an operation on a section having a button A in the screen displayed on the operation panel 18, for example, the panel control unit 121 detects the user operation and notifies the UI module 131, as shown in FIG. 4 (S31). The UI module 131 recognizes the button A being pressed down based on this notification, and further notifies that the button A is pressed down to the mode control module 132 (S32).
The mode control module 132 recognizes that the button A is pressed down based on the notification issued at the step S32, and makes a change to a function A corresponding to the button A for the pressing operation (S33). For example, if the button A is a toggle button for switching ON/OFF the function A, the ON/OFF status of the function A is switched. If the function A has a plurality of options, one of which is to be selected, the status of the function A is changed so that the option corresponding to the button A becomes selected.
After changing the setting at the step S33, the mode control module 132 notifies the change to the UI module 131 as a response, notifying that the setting has been changed for the function A. This notification functions as a response to the notification of the button A being pressed down (S34). In response to the response, the UI module 131 requests the panel control unit 121 to display a screen with the setting changed for the function A (S35). For example, if the function A is turned ON, the button A is displayed in gray. If another option corresponding to the button A is selected for the function A, a button corresponding to the option that had been selected previously is reset to a normal status, and the button A is displayed in gray.
The image processing apparatus 10 can make an association between a function and another so that, if a setting for one function is changed, the setting for the other function is also changed. For example, if a sorting function of output papers is cancelled, a stapling function is also cancelled in association therewith; or if a biding function is selected, a setting for a multiple-pages-per-sheet is cancelled in association therewith.
After the setting is changed at the step S33, the mode control module 132 retrieves a function associated to the function A (S36). If no associated function is found, then the system control ends the process invoked upon the button A being pressed down. If an associated function is found, a step S37 and subsequent steps shown in dotted lines are performed.
If a function B is found to be associated with the function A (S37), the mode control module 132 issues a notification to the UI module 131, inquiring a show/hide status of a button B corresponding to the function B (S38).
Upon receiving the notification, the UI module 131 retrieves the show/hide status of the button B in the data representing the displayed contents of screens including the button B (S39), and notifies the show/hide status thereof to the mode control module 132 as a response to the inquiry (S40). A show/hide status is information indicating whether a button is set to be shown, or set to be hidden on a screen. This information has nothing to do with whether the button is included in the screen currently being displayed. The button B, corresponding to the function B, may be also provided in a plurality. The processes for the steps S39, S40 executed by the UI module 131 are performed independently from the steps up to the step S35.
If the button B is set to be shown upon receiving the response at the step S40, the mode control module 132 can change the setting for the function B. Thus, the mode control module 132 changes the setting of the function B according to the change made for the function A at the step S33 (S41), and notifies the change to the UI module 131 (S42). If the button B is shown in the screen currently being displayed, in response to the notification, the UI module 131 requests the panel control unit 121 to display a screen with the setting changed for the function B, in the same manner as for the step S35 (S43).
If the button B is set to be hidden at the step S41, it means that the function B is always kept disabled (OFF). Therefore, no setting is changed for the function B in association with the setting change for the function A. Thus, the system control ends the process at this point. The same can be said when the button corresponding to the function B is provided in a plurality, and the button, corresponding to an option that is to be selected according to the setting change for the function A, is set to be hidden.
Moreover at the step S33, the mode control module 132 performs an exclusive control for a function. For example, assume that a limitation is given so that the function A is prohibited from being turned ON while a function X is ON. In this situation, if the mode control module 132 receives the notification of the button A being pressed, the setting for the function A should be turned ON. However, because the function X is set to ON, the mode control module 132 ignores the notification and does not change the setting for the function A. Therefore, this exclusive control could prevent the setting for the function A from being changed. In such a situation, the mode control module 132 notifies the UI module 131 that the setting has not been changed at the step S34.
Similar processes are executed if an operational component other than a button on the GUI is operated.
The processes enable the image processing apparatus 10 to provide settings for various functions depending on the operations performed on the screen displayed on the operation panel 18. Moreover, even if the settings for a plurality of functions are associated with each other, a function can be kept disabled or an option can be prohibited from being selected for the function corresponding to a button that is set to be hidden.
In the image processing apparatus 10, any user having a predetermined privilege can freely edit a screen to be displayed on the operation panel 18. According to the first embodiment, this editing operation can be performed by accessing the image processing apparatus 10 using a dedicated client application from the PC 40. In the image processing apparatus 10, the UI customization control unit 122, shown in
A GUI edition screen 200, shown in
In the GUI edition screen 200, tabs 210 allow the user to select which application module (hereinafter, “application”) provided to the image processing apparatus 10 to edit. In the example shown in
A screen list displaying section 220 is provided to list up GUIs used in the application that is selected on the tab 210 in a tree, and the user can select a GUI to edit from this list. Contents of the selected screen are displayed in a preview displaying section 230. In
The preview displaying section 230 displays a preview of a screen to be displayed on the operation panel 18 after the user makes editions. When the user wants to edit display status of an operation component, such as a button, for example, the user can select the component by clicking on the operation component in the preview displaying section 230.
A property displaying section 240 and a show/hide displaying section 250 display information relating to the current status of the edited operation component that is selected on the preview displaying section 230.
In
In the show/hide displaying section 250, a “show” button 251 and a “hide” button 252 are displayed to allow the user to specify whether the button to be edited is to be shown or to be hidden on the operation screen. The button corresponding to the current setting is displayed in gray. In the example shown in
When the show/hide setting is changed for a button representing one of the options provided to a selection component, a type of the entire selection component can be changed in association with the change of the show/hide setting. This is the main characteristic of this embodiment, and will be described later in detail. Such type change of the entire selection component, performed in association with the change in the show/hide setting of the button, is also immediately reflected onto the image in the preview displaying section 230.
If a button is set to be hidden, the button will be deleted from the preview displaying section 230, thus preventing the user from clicking thereon subsequently. Therefore, although not shown, the GUI edition screen 200 includes a button for showing a list of operation components, regardless of the show/hide setting thereof, included in the data of the screen that is selected from the screen list displaying section 220. Therefore, if the user wants to edit a hidden operation component, the user can select the component to be edited from this list.
If the user presses a save button 262, the contents of the screen edited on the GUI edition screen 200 are stored to an arbitrarily file. In response to the pressing operation on the save button 262, the edited contents may be also reflected immediately onto the screen displayed on the image processing apparatus 10.
If the user presses a read button 261, contents of a screen edited in the past may be read from the arbitrarily file so as to enable editions thereof. In response to the pressing operation on the read button 261, it is also possible to read a set of information currently being used for displaying screens on the image processing apparatus 10.
The screen configuration information shown in
In addition to the selection component data, the screen configuration information may include data, such as data representing a fixed message or image, or data representing a displaying frame for showing parameter vales to be set thereto. However, only the selection component data is relevant to the characteristic of this embodiment; therefore, the screen configuration information will be explained by being focused on the selection components.
A selection component is a unit of information provided for each of the functions provided to the image processing apparatus 10, and is used for managing the status of buttons used for providing settings to that function. The actual GUI does not necessarily display expressly which buttons are included in a selection component.
Data of each selection component can include options and a type attribute. The options represent settings that can be set to the corresponding function. The type attribute represents a format for displaying the selection component on the GUI screen. Each of the options can be further specified with its show attribute, which is a show/hide attribute of the corresponding button, and other attributes e.g., defining a position or a size thereof.
Amongst these data, the show attribute is set through the show/hide displaying section 250 on the GUI edition screen 200. The attributes such as a position or a size are displayed in the property displaying section 240; however, there may be those that are not displayed therein.
The type attribute of the selection component is automatically set by the client application that implements the GUI editing function on the PC 40, depending on the contents or the number of the options, and the show attribute setting thereof. However, it is not prohibited to temporarily turn off this auto setting, or to enable a manual setting in addition to the auto setting.
Each of the selection components may have any number of the options. The options can define specific set contents, for example, “left side” or “upper side” in the punching function, specifying the position to punch holes. The options may also include an option to turn the function OFF, that is, to disable the function. In
As can be seen in an option 4-A for a selection component 4, another selection component can be provided to an option so that the selection components are arranged hierarchically. In such an arrangement, the selection component 4 is called a higher selection component, and a selection component 4-1, corresponding to the option included in the selection component 4, is called a lower selection component. The selection components can be also arranged in three or more tiered structure. Upon arranging the selection components hierarchically, a value of the type attribute of each of the selection components should be set considering whether the selection component has a higher selection component.
Six formats are possible for the type attribute of the selection component. As shown in
The alternative format is a format that displays a button representing each of the options whose show attributes are set to “show” as an operation component on the screen, and receives a user selection so that one of these options always is selected. In other words, it is not acceptable that none of the options is selected. However, it is acceptable if the “function OFF” option is selected.
The selective format is a format that displays a button representing each of the options whose show attributes are set to “show” as an operation component on the screen, and receives a user selection so that one of these options is selected at most. In other words, in comparison with the alternative format, the selective format permits the condition with none of the options being selected. When none of the options is selected, it is interpreted as an equivalent to the selection of the “function OFF”, indicating that the function corresponding to the selection component is disabled.
In the alternative and the selective formats, basically a plurality of buttons is displayed for a single selection component. However, these buttons do not necessarily have to be arranged laterally, as shown in
The toggle format is a format that displays a single button as an operation component on the screen, and options associated therewith are selected by a toggle. The toggle may be switched between one of the options being selected and the function OFF, or may be switched among the options sequentially.
The feedback format is a format that displays a set content set to a setting item corresponding to the selection component on the screen. In other words, the feedback format displays a value that is currently set in the setting item specified by the selection component. The set content is usually one of the options included in the selection component. The CPU 11 in the image processing apparatus 10 automatically decides as to which option is set to the setting item. In the feedback format, the selection component does not receive a user operation, and the set content thereof cannot be changed by way of a direct user operation. In the feedback format, because the set content is displayed on the screen, there is no direct relationship between the displayed set content and the show attribute of each of the options. (In some situations, the set content is determined depending on the show attribute; therefore, in this sense, it can be said that there is some relationship between the two.)
The alarming format is a format that displays an alarm on a screen that some setting made to a selection component will not be displayed on the operation screen. For example, despite a function requires one of the options, but not the function OFF, to be always selected, the show attributes of the buttons corresponding to all of the options could be set to “hide”. In this setting, one of the options must be selected even though no corresponding button is displayed on the operation screen. The alarming format is mainly used for giving an alarm in such a situation.
The alarming format is mainly used for giving an alarm on the preview displaying section 230 to notify the user that the current GUI content is inappropriate. Therefore, it is possible to prohibit the user from setting a screen having a selection component with the alarming format to the image processing apparatus 10. The display of the alarming format is done independently from the alarming message displayed at the step S21 shown in
The hide format a format that does not display anything for the selection component on the screen, regardless of the contents of its options or the show attributes thereof. In
The PC 40 executes the client application for achieving a screen editing function to realize functions of a screen configuration storing unit 41, an edited-screen displaying unit 42, an operation receiving unit 43, a show attribute modifying unit 44, a type attribute modifying unit 45, and an other attribute modifying unit 46, shown in
The screen configuration storing unit 41 is an attribute storing unit that stores therein the screen configuration information, shown in
The edited-screen displaying unit 42 has a function to display the GUI edition screen 200, shown in
The operation receiving unit 43 functions to receive operations performed by the user, such as a selecting operation of an screen to be edited or a button in the GUI edition screen 200, an instruction to change attribute by way of, for example, the “show” button 251 or the “hide” button 252, and a screen editing operation. The operations can be received with a mouse, a keyboard or the like.
The show attribute modifying unit 44 functions to modify the screen configuration information stored in the screen configuration storing unit 41 accordingly when the operation receiving unit 43 receives an instruction to modify a show attribute. The show attribute modifying unit 44 also functions to notify the change to the type attribute modifying unit 45, and to change the screen configuration information stored in the screen configuration storing unit 41 accordingly when an instruction is given to modify a show attribute from the type attribute modifying unit 45.
Upon being notified from the show attribute modifying unit 44 that a show attribute of an option in the screen configuration information has been changed, the type attribute modifying unit 45 functions to change the value of the type attribute of the selection component having the option (and a higher and a lower selection components belonging thereto) in an appropriate value considering various conditions. It will be described later in detail what value is set under what conditions.
The type attribute modifying unit 45 also functions to change the contents of the screen configuration information stored in the screen configuration storing unit 41 accordingly when the operation receiving unit 43 receives an instruction to modify a type attribute. In this situation, the type attribute modifying unit 45 determines if it is necessary to change the show attribute for the operation component whose type attribute has been changed, or for a higher or a lower setting operation component belonging thereto, depending on how the value of the type attribute has been changed. If it is determined that the change is necessary, the type attribute modifying unit 45 functions to instruct the show attribute modifying unit to change the show attribute. It will be also described later when such an instruction is given.
The other attribute modifying unit 46 functions to give various changes, other than to the show attribute and the type attribute, to the screen configuration information stored in the screen configuration storing unit 41, according to an instruction received by the operation receiving unit 43.
The PC 40 functioning as the screen editing apparatus described above has characteristics in that the display format of a selection component can be specified using a show attribute; and that, if the show attribute of an option is changed through the GUI edition screen 200, the type attribute of the selection component including the option is automatically changed appropriately, considering the value of the changed show attribute of each of the options.
It will be now explained processes executed by the screen editing apparatus to provide the settings, and a specific example of the value of the show attribute change performed by the process.
If the CPU in the PC 40 functioning as a screen editing apparatus detects that a show attribute corresponding to an option has been changed in the GUI edition screen 200 or an instruction thereof has been given while executing the client application, the PC 40 executes a process for setting the type attribute. As described above, the instruction for changing the show attribute is received by the show/hide displaying section 250 for a button corresponding to the option. Either one of a type attribute setting process or a show attribute modifying process, each of which is to be described blow, may be executed first. However, the type attribute setting process makes a reference to a value of a show attribute changed based on the received instruction. Therefore, to simplify the explanation, the type attribute setting process herein is executed after the show attribute is changed.
In the process shown in
If “NO” applies at the step S11, the system control proceeds to a step S13 to determine if the selection component X only include a single option whose show attribute is set to “show”. If “YES” at the step S13, the system control proceeds to a step S14 to change the type attribute of the selection component X to the “feedback” format, and the process is ended. In this situation, for the function corresponding to the selection component X, the option whose show attribute is set to “show” is always selected. This means that it is not necessary to receive a selecting operation, and therefore, it is considered preferable to use the feedback format to display the set content of the item associated with the selection component X. Moreover, if the feedback format is used, no user operation can be received. This realizes a GUI that does not show meaningless operating component to confuse the user.
If “NO” applies at the step S13, the system control sets the type attribute of the selection component X to the “alarming” format, and the process is ended. In this situation, some options need to be displayed for the function corresponding to the selection component X. However, no button is displayed in association with any options. Because no options can be displayed, it is considered that no selecting operation can be performed. Thus, it is considered that the user should be notified.
In the process explained above, the CPU in the PC 40 functions as the type attribute modifying unit 45. When a value of a show attribute of any option has been changed, the process enables the selection component having that option to be given with an appropriate type automatically, based on the number of options, included in the selection component whose show attribute is set to “show”; that is, based on the number of the options whose corresponding buttons are displayed on the GUI. In the process shown in
In the examples shown in
As shown in
If the user changes the show attribute of one of the options (option C) to “hide”, as shown in
If the user further changes the show attribute of the option B to “hide”, as shown in
If the user further changes the show attribute of the option A to “hide”, as shown in
The CPU in the PC 40 may also execute a following type attribute setting process instead of the one in the first example described above.
In the process shown in
If YES at the step S21, the system control proceeds to a step S22 to further determine if the selection component X has the function OFF option, which is used to disable the function, as one of its options. If YES at the step S22, the system control moves to a step S23, and further determines if the show attribute of the function OFF is set to “hide”.
If the show attribute is determined to be set to “hide” at the step S23, the type attribute of the selection component X is set to the “selective” format, and the process is ended.
In this setting, the selection component X assumingly includes a plurality of options whose show attributes are set to “show”, in addition to the function OFF. Moreover, in the process of
If “NO” applies at the step S22 or S23, the system control proceeds to a step S25 to set the type attribute of the selection component X to the “alternative” format, and the process is ended. In this setting, the selection component X should always receive one of the options, thus it is assumed to be preferable to use the “alternative” format for the selection component X. The options belonging to the selection component X might also include a function OFF as one of its options.
If “NO” applies at the step S21, the system control proceeds to a step S26 to determine if the selection component X has one option whose show attribute is set to “show”. If YES at the step S26, the system control proceeds to a step S27 to determine if the selection component X includes the function OFF as one of its options. If YES at the step S27, the system control proceeds to a step S28 to determine if the show attribute of the function OFF is set to “hide”.
If the show attribute of the function OFF is determined to be set to “hide” at the step S28, the type attribute of the selection component X is set to “toggle” format, and the process is ended. In this setting, because the selection component X has the function OFF option and another single selectable option, it is assumed that the user's intention is not to display a button for the function OFF option. Therefore, it can be concluded that it is preferable to provide the selection component X with the toggle format, so that the single option and the function OFF can be selected by a toggle.
If “NO” applies at the step S27 or S28, the system control proceeds to a step S30 to set the type attribute of the selection component X to the “feedback” format, and the process is ended. In this setting, the option whose show attribute is set to “show” will be always selected for the selection component X. This means that there is no need to receive a selecting operation. Therefore, it is assumed preferable to use the feedback format to simply display the content of the selected option. The selected option can possibly be the function OFF.
If “NO” applies at the step S26, the system control proceeds to a step S31, shown in
If YES at the step S31, the system control proceeds to a step S32 to set the type attribute of the selection component X to the “hide” format, and the process is ended. (On this flowchart and hereinafter, the process goes back to
Because the show attributes of all of the options are set to “hide”, other formats can be also used just to display nothing on the GUI. However, when the “hide” format is set to the selection component X, it can be determined that nothing needs to be displayed for the selection component X without referring to each of the options, advantageously simplifying the display process performed by the image processing apparatus 10.
If the selection component X is determined not to include the function OFF option at the step 31, the system control proceeds to a step S33 to set the type attribute of the selection component X to the “alarming” format, and the process is ended. In this setting, one of the options needs to be selected for the function corresponding to the selection component X; however, there is no button corresponding to any one of the options. Thus, no selection can be made or no content can be displayed. Therefore, it is considered preferable to give an alarm to the user.
In the process explained above, the CPU in the PC 40 also functions as the type attribute modifying unit 45. Based on this process, when the show attribute of one of the options is changed, the type attribute of the selection component having the option can be automatically changed to an appropriate value, based on the number of options provided thereto whose show attribute is set to “show”, as well as whether the selection component includes the function OFF option whose show attribute is set to “hide”.
In the examples shown in
As shown in
If the user changes the show attribute of the function OFF option to “hide”, as shown in
From the setting shown in
If the user changes the show attribute of one of the options A or B (B in
If the user changes the show attribute of the option A to “hide” from the setting shown in
If the user changes the show attribute of the remaining option to “hide” from the setting shown in
The transition of the type attribute shown in
The CPU in the PC 40 may also execute a following type attribute setting process instead of those in the first and the second examples described above.
This process according to the third example is basically the same as that according to the second example, except that the flowchart shown in
In the type attribute setting process according to the third example, if “NO” applies at the step S26 in
If YES at the step S41, the system control proceeds to a step S42 to further determine if the selection component X has a higher selection component. The relationship with a higher/lower selection component is created when a selection component is arranged in a hierarchy, as explained above with reference to
If “YES” applies at the step S42, the system control proceeds to a step S43 to determine if, out of the options included in the higher selection component, one that the selection component X belongs has a show attribute set to “show”. If YES at the step S43, the system control proceeds to a step S44 to change the type attribute of the selection component X to the “feedback” format, and the process is ended.
In the third example, it is also assumed that, even if the function OFF option is set to “hide”, the intention of the user was not to eliminate the option itself, in the same manner as in the second example. If all of the options provided to the selection component are set to “hide” and a function OFF is included, the image processing apparatus 10 is caused to operate with the function OFF always being selected. However, it would be a problem if the option of the higher selection component corresponding to the selection component X has a show attribute set to “show”, assuming that the selection component X is not displayed at all, the relationship between that option provided to the higher selection component and the selection component X associated therewith cannot be recognized on the GUI. Therefore, if “YES” applies at the step S43, the “feedback” format is selected so that the option provided to the higher selection component can be automatically associated with the selection component X on the GUI. In this manner, the user can recognize the relationship thereof easily.
If “NO” applies at the step S42 or S43, the system control proceeds to a step S45 to set the type attribute of the selection component X to the “hide” format, and the process is ended. In this setting, because it is not necessary to consider the relationship with the higher hierarchy, it is preferable to provide the selection component X with the “hide” format in the same manner as in the step S32 shown in
If “NO” applies at the step S41, the system control proceeds to a step S46 to determine if the selection component X has a higher selection component and if the show attribute of the option, corresponding to the selection component X, of the higher selecting operation is set to “show”, in the same manner as at the steps S42 and S43. If “YES” applies at the both steps, the system control proceeds to a step S48 to set the type attribute of the selection component X to the “hide” format and set the show attribute of the option corresponding to the selection component X to “hide” at a step S49, and the process is ended.
In this setting, although one of the options needs to be selected for the function represented by the selection component X, nothing can be selected or no options can be displayed. However, in this setting, because the user sets the show attributes of all of the options to “hide”, it is often intended not to use the function represented by the selection component X. In other words, in the higher hierarchy, no options requiring setting of the selection component X (the option corresponding to the selection component X) will not be selected. By performing the steps S48 and S49, the user's intention can be reflected automatically to the GUI. Moreover, if the show attributes of the options are set to “hide” at the higher hierarchy, no options will need to be selected for the function represented by the selection component X. Therefore, even if the selection component X is set to “hide”, it will be no problem for the operations of the image processing apparatus 10.
If “NO” applies at the step S46 or S47, the system control proceeds to a step S50 to set the type attribute of the selection component X to the “alarming” format, and the process is ended. In this setting, because it is not necessary to consider the relationship with the higher hierarchy, it is preferable to provide the selection component X with the “alarming” format in the same manner as at the step S33 shown in
In the process explained above, the CPU in the PC 40 functions also as the type attribute modifying unit 45. When the show attribute of an option has been changed, this process enables the selection component having that option to be specified with an appropriate type automatically, based on the number of options that belong to the selection component and whose show attributes are set to “show”; whether the selection component has a function OFF option whose show attribute set to “hide”; and whether the selection component has a higher selection component.
In the examples shown in
In the beginning, because both of the selection components X and Y are set to the alternative format, buttons are displayed, respectively to enable selections of the options A to C, on the GUI for a function Y represented by the selection component Y. To receive detailed setting, when the option A is selected, buttons are displayed, respectively provided for selecting the options P to R, on the GUI for a function X represented by the selection component X.
If the show attribute of all of the three options are set to “hide” for the selection component X, the type attribute of the selection component X is set to “hide” format according to the steps S48 and S49 shown in
As a result, for the function Y, only these buttons for selecting the options B and C are displayed on the GUI. No buttons are displayed for providing settings for the function X; however, the selection A that will require usage of the function X is not selectable. Therefore, any function not displayed on the GUI will not be used.
The examples shown in
If the show attribute of all of the three options are set to “hide” for the selection component X, the type attribute of the selection component X is set to “feedback” format according to the step S44 shown in
When the process shown in
In the process shown in
If YES at the step S62, the type attribute of the lower selection component is set to “hide” at a step S63, and the show attributes of all of the options provided to the selection component are set to “hide” at a step S64, and the process is ended.
If “NO” applies at the step S61 or S62, the process is ended at the respective steps.
If an option is set to “hide” in the higher selection component, the function represented thereby is not used. Therefore, there is no need to receive settings at the lower selection component. Thus, if the lower selection component is displayed on the GUI, the space would be wasted. By automatically setting the lower selection component to be hidden in association with the “hide” setting of the setting item, the screen editing operation can be advantageously simplified.
In the beginning, the configurations are same as those shown in
The embodiments of the present invention are as described above. It should be needless to say that the configuration of the apparatus, the specific processes, the displayed screen contents or application thereof, the data formats and alike are not limited to those specifically described in the embodiments.
For example, other values may be set as the type attribute in addition to those described for the embodiments. Depending on the user needs, it is also possible to modify the specific value set to the type attribute as appropriate when the value of the show attribute is changed, based on the number of options, whose show attribute is set to “show”, belonging to the selection component; whether the selection component has a function OFF option whose show attribute set to “hide”; and whether the selection component has a higher selection component.
If the second or third examples of the type attribute setting process are to be adopted, the function OFF option can be always selected from the GUI, even if the button corresponding thereto is not displayed on the GUI. Therefore, by setting the show attribute of the function OFF to “hide”, the number of buttons displayed on the GUI can be reduced without limiting the number of options. If the show attribute of the function OFF option is set to be “hide” by the user selection or automatically by default, it is possible to achieve a GUI that can be operated with a reduced number of buttons, without cumbersome editing operations such as setting the show attributes to “hide” one by one. In contrast to the above, if the options other than function OFF are set to “hide”, the option ends up not being selectable. Therefore, it is preferable for these options to be set to “show” by default.
It should be needless to say that the present invention may be applied to any screen editing apparatus for editing a GUI used for apparatus other than the image processing apparatus. For example, the present invention can be used as an apparatus for editing operation screens to be displayed on a displaying unit provided to an electrical apparatus, such as a networked home appliance, a vending machine, a medical appliance, an air-conditioning system, a measuring system for gas, water, or electricity, an automobile, an air plane, or a general-purpose computer
The operation components displayed on the screen is also not limited to the buttons.
The recording medium according to embodiments of the present invention stores therein a computer program for causing a computer to control hardware to operate as the screen editing apparatus described above. It is possible to achieve the same effects as those described in the embodiments and the variations, by reading the computer program from the recording medium and causing the CPU to execute the program. This computer program may also be downloaded, instead of being distributed in the recording medium.
The configurations and variations described above can be combined anyway as long as the combination is not contradictory.
As described above, according to an aspect of the present invention, when a user edits a screen to be displayed on the displaying unit and arranges selection components having a plurality of options that can be set either to be shown or hidden, a screen with a natural look can be achieved with simple operations.
Furthermore, according to another aspect of the present invention, it is possible to cause a computer to operate as the screen editing apparatus so that the same advantage can be achieved.
Although the invention has been described with respect to specific embodiments for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.
Number | Date | Country | Kind |
---|---|---|---|
2007-153198 | Jun 2007 | JP | national |