The present invention relates to an information processing apparatus which has an application for executing a plurality of types of functions and executes a function designated by the user, and a control method of the information processing apparatus. The information processing apparatus includes an image forming apparatus (e.g., a multi-function peripheral), a communication apparatus, an image input device (e.g., a PC or scanner), and an image capturing device (e.g., a camera).
The user interface of an apparatus having a plurality of functions, like a multi-function peripheral, displays an operation window (UI window) dedicated to each function. The user uses the displayed window to input various instructions and settings (see U.S. Pat. No. 5,565,964).
When setting even the same processing conditions in a conventional apparatus having a plurality of functions, the user must set the processing conditions for each function using an operation window dedicated to the function. For example, in a conventional multi-function peripheral having a copy function, FAX function, and box function, these functions commonly use a print function. More specifically, the copy function prints image data scanned by a scanner. The FAX function prints received facsimile data. The box function includes a box print function of printing data stored in a box.
When the copy function uses the print function, print conditions are set using an operation window for setting print conditions dedicated to the copy function. When the box print function uses the print function, print conditions are set using an operation window for setting print conditions dedicated to the box function. However, print functions for the copy function and box print function include the same setting items. For example, the setting items of the size and type of print paper, the setting item of the number of copies, and the like are print conditions which can be set commonly between the respective print functions. Conventionally, however, these print conditions must be set in operation windows unique to the respective functions. Every time the function to be executed is switched, the same processing conditions need to be set again. A demand has arisen for a more efficient processing condition setting method.
An aspect of the present invention is to eliminate the above-mentioned problems with the conventional technology.
According to an aspect of the present invention, there can be provided a technique of allowing a plurality of functions to use a common user interface window, and permitting or inhibiting predetermined processing in the user interface window in accordance with a designated function.
According to another aspect of the present invention, there can be provided a technique of allowing a plurality of functions to use a common user interface window, and changing the transition of a window display subsequent to the user interface window in accordance with a designated function, thereby more efficiently setting processing conditions.
According to an aspect of the present invention, there is provided an information processing apparatus being capable of executing first and second functions and setting a processing condition of each function by using a user interface, the apparatus comprises: a selection unit configured to select any one of the first and second functions; a display control unit configured to, in a case that the selection unit selects any one of the first and second functions, launch an application common to both the first and second functions and display a user interface window generated based on common data corresponding to the application; and a setting unit configured to set a processing condition of the function selected by the selection unit, using the user interface window, wherein the display control unit switches, in accordance with which of the first and second functions is selected by the selection unit, whether to display a user interface window capable of designating specific processing.
According to another aspect of the present invention, there is provided an information processing apparatus being capable of executing first and second functions and setting a processing condition of each function by using a user interface, the apparatus comprises: a selection unit configured to select any one of the first and second functions; a display control unit configured to, in a case that the selection unit selects any one of the first and second functions, launch an application common to both the first and second functions and display a user interface window generated based on common data corresponding to the application; and a setting unit configured to set a processing condition of the function selected by the selection unit, using the user interface window, wherein the display control unit switches, in accordance with which of the first and second functions is selected by the selection unit, contents of a window displayed after transition from the user interface window.
According to another aspect of the present invention, there is provided a control method of an information processing apparatus being capable of executing first and second functions and setting a processing condition of each function by using a user interface, the method comprises: a selection step of selecting any one of the first and second functions; a display control step of, in a case that any one of the first and second functions is selected in the selection step, launching an application common to both the first and second functions and displaying a user interface window generated based on common data corresponding to the application; and a setting step of setting a processing condition of the function selected in the selection step, using the user interface window, wherein in the display control step, whether to display a user interface window capable of designating specific processing is switched in accordance with which of the first and second functions is selected in the selection step.
According to another aspect of the present invention, there is provided a control method of an information processing apparatus being capable of executing first and second functions and setting a processing condition of each function by using a user interface, the method comprises: a selection step of selecting any one of the first and second functions; a display control step of, in a case that any one of the first and second functions is selected in the selection step, launching an application common to both the first and second functions and displaying a user interface window generated based on common data corresponding to the application; and a setting step of setting a processing condition of the function selected in the selection step, using the user interface window, wherein in the display control step, contents of a window displayed after transition from the user interface window are switched in accordance with which of the first and second functions is selected in the selection step.
Further features and aspects of the present invention will become apparent from the following description of exemplary embodiments, with reference to the attached drawings.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
Embodiments of the present invention will now be described hereinafter in detail, with reference to the accompanying drawings. It is to be understood that the following embodiments are not intended to limit the claims of the present invention, and that not all of the combinations of the aspects that are described according to the following embodiments are necessarily required with respect to the means to solve the problems according to the present invention.
<Basic Description of MFP>
The MFP includes a controller unit 100. A scanner 170 serving as an image input device, and a printer 195 serving as an image output device are connected to the controller unit 100. A console unit 112 is also connected to the controller unit 100. The controller unit 100 performs control to implement a copy function of causing the printer 195 to print an image based on image data scanned by the scanner 170. By connecting the controller unit 100 to a LAN 1006 or public line 1008 (WAN), the controller unit 100 performs control to input/output image information and device information.
More specifically, the controller unit 100 comprises a CPU 101. The CPU 101 launches an operating system (OS) in accordance with a boot program stored in a ROM 103. On the OS, an application program stored in an HDD (Hard Disk Drive) 104 is loaded into a RAM 102 and executed to perform a variety of processes. The RAM 102 is used as the work area of the CPU 101. The RAM 102 stores programs, and also provides a work area and an image memory area for temporarily storing image data. The application program and the like are installed in the HDD 104. The HDD 104 is also used to store image data and the like.
Together with the ROM 103 and RAM 102, a console unit I/F 106, network I/F 110, modem 150, and image bus I/F 105 are connected to the CPU 101 via a system bus 107.
The console unit I/F 106 is an interface with the console unit 112 having a touch panel. The console unit I/F 106 outputs, to the console unit 112, image data to be displayed on the console unit 112. The console unit I/F 106 sends, to the CPU 101, information input by a key operation by the user on the console unit 112 or a touch on the touch panel.
The network I/F 110 is connected to the LAN 1006, and inputs/outputs information via the LAN 1006 from/to each device on the LAN 1006. The modem 150 is connected to the public line 1008, and inputs/outputs information via the public line 1008.
The image bus I/F 105 is a bus bridge which connects the system bus 107 to an image bus 108 for transferring image data at high speed, and converts the data format. The image bus 108 is formed using a PCI bus or IEEE1394 bus. A raster image processor (to be referred to as a RIP hereinafter) 160, device I/F 120, scanner image processor 180, printer image processor 190, image rotator 130, and image codec 140 are arranged on the image bus 108. The RIP 160 rasterizes a PDL code into bitmap image data. The device I/F 120 is connected to the scanner 170 and printer 195, and executes synchronous/asynchronous conversion of image data. The scanner image processor 180 performs correction, modification, and editing for input image data. The printer image processor 190 performs correction, resolution conversion, and the like corresponding to the printer 195 for print image data. The image rotator 130 rotates image data. The image codec 140 compresses multilevel image data into JPEG data, and binary image data into JBIG, MMR, or MH data or the like. Further, the image codec 140 decompresses compressed image data. A USB I/F 196 communicates with a USB memory (not shown) connected to the USB connector of the MFP. Image data which is scanned by the scanner 170 and undergoes predetermined processing by the scanner image processor 180 is stored via the USB I/F 196 in a USB memory connected to the MFP. The USB I/F 196 reads out image data stored in the USB memory, and converts it into image data printable by the printer image processor 190 so that the printer 195 can print the image data.
The hardware configurations of the scanner 170 and printer 195 will be explained with reference to
As shown in
The printer 195 includes a laser driver 321. The laser driver 321 drives a laser emitting unit 322 on the basis of image data input from the controller unit 100. Then, the laser emitting unit 322 emits a laser beam corresponding to the image data. While scanned, the laser beam irradiates the surface of a photosensitive drum 323, forming an electrostatic latent image on the photosensitive drum 323. The electrostatic latent image is visualized as a toner image by toner supplied from a developer 324. In synchronism with the laser beam irradiation timing, a print sheet from a sheet cassette 311 or 312 is fed via a feeding path to between the photosensitive drum 323 and a transfer unit 325. The transfer unit 325 transfers the toner image on the photosensitive drum 323 onto the fed sheet.
The sheet bearing the toner image is sent by a conveying belt to a pair of fixing rollers (heating roller and pressing roller) 326. The pair of fixing rollers 326 press the sheet to fix the toner image on the sheet onto it by heat. The sheet having passed through the pair of fixing rollers 326 is discharged by a pair of discharge rollers 327 to a discharge unit 330. The discharge unit 330 is a sheet processing device capable of performing post processes such as sorting and stapling.
When the double-sided printing mode is set, the sheet bearing the fixed image is conveyed to the pair of discharge rollers 327. Then, the rotational direction of the pair of discharge rollers 327 is reversed to guide the sheet to a re-feeding path 339 by a flapper 328. The sheet is guided to the re-feeding path 339, and fed again to between the photosensitive drum 323 and the transfer unit 325 at the above-described timing, forming a toner image on the lower surface of the sheet.
An LCD display 313 is formed by sticking a touch panel sheet onto an LCD. The LCD display 313 displays the operation window of the MFP, and when the user touches a key displayed on the window, notifies the CPU 101 of the controller unit 100 of the position information. A start key 314 is used to start a document image reading operation or the like. An LED 318 in two, green and red is arranged at the center of the start key 314. The color of the LED 318 represents whether the start key 314 is available. A stop key 315 is operated to stop an operation in progress. An ID key 316 is used to input a user ID. A reset key 317 is used to initialize settings from the console unit 112.
<Description of Concept of Menu Window>
The menu window displays a list of icons representing functions executable in the MFP. By using this window, the user can designate a desired function. A function executable by the MFP will be called a package. Each package is displayed in accordance with a category set for an application which executes the function. Categories include, for example, “send”, “FAX”, “print document”, “print document in medium”, “send document”, and “copy”. “Send” is a data send function of sending data including mail to a destination. “Print document” is a function of reading out data stored in a box and printing it by the printer 195. “Print document in medium” is a function of reading out data stored in the above-mentioned USB memory or the like and printing it by the printer 195. “Send document” is a function of reading out data stored in a box and sending it via a network.
A Multi SEND button 4002 belongs to the category “send”, and designates general data sending. A FAX button 4003 belongs to the category “FAX”, and designates facsimile transmission. A Storage Print button 4004 belongs to the category “print document”, and designates sending of document data stored in the HDD 104. A Media Print button 4005 belongs to the category “print document in medium”, and designates printing of data stored in the USB memory connected to the USB I/F 196. A button 4006 belongs to the category “send document”, and designates sending of data stored in a box. A button 4007 belongs to the category “copy”, and designates copying.
In
In the embodiment, a category and package are in on-to-one correspondence, as shown in
Assume that the user selects package A in
Similarly, assume that the user selects package B in the menu window of
Assume that the user selects package C in the menu window. Upon detecting this selection, the controller unit 100 looks up the association table “package with category” 501 to recognize that package C is associated with category C. The controller unit 100 searches the association table “application with category” 502 to recognize that the application having category C is application B. Then, the controller unit 100 launches application B.
<Editing of Category of Application>
The association table “application with category” 502 in
In
In this state, for example, when the user selects package B in the menu window (
Upon starting-up or detecting that configuration information of the MFP has changed, the controller unit 100 looks up the association table “application with category” 502 to determine whether or not all categories are associated with applications. For example, in
<Description of Concept of Operation>
In
The following example will be explained with reference to
A case where the user selects package A in a logical window 1101 for selecting a package will be explained. Upon selecting package A, the logical window 1101 changes to a logical window 1102 via a logical transition 1001. At this time, if a window transition occurs in accordance with a user operation or upon a change of the state of the MFP, the logical window 1102 changes to a logical window 1103 common to packages A and B via a logical transition 1002. If any setting is made, the logical window 1103 changes to a logical window 1104 common to packages A and B via a logical transition 1003. Further, if a logical transition 1004 occurs in accordance with a user operation or upon a change of the state of the MEP, the logical window 1104 changes to a logical window 1105 dedicated to package A. If a window transition occurs in accordance with a user operation or upon a change of the state of the MFP, the logical window 1105 changes to the logical window 1102 via a logical transition 1005.
A case where the user selects package B in the logical window 1101 for selecting a package will be explained. Upon selecting package B, the logical window 1101 changes to the logical window 1103 common to packages A and B via a logical transition 1012. If any setting is made, the logical window 1103 changes to the logical window 1104 common to packages A and B via the logical transition 1003. Further, if a window transition occurs in accordance with a user operation or upon a change of the state of the MFP, the logical window 1104 changes to the logical window 1103 common to packages A and B via a logical transition 1014.
A case where the user selects package C in the logical window 1101 for selecting a package will be explained. Upon selecting package C, the logical window 1101 changes to a logical window 1122 via a logical transition 1021. If a user operation is done or the state of the MFP changes, the logical window 1122 changes to an unshared logical window 1123 via a logical transition 1022. If a user operation is done or the state of the MFP changes, the logical window 1123 changes to the logical window 1122 via a logical transition 1023.
A concrete example according to the first embodiment will be explained on the basis of the menu window shown in
1. Print Document (corresponding to the Storage Print button 4004 in
(a) function 1: A document stored in the storage (HDD 104) of the MFP main body is designated and printed.
(b) function 2: Deletion of the document stored in the storage is permitted.
(c) function 3: After printing the document in the storage, it is inquired of the user whether or not to delete the stored document.
2. Print Document in Medium (corresponding to the Media Print button 4005 in
(a) function 1: A document stored in the memory (USB memory) connected to the MFP is designated and printed.
(b) function 2: Deletion of the document stored in the memory is inhibited (in order to avoid destruction of the contents of the user's USB memory).
3. Copy (corresponding to the Copy button 4007 in
(“Copy” is not printing a document in the storage, so a window for selecting a document is not displayed.)
[Description of Window Transition Upon Selecting Package a (Storage Print)]
(1) Logical Window 1101
(2) Logical Transition 1001
While the console unit 112 displays the menu window in
Referring to
(3) Logical Window 1102
After launching the application “print document in storage”, the controller unit 100 displays a window corresponding to the logical window 1102 for selecting stored document data, as shown in
The selection window displays buttons in line for selecting a location where document data is stored. A button 1302 displays a document stored in the USB memory. A button 1303 displays a document stored in a document storage area “document folder 00” in the MFP. Buttons for designating “document folder 01” to “document folder 04” are displayed, but no document folder stores document data except “document folder 00”. This can be identified from the icons of “document folder 00” and remaining document folders.
(4) Logical Transition 1002
The logical transition 1002 occurs when the user presses the button 1303 in the state of
(5) Logical Window 1103
When the user presses the button 1303 in
In
In
A selected document list 1501 is highlighted in
This window allows the user to designate test print. When the user presses a print start button 1601, test print of a document selected in
(6) Logical Transition 1003
The logical transition 1003 represents a transition to print processing.
(7) Logical Window 1104
A window representing that printing is underway appears as shown in
(8) Logical Transition 1004
Upon completion of the print processing, the process shifts to the logical transition 1004.
(9) Logical Window 1105
The logical window 1105 is, for example, a window display shown in
A button 1801 is used to designate holding of the printed document without deleting it. A button 1802 is used to designate deletion of the printed document. The window shown in
When the user presses the “hold” button 1801, the window in
[Description of Window Transition Upon Selecting Package B]
(1) Logical Window 1101
The logical window 1101 represents a state in which a menu window as shown in
Assume that the user presses the Media Print button 4005 whose category is “print document in medium”. In response to this operation, the process shifts to the logical transition 1012.
(2) Logical Transition 1012
The controller unit 100 detects that the user has selected the Media Print button 4005 in the menu window of
(3) Logical Window 1103
This window is a modification of the document list window display shown in
In
(4) Logical Transition 1003
If the user presses the print start button 1601 in
(5) Logical Window 1103
The logical window 1103 is the window shown in
(6) Logical Transition 1004
Upon completion of printing in
[Description of Window Transition Upon Selecting Package C]
(1) Logical Window 1101
The logical window 1101 represents a state in which the menu window shown in
(2) Logical Transition 1021
In a case that the controller unit 100 detects that the user has selected the Copy button 4007 in the menu window of
(3) Logical Window 1122
(4) Logical Transition 1022
If the user presses the start key 314 of the console unit 112 while the copy setting window as shown in
(5) Logical Window 1123
(6) Logical Transition 1023
Upon completion of copying in
<Description of Operation (FIG. 10)>
In step S1, the window procedure reads out specification data set in a currently displayed window and specification data of a window corresponding to the category of each package, and obtains difference specification data representing the difference between them. Then, the window procedure sets a default specification into the operation specification. At this time, the operation specification becomes NULL, which indicates that the default specification has not changed. In this case, for example, the difference specification data corresponds to “inhibiting deletion of a printed document stored in the storage medium” in “print document in medium”.
The process advances to step S2 to acquire the category (see
On the other hand, if the category acquired in step S2 is “print document in medium”, then it is determined in step S3 that the difference specification data corresponding to the category acquired in step S2 exists in the difference specification data obtained in step S1, and the process advances to step S5 to read the difference specification which matches the category. The operation specification set as a default in step S1 is rewritten into the difference specification. After that, the process advances to step S4 to execute window display processing in accordance with the rewritten operation specification.
For example, in a case that the category of the window procedure is “print document”, difference specification data corresponding to the category does not exist in step S3, so the process advances to step S4. The window procedure displays the “document list display window” (
<Description of Operation (FIG. 17)>
The window procedure starts this processing upon receiving the completion of printing. In step S11, the window procedure reads out difference specification data representing the difference between specification data set in a currently displayed window and specification data of a window corresponding to the category of each package. Then, the window procedure sets a default specification into the operation specification. At this time, the operation specification becomes a “deletion check window”.
The process advances to step S12 to acquire the category of a package of an application which has launched the window procedure. In this case, assume that the category is “print document”. In step S13, the window procedure determines whether the category acquired in step S12 exists in the difference specification data read in step S11. In this case, a difference specification with respect to “print document” does not exist. Thus, the process advances to step S14, and the window procedure changes the display to the “deletion check window” shown in
To the contrary, assume that it is determined in step S13 that the category of the package “Media Print” acquired in step S12 exists in the difference specification data read in step S11. In this case, the process advances from step S13 to step S15, and the window procedure rewrites the display from the “deletion check window” into the “Print Document in Medium window” in the operation specification. After that, the process advances to step S14 to execute the operation specification. The window procedure changes the display to the “print document in medium” window as shown in
For example, in a case that the category of the window procedure is “print document”, difference specification data corresponding to the category does not exist in step S13, so the process advances to step S14. The window procedure displays the “deletion check window” (
As described above, according to the first embodiment, even if the same state occurs during execution of an application, the procedure can shift to different processing in accordance with the category of the running application.
The second embodiment of the present invention will be described. In the second embodiment, not the window transition but the window display changes. The basic arrangement of an MFP is the same as that described in the first embodiment, and a description corresponding to the description of the concept of the operation and a subsequent description in the first embodiment will be explained.
<Description of Concept of Operation>
An example of changing the window configuration depending on an invoked package though packages A and B use the same window (common window) will be explained. Note that package C does not share any window. The operation differs between a case where package A is selected in a window corresponding to a logical window 2502, and a case where package B is selected. This is the same as in the first embodiment, and a description thereof will not be repeated.
If the user selects package A in a logical window 2501 for selecting a package, the logical window 2502 appears via a logical transition 2510. If a user operation is done or the state of the MFP changes in the logical window 2502, a logical window 2503 common to packages A and B appears via a logical transition 2511. If a user operation is done or the state of the MFP changes in the logical window 2503, a logical window 2504 common to packages A and B appears via a logical transition 2512. If a window transition occurs in accordance with a user operation or upon a change of the state of the MFP, the logical window 2502 appears via a logical transition 2513.
If the user selects package B in the logical window 2501 for selecting a package, the logical window 2503 common to packages A and B appears via a logical transition 2514. If any setting is made, the logical window 2504 common to packages A and B appears via the logical transition 2512. Further, if a window transition occurs in accordance with a user operation or upon a change of the state of the MFP, the logical window 2503 common to packages A and B appears via a logical transition 2515.
If the user selects package C in the logical window 2501 for selecting a package, a logical window 2522 for setting package C appears via a logical transition 2516. If any function is selected, an unshared logical window 2523 appears via a logical transition 2517. If a user operation is done or the state of the MFP changes, the logical window 2522 for package C appears via a logical transition 2518.
<Description of Concrete Example>
As described above, in the second embodiment, the transitions of the logical windows 2503 and 2504 are identical, but the specifications of a window corresponding to the logical window 2503 change depending on the package. A concrete example of this will be examined for three packages having the same external specifications as those in the first embodiment.
1. Print Document (Concrete Example of Package a (Storage Print))
(a) function 1: A document stored in an HDD 104 of the MFP main body is designated and printed.
(b) function 2: Deletion of the document in the storage is permitted.
(c) function 3: Upon completion of printing of a printed document, it is inquired of the user whether to delete the printed document.
2. Print Document in Medium (Concrete Example of Package B (Media Print))
(a) function 1: A document stored in a medium connected to the MFP main body is designated and printed.
(b) function 2: Deletion of the document in the medium is inhibited (in order to avoid destruction of the contents of the user's medium).
3. Copy (Concrete Example of Package C)
(No document exists in the storage, so no document selection window is displayed.)
[Description of Window Transition Upon Selecting Package a (Storage Print)]
(1) Logical Window 2501
A menu window corresponding to the logical window 2501 for a logical description as shown in
(2) Logical Transition 2510
The user selects a Storage Print button 4004 in the menu window of
(3) Logical Window 2502
A window as shown in
(4) Logical Transition 2511
The logical transition 2511 represents a transition upon pressing a button 1303 for selecting “document folder 00” in
(5) Logical Window 2503
The logical window 2503 is a window as shown in
In
A selected document list 2701 is highlighted. In addition, a print setting button 2702 and delete button 2703 which are disabled in
If the user presses a “delete after print” button 2802 in the print setting window, deletion of a selected document is designated upon completion of printing. If the user presses a print start button 2801, a window display (logical window 2504) in
(6) Logical Transition 2512
The logical transition 2512 represents a state transition upon pressing the print start button 2801 in the state of
(7) Logical Window 2504
The logical window 2504 is a window display shown in
(8) Logical Transition 2513
The logical transition 2513 is a transition upon completion of printing in the window display shown in
[Description of Window Transition Upon Selecting Package B]
(1) Logical Window 2501
The menu window shown in
(2) Logical Transition 2510
The user selects the Media Print button 4005 in the menu window to invoke Media Print.
(3) Logical Transition 2514
There is no actual window corresponding to the logical window 2502. More specifically, the document list shown in
(4) Logical Window 2503
The logical window 2503 is a window display as shown in
If the user selects a document list from the displayed list of documents, the display changes to one shown in
A comparison between the window (
If the user presses the print setting button 1904, the print setting window shown in
(6) Logical Transition 2512
If the user presses a print start button 1601 in the window shown in
(7) Logical Window 2504
The logical window 2504 is a window as shown in
(8) Logical Transition 2513
Upon completion of printing in the window display of
As described above, for package B (Media Print), the document list display, and a window displayed upon completion of printing are basically the same as those for package A (Storage Print). However, some of buttons displayed in the window or display contents are different from those for package A. In this fashion, for example, it is possible to inhibit deletion of a document in the medium in “print document in medium”.
[Description of Window Transition Upon Selecting Package C (Copy)]
(1) Logical Window 2501
The logical window 2501 corresponds the display of a menu window as shown in
(2) Logical Transition 2516
The logical transition 2510 is a transition upon selecting the button 4007 (copy) in the menu window.
(3) Logical Window 2522
A copy setting window as shown in
(4) Logical Transition 2517
The logical transition 2517 is a transition upon pressing a start key 314 of a console unit 112 in the copy setting window shown in
(5) Logical Window 2523
The logical window 2503 is a window shown in
(6) Logical Transition 2518
Upon completion of copying in
<Description of Operation in Second Embodiment>
An operation in the second embodiment will also be explained with reference to the flowchart of
The operation in
In step S1, the window procedure reads out specification data set in a currently displayed window and specification data of a window corresponding to the category of each package and obtains difference specification data representing the difference between them. Then, the window procedure sets a default specification into the operation specification. At this time, the operation specification becomes Disp=“delete BTN”, which means that the default specification designates displaying the delete button 2703.
The process advances to step S2 to acquire the category (see
If it is determined in step S3 that difference specification data (for example, inhibiting deletion of a document in the medium in “print document in medium”) corresponding to the category acquired in step S2 exists in the difference specification data read out in step S1, the process advances to step S5 to read a difference specification data which matches the category. The operation specification set as a default in step S1 is rewritten into the difference specification data. In this case, the delete button 2703 corresponding to “delete BTN” is hidden. Then, the process advances to step S4 to display the window (
As described above, according to the second embodiment, while a common window is displayed, part of the display can be changed to implement a function corresponding to each package (application).
[Appendix: Description of Difference Specification Data]
A concrete example of acquiring the above-mentioned difference specification data will be explained.
<Definition of Difference Specifications (FIG. 13)>
A case where difference specification data of the window shown in
In accordance with this definition, the window procedure invokes SpecDifferentialTable. The window procedure is a program which is executed by a CPU 101 to control the display on a display 313 of the console unit 112 in correspondence with the logical window in
If difference specification data to be stored falls within “MAX_DEF_SPEC_SIZE”, SpecDifferentialTable returns OK. If difference specification data to be stored exceeds “MAX_DEF_SPEC_SIZE”, SpecDifferentialTable returns NG. If the window procedure receives NG, it requests data continued from previously received one until it receives OK.
In the embodiment, the invoked currentDifSpec[ ] stores
[default, NULL]+[“Media Print”, <STS=DlgOpen, SetVal=(StorageRepository=USB)+Open=“document list display window”>] example (1)
The basic format of the difference specification data is ([default, specification]+[package ID, difference specification]+ . . . ). [ ] is a difference specification data unit for each package. The first [ ] always holds ([default, NULL]). “STS=DlgOpen” represents that the status is starting-up of the window procedure. After this, a difference in specification data is described if the package which currently controls the display on the display 313 has a difference specification. A package name parenthesized in “ ” represents the ID. The notation of difference specifications describes one difference specification in < >. One difference specification is formed from a trigger and operation specification. The operation specification is described by an operation instruction and its object:
operation specification 1=(operation instruction 1=object 1)
When a plurality of operation instructions are set for one trigger, they are linked with “+”. When a plurality of difference specifications are set for one package, < > are repetitively linked with “+”:
There are the following types of triggers:
status (STS)
press button (BTN)
where each ( ) represents a notation.
There are the following types of operation instructions:
transition (Open)
display (Dips)
hide (Hyde)
enable (Enable)
disable (Disable)
set (SetVal)
where each ( ) represents a notation.
An object corresponding to each operation designates the object ID of the operation. The relationship between operations and objects is
An object name parenthesized in “ ” represents its ID.
In the embodiment, the application “print document in storage” is launched and starts displaying the window shown in
In example (1), [default, NULL] represents a default specification. The subsequent “print document in medium” describes the category of the package. “SetVal=(StorageRepository=USB)+Open=“document list display window” indicates displaying a list of documents in the USB memory.
In a case that there is no difference specification, SpecDifferentialTable returns “NULL” to currentDifSpec. For example, this corresponds a case where the windows in
<Definition of Difference Specifications (FIG. 17)>
A case where difference specification data of the window shown in
While the window shown in
SpecDifferentialTable(currentDifSpec, MAX_DEF13 SPEC_SIZE, TMP, 0);
The invoked currentDifSpec[ ] stores
[default, NULL]+[“print document in storage”, <STS=PrintComp, Open=“deletion check window”>]+[“print document in medium”, <STS=PrintComp, Open=“print document in medium”>] example (2)
In the embodiment, a window (corresponding to the logical window 1104) representing that printing is in progress is common to both the categories “print document” and “print document in medium”, as shown in
More specifically, [<STS=PrintComp, Open=“deletion check window”>] indicates that the display changes to the deletion check window shown in
The relationship with the flowchart in
In step S1, SpecDifferentialTable is invoked to read a default difference specification into the operation specification. In this case, the operation specification becomes NULL, which indicates that the default difference specification has not changed. In step S2, the ID of a running application is acquired. In step S3, it is determined whether the same ID as the package ID acquired in step S2 exists in the difference specification data read in step S1. For example, in the above-mentioned example (1), “Storage Print” does not exist, so the process advances to step S4, and the window procedure executes the operation specification (unchanged). As a result, the window procedure is activated to take an initial state.
If the ID of the package which has activated the window procedure is “Media Print”, “Media Print” exists in the difference specification data in example (1) in step S3, so the process advances to step S5. More specifically, [“Media Print”, <STS=DlgOpen, SetVal=(StorageRepository=USB)+Open=“document list display window”>] is detected in the difference specification data. For this reason, the process advances to step S5 to rewrite the operation specification into (SetVal=(StorageRepository=USB)+Open=“document list display window”). Thereafter, the process advances to step S4 to execute the operation specification. In this case, in step S4, the window procedure sets “USB” in the setting value StorageRepository, and displays a window (
Next, the correspondence with
In step S11, SpecDifferentialTable is invoked to read a default difference specification into the operation specification. In this case, the operation specification becomes Open=“deletion check window”. Then, the process advances to step S12 to acquire the package of an application which has launched the window procedure. In this case, the package is “Storage Print” or “Media Print”. Assume that the package is “Storage Print”. In step S13, it is determined whether the package acquired in step S12 exists in the difference specification data read in step S11. Since “Storage Print” does not exist, the process advances to step S14, and the window procedure executes the operation specification Open=“deletion check window”. In response to this, the display changes to the “deletion check window” shown in
In step S13, assume that the package “Media Print” acquired in step S12 exists in the difference specification data read in step S11, like the above-described example (2). In this case, [“print document in medium”, <STS=PrintComp, Open=“print document in medium”>] can be detected in the difference specification data. Hence, the process advances from step S13 to step S15 to rewrite the operation specification Open=“deletion check window” into Open=“print document in medium”. Then, the process advances to step S14 to execute the operation specification. The display changes to the “print document in medium” window as shown in
As described above, according to the first embodiment, even when the same state occurs during execution of an application, the procedure can shift to different processing in accordance with the category of the running application.
A case where difference specification data between the print setting windows in
SpecDifferentialTable(currentDifSpec, MAX_DEF_SPEC_SIZE, TMP, 0);
The invoked currentDifSpec[ ] stores
[default, <STS=DlgOpen, Disp=“delete BTN”>]+[“print document in medium”, <STS=DlgOpen, Hyde=“delete BTN”>]
In this case, “delete BTN” is the ID of a button corresponding to the delete button 2703, and Hyde=“delete BTN” indicates that the delete button 2703 is hidden. That is, it is set not to display the delete button 2703 upon starting the window procedure in “Media Print”.
<Description of Concrete Operation in Second Embodiment>
Upon receiving DlgOpen, the window procedure starts executing the sequence. In step S1, the window procedure invokes SpecDifferentialTable to read a default difference specification to set the operation specification. The operation specification becomes Disp=“delete BTN”. The process advances to step S2, and the window procedure acquires a package which has launched it. At this time, the package is “Storage Print” or “Media Print”. Assume that the package ID=“Storage Print”. In step S3, the window procedure determines whether the acquired package exists in the read difference specification data. Since “Storage Print” does not exist, the process advances to step S4, and the window procedure executes the operation specification Disp=“delete BTN”. In response to this, the window procedure displays, in the window, the delete button 2703 whose ID is “delete BTN”.
If the ID of the package which has activated the window procedure is “Media Print” in step S3, [“print document in medium”, <STS=DlgOpen, Hyde=“delete BTN”>] can be detected in the difference specification data. Thus, the process advances to step S5 to rewrite the operation specification Disp “delete BTN” into Hyde=“delete BTN”. Thereafter, the process advances to step S4 to execute the operation specification. The window procedure hides the delete button 2703 whose ID is “delete BTN” (
In step S21, the display 313 of the console unit 112 displays a menu window as shown in
The process advances to step S24 to display an initial window based on the application. The initial window is the window shown in
For example, for “print document” (Storage Print), a user interface window including the delete button 2703 which instructs deletion of a selected document after printing it is displayed as shown in
Then, the process advances to step S29 to wait for input of an instruction such as a print instruction, send instruction, or copy instruction. Upon receiving an instruction, the process advances to step S30 to execute the processing. If the processing is completed in step S31, the process advances to step 332. In step S32, it is determined based on the category of the function selected in step S22 whether a user interface window to be displayed next differs from the current one. If YES in step S32, the process advances to step S33 to execute different processing. If NO in step S32, the window shifts to a completion window corresponding to the function.
This corresponds the following display control. For example, when printing is completed during execution of an application whose category is “print document”, the window shifts to a print completion window as shown in
The processing in step S26 and that in step S23 correspond to the following display control. More specifically, the processing in step S26 corresponds to a case where an application launched in step S23 is associated with a plurality of categories. It is determined whether it is necessary to permit or inhibit predetermined processing in accordance with a category associated with a designated function in the user interface window. The processing in step S32 corresponds to a case where an application launched in step S23 is associated with a plurality of categories. It is determined whether to display a predetermined user interface window or skip the display after executing the processing in accordance with a category associated with a designated function in the user interface window.
The MFP according to the embodiments includes a plurality of types of functions. The MFP is configured to execute, under processing conditions set via a user interface (console unit 112), a function selected by the user from these functions via the user interface. At least two types of functions among a plurality of types of functions include a setting item of the same attribute (same category). A common window which can be shared between these functions can be provided as a common user interface on the console unit 112, as described above. As the common user interface, the embodiments have exemplified a plurality of types of common user interfaces. However, it suffices to provide at least one common user interface.
For example, a function which has the same processing conditions as those that can be set for a function of printing data stored in the HDD 104 is a function of printing data stored in a removable medium connected to the USB I/F 196. These functions include setting items for setting processing conditions as so-called print conditions including the number of copies, print layout, print density, copy ratio, print paper for use, and finishing. As a user interface available when setting these print conditions, there is provided at least one common user interface which can be shared (common) between these functions. It is also possible to support only one (one type of) common user interface. Even in this configuration, it is desirable to execute the same control as that implemented by the controller unit 100.
For example, prior to displaying a common user interface, it is determined which of the two functions, that is, two types of functions subjected to display of the common user interface (to be referred to as a common UI hereinafter) is designated (selected) by the user. The embodiments have exemplified a configuration in which the controller unit 100 makes this determination. However, the present invention is not limited to this. For example, a determination unit which specifies a function, in accordance with which the user interface changes (a function which accesses the user interface) immediately before displaying a common UI may also be arranged separately from the controller unit 100.
When displaying the common UI, the display contents of the common UI are controlled to reflect the determination result. For example, when it is determined that one of the two types of functions is selected, it is controlled to enable, in the common UI, setting items (print conditions in this example) common to the selected function and the other function. In a case that processing conditions regarding the setting items are accepted via the common UI, they are regarded as processing conditions for the selected function, and the MFP is controlled to operate in accordance with the processing conditions for the selected function. This common UI is controlled to disable (hide, gray out, or hatch) setting items, acceptance of which is permitted for the other function and inhibited for the selected function. In this manner, it is controlled to permit acceptance of the processing conditions of common setting items from a common UI, and inhibit (limit) acceptance of the processing conditions of setting items which can be accepted for only the other function.
In the embodiments, as described above, the controller unit 100 implements the control of limiting the display contents of a common UI on the basis of the result of determination of a function, in accordance with which the UI shifts to a common one. However, the embodiments are not limited to this. In the above-described embodiments, it is controlled which window is to be displayed immediately after displaying the common UI, in addition to the control of the display contents of the common UI. That is, as described above, the controller unit 100 implements the control (shift destination control) of a transition destination window to which the common UI changes. However, even the shift destination control is not limited to this configuration. For example, a controller which controls the shift destination may also be arranged independently of a controller which limits the display contents of the above-mentioned common UI on the basis of a selected function. Even in this case, it is desirable to use the result of determining (specifying) a selected function, as described above. When one function described above is selected, display of a common UI ends, and the other function is selected soon, it is controlled not to display an unshared UI immediately after the common UI. In this fashion, it is controlled in accordance with the next selected function to skip display of a window corresponding to the other function as a display immediately after a common UI. It is controlled to display an unshared UI which is to be displayed after the skipped window, and to accept the settings of processing conditions regarding one function. The shift destination is preferably always controlled regardless of whether it is achieved by a single controller or another controller.
As described at the beginning, the embodiments are also applicable to an electronic device other than the MFP. For example, the embodiments are applicable to even an information processing apparatus which has an application for executing a plurality of types of functions and can execute a function designated by the user. As described at the beginning, the device may also be an image forming apparatus (printing apparatus) such as an MFP, or a cell phone having a telephone function and e-mail function. The device may also be a digital camera having a function of transmitting photo data captured by a camera to a computer, and a function of transmitting photo data stored in a memory card to the computer. The device may also be an information terminal such as a host computer or server computer having the data communication function, e-mail function, and the like. In this way, the embodiments are applicable to various kinds of devices including various data communication apparatus having a plurality of types of functions, an image input device (e.g., a PC or scanner), and an image capturing device (e.g., a camera). Needless to say, the embodiments need not be applied to all the devices. For example, it suffices to apply the embodiments to at least one of the devices.
The embodiments of the present invention have been described in detail. The present invention may be applied to a system including a plurality of devices or an apparatus formed by a single device.
The present invention is also achieved by supplying a software program for implementing the functions of the above-described embodiments to a system or apparatus directly or from a remote place, and reading out and executing the supplied program by the computer of the system or apparatus. In this case, the form of the present invention is not limited to the program as long as a program function is attained.
The present invention is therefore implemented by program codes installed in the computer in order to implement functional processing of the present invention by the computer. That is, the appended claims of the present invention also incorporate a computer program for implementing functional processing of the present invention. In this case, the program may take the form of an object code, a program executed by an interpreter, script data supplied to the OS, or the like as long as the functions of the program can be provided.
As a computer-readable storage medium for supplying the program, various storage media are available, including a floppy disk, hard disk, optical disk, magnetooptical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, and DVD (DVD-ROM and DVD-R).
As another program supply method, the program can also be supplied by connecting a client computer to an Internet homepage via the browser of the client computer, and downloading the program from the homepage to a storage medium such as a hard disk. In this case, the downloaded program may be the computer program of the present invention or a compressed file containing an automatic installing function. The program can also be implemented by grouping program codes which form the program of the present invention into a plurality of files, and downloading the files from different homepages. That is, the appended claims of the present invention also incorporate a WWW server which allows a plurality of users to download the program files for implementing functional processing of the present invention by a computer.
The program of the present invention may be encrypted, stored in a storage medium such as a CD-ROM, and distributed to a user. A user who satisfies predetermined conditions is prompted to download decryption key information from a homepage via the Internet. The user installs the encrypted program in the computer so as to be able to execute it by using the key information.
The functions of the above-described embodiments are also implemented in a form other than one in which the computer executes the readout program. For example, the functions of the above-described embodiments can be implemented when an OS or the like running on the computer performs part or all of actual processing on the basis of the instructions of the program.
The program read out from the storage medium may be written in the memory of a function expansion board inserted into the computer or the memory of a function expansion unit connected to the computer. In this case, the CPU of the function expansion board or function expansion unit performs part or all of actual processing on the basis of the instructions of the program, thereby implementing the functions of the above-described embodiments.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims priority from Japanese Patent Application No. 2008-039095, filed Feb. 20, 2008, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2008-039095 | Feb 2008 | JP | national |
Number | Date | Country | |
---|---|---|---|
Parent | 12864873 | Jul 2010 | US |
Child | 14444730 | US |