Window management system

Abstract: There is disclosed a window management system allowing to collectively control plural application programs by a common user interface, regardless whether each program is so constructed as to respond to the message from the user interface. The system is provided with an acquisition unit for acquiring display information of the program, a collective operation instruction unit for instructing a collective operation to the program, a transmission unit for transmitting the instructed operation to the program and a display control unit for displaying the status of the instructed operation in a specified display area.

Description: The present invention relates to a window management system, and more particularly to such system adapted for use in a video conference or the like. The conventional interactive operation apparatus is provided, in the control program (application program) thereof, with means for realizing the interactive operations between the interactive operation apparatus and the user. However, in order to meet the requirement of uniting the independently prepared plural application programs as a single united application, it is desired to externally control each program by communication, and there have been proposed various systems such as OLE (object linking and embedding) from Microsoft and OpenDoc from Apple Computer and utilized in certain softwares. An example is the electronic mail software, in which a document preparing editor, a graphic editor for graphics preparation and a voice input software for voice mail, which are separately prepared, can be utilized in collective manner. On the other hand, there is being developed a groupware, which is a software intended for supporting a group work of plural persons, instead of supporting the personal use of the computer. A typical example is the video conference system utilizing desk-top computers, in which utilized is a paint software that can be viewed and written in by all the participants, corresponding to a whiteboard in the conference room. Also it will be effective if the software program used for personal work can be used in the group work, in eliminating the time required for learning the operations for such software and in anticipating the improvement in work efficiency, based on the accumulated experience on such software. Based on such standpoint, there are being developed certain softwares, called a common window program or a common application program, which are not particularly designed for group work but can be viewed and/or can allow data writing by plural users, such as ShowMe and SharedApp by Sun Soft. The OLE, OpenDoc, ShowMe and SharedApp mentioned above are trade names or registered trade marks of the respective manufacturers. However, in case such conventional common window program is employed as a part of the united program, it is necessary to add the operations for the group work to the program for general use. When such addition is made, the control for providing and eliminating the operating right, indispensable for the group work, can be assigned to the window control program operating under such general program, but the display operations for informing the users of the status of such operating right belong to the general program. Consequently there is encountered a problem of how to construct the user interface specific to such group work. In the above-mentioned systems such as OLE or OpenDoc, a code for controlling the display operation of each program is transmitted from the outside thereof and each program is provided therein with means for recognizing thus transmitted code, whereby the application programs are suitably arranged in a single window and the display can be renewed by means of a management program constituting the main body of the united application, but such systems do not consider ordinary programs not provided with such recognizing means. Consequently, in case of including such programs as the aforementioned common window programs, it has not been possible to manage, under the united interface, the ordinary programs controlled through the common window program and the programs prepared for group work. Also in the ordinary window system, there is already known a window manager program for controlling the separately present window areas, but such window manager program, if used specifically for the group work, results in drawbacks in the matching with ordinary programs and in the convenience of use in ordinary jobs. Furthermore, in the united application, it is sometimes desirable to effect a collective operation for plural programs, and, for such purpose, there is sometimes provided an operation area (window) for collectively controlling the programs, outside the operation window for the respective program. In such case it becomes necessary to inform the user of the correspondence between each operation object in the operating area and the window or program, but there has not been known a simple method for fulfilling such objective. More specifically, such objective can only be attained by constructing each object program so as to have a particular display format for the groupware, or by developing newly a window manage program containing special operations for the united application. Furthermore, in case such collective operation is made possible for the plural programs or plural window, it is desired to identify the selected plural programs in a simple manner, but the windows are scattered all over the entire screen and it is difficult to recognize the selected windows at a glance. Furthermore, in the operation specific to the application program, particularly in the category of groupware, the data and the program are used in common among plural users, so that there is required a user interface for informing the users of the owner of the operating right. Furthermore, as the groupware system has the character of communication means as in the video conference system, it will be convenient if the progress can be recorded. Some voice-input programs for personal use are designed to provide display "in recording" in order to inform the user of the recording state, but the conventional groupware systems are not provided with such user interface capable of displaying the recording state on the window or informing the user, in a simple manner, of the recording state of the various programs as in the progress of the video conference. Also in case of obtaining information on the user who owns the operating right of the common window system, it has been necessary to refer to a user list displayed on another opened window, or to effect an actual input operation on the window currently used in work and to check whether the input operation is accepted. Consequently, for obtaining the information on the owner of the operating right, the user of the common window system is required to effect an additional operation of opening a window of the user list or of pop-up, and such additional operation deteriorates the work efficiency. Also it is often difficult to find the window of the user list if many window are already opened for the work. Also, in the common window system, the position and the size of the common window generated by the client application are managed by the window manager of each work station and can be varied in each work station. Also there is known a system in which a variation in the window size is reflected in other servers only when such variation is made by a server having the operating right, and, in such system, a variation in the common window size is not transmitted to other servers if such variation is made by a server which does not have the operating right. Consequently, since each work station can freely change the size of the common window, the result of operations displayed on the common window of the server (work station) having the operating right may become unobservable on other work stations. Fig. 23 illustrates such situation. The work stations A and B have common windows a, b, and it is assumed that the work station A has the operating right, and that an operation on the window a is transmitted also to the window b for a cooperative work. The window b, being arbitrarily variable in size, may be reduced in size as illustrated, so that the content displayed in an area h of the window a becomes unobservable on the window b. In such situation it is difficult to effect a cooperative work smoothly, utilizing the common window. Also in case of superposing, on a certain window, a permeable window of a same shape, the user is required to designate, with a mouse, the underlying window on which the permeable window is to be superposed. By such window designation there is known the identification code of said window (hereinafter called window ID), and the permeable window is generated, based on the position and size of designated window obtained from said window ID. Such permeable window can be given various functions, for supporting the work desired for the purpose. For example, the permeable window can be given a drawing function, in order to describe comments on the displays on the underlying window. However, in the conventional configuration, there -is required an operation of designating the window, in order to obtain the position information of such window generated by the existing program. Such designating operation is felt unnecessary, particularly if the object window is obvious from the process of the work. For example, if the permeable window is to be superposed on a window to be generated next, the object window is obvious even without the designation by the user, but the window manager has still to be changed in order to obtain the window ID of such object window. Otherwise, it is necessary to write a program controlling all the displayed windows. Such process is tedious and an improvement has therefore been longed for. US-A-5353398 discloses a system including a plurality of networked workstations, in which the operator or workstation performing an input operation is displayed on a window paired with the window of the group working mode. US-A-4974173 also discloses a system including a plurality of networked workstations. An indication of the activities of each of the other users is displayed to each user. Proceedings of the Fourth Symposium on User Interface Software and Technology, UIST'91, 11-13 November 1991, Hilton Head, South Carolina, USA, pages 79-86, Bier E A et al: 'MMM: A User Interface Architecture for Shared Editors on a Single Screen' discloses a multi-user system in which a plurality of users are able to edit the same image. Selected menus listing possible operations for a particular user are displayed to the user. Proceedings of the Fifth Symposium on User Interface Software and Technology, UIST'92, 15-18 November 1992, Monterey, California, USA, pages 151-160, Miller D S et al: 'Telepictive: Computer-Supported collaborative GUI Design for Designers with Diverse Expertise' discloses a multi-user system for manipulating a graphical display in which each user is assigned a different colour. On the graphical display each object selected by the user is highlighted in the relevant colour. In consideration of the foregoing, an object of the present invention is to provide an interactive operation apparatus capable of providing a united interface regardless of the structure of each application program, thereby improving the operability of the users. According to a first aspect of the present invention, there is provided an interactive operation apparatus for operating a plurality of application programs, displayed on display means, through a user interface provided independent of a window display area of said programs, characterised by: acquisition means for acquiring display information of each of said programs said display information including an identification code, a position and a size of a window; display control means for controlling the plural display information acquired by said acquisition means; designation means for designating through said user interface displayed in a window two or more display information; operation instruction means for instructing through said user interface an operation to a program; and transmission means for transmitting said instructed operation to two or more programs corresponding to said two or more display information designated by said designation means. According to a second aspect of the present invention, there is provided a method of operating an interactive operation apparatus for operating a plurality of application programs displayed on display means, through a user interface provided independent of a window display area of said programs, characterised by the steps of: acquiring display information of each of said programs said display information including an identification code, a position and a size of a window; controlling the acquired plural display information; designating through said user interface displayed in a window two or more display information; instructing through said user interface an operation to a program; and transmitting said instructed operation to two or more programs corresponding to said two or more designated display information. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram showing schematic configuration of an interactive operation apparatus constituting an embodiment of the present invention; Fig. 2 is a view showing an example of the user interface realized by the interactive operation apparatus of said embodiment; Figs. 3A to 3C are views showing menues of the commands selected in the operation window shown in Fig. 2; Fig. 4 is a view showing an example of the content stored in a compound program memory, a program display information memory and a control information memory shown in Fig. 1; Figs. 5A and 5B are views showing window displays forms corresponding to various operation states; Figs. 6 and 7 are flow charts of a main routine sequence to be executed by the interactive operation apparatus of said embodiment; Fig. 8 is a flow chart showing the details of an external program start process in a step S12 in Fig. 7; Fig. 9 is a flow chart showing the details of a window display update process in a step S4 in Fig. 6; Fig. 10 is a flow chart showing the details of a selection instruction communicating process in a step S14 in Fig. 7; Fig. 11 is a flow chart showing the details of a selection status displaying process for effecting a part of change in the display status, in a step S15 in Fig. 7; Fig. 12 is a flow chart showing the details of an operation instruction communicating process in a step S18 in Fig. 7; Fig. 13 is a flow chart showing the details of an operation status displaying process in a step S19 in Fig. 7; Fig. 14 is a block diagram showing schematic configuration of an operating right information display system constituting an embodiment of the present invention; Fig. 15 is a flow chart showing the sequence of an operating right information display process executed by the operating right information display system of said embodiment; Fig. 16 is a view showing an example of the operating right information displayed by the operating right information display system of said embodiment; Fig. 17 is a view showing an example of the operating right information displayed by an operating right information display system of another embodiment of the present invention; Fig. 18 is a block diagram showing schematic configuration of a common window system constituting an embodiment of the present invention; Fig. 19 is a view showing an example of connection of the common window systems of said embodiment by a network; Fig. 20 is a flow chart showing the sequence of an operating right setting process; Fig. 21 is a flow chart showing a window generation/deletion process by the client application; Fig. 22 is a flow chart showing a window size adjustment process; Fig. 23 is a view showing an example of the result of a window operation by a conventional common window system; Fig. 24 is a block diagram showing configuration of a window system constituting an embodiment of the present invention; Fig. 25 is a flow chart of a program to be executed by a permeable comment window system 100, for extracting necessary window ID by analyzing the message flowing between a server 30 and a client application 40; Fig. 26 is a flow chart of a program for generating a permeable window; and Fig. 27 is a schematic view showing positional relationship of the windows displayed on the display unit. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [First embodiment] Now the present invention will be clarified in detail by a preferred embodiment thereof, with reference to the attached drawings. Fig. 1 is a block diagram showing schematic configuration of an interactive operation apparatus constituting an embodiment of the present invention. Referring to Fig. 1, the interactive operation apparatus of the present embodiment is composed of an interactive operation unit 1 for accepting an operation instruction from the user; a status display unit 2 for displaying the operation status of programs corresponding to the windows displayed on a display 11; a communication unit 3 for exchanging commands etc. with the programs to be operated; a compound program manager 4 for managing one or plural programs to be operated; a display information manager 5 for managing the display information of the programs; a control information manager 6 for managing the control information of the programs; a compound program memory 7 for storing the information managed by the compound program manager 4; a program display information memory 8 for storing the display information of the programs; a control information memory 9 for storing said control information; a window system program 10 such as a window server; a display 11 for displaying a window and various information for example in said window; and an input device 12 such as a keyboard or a mouse. There are also shown external programs 13 - 15 corresponding to the windows and managed by the interactive operation apparatus of the present embodiment. The interactive operation unit 1 receives an instruction given by the user through the input device 12, through the window system program 10, and in response sends a new operation instruction to the compound program manager 4, the display information manager 5 and the control information manager 6. The status display unit 2 is activated when a timer event occurs, and acquires the display information of the external programs 13 - 15 and sends said information to the display information manager 5. The communication unit 3 receives various messages from the external programs 13 - 15 and transmits said message to the compound program manager 4, the display information manager 5 and the control information manager 6. The compound program manager 4 receives the instruction from the interactive operation unit 1, then sends an instruction to the external programs 13 - 15 for example for starting or ending thereof, also updates the content of the compound program memory 7 and requests, to the display information manager 5, to change the display corresponding to the change in the operation status of each program. Also the compound program manager 4 returns information based on the hierarchy of the programs, in response to a request from the interactive operation unit 1. The display information manager 5 receives, from the interactive operation unit 1, the status display unit 2, the communication unit 3, the compound program manager 4 and the control information manager 6, the information for changing the display status of the windows displayed on the display 11, according to the operation status (presence/absence of selecting/operating right or presence/absence of recording) of the external programs 13 - 15 and the display status (display position etc.) thereof, then sends a necessary display update operation to the status display unit 2 and the communication unit 3, and updates the content of the program display information memory 8. The control information manager 6 receives, from the interactive operation unit 1 and the communication unit 3, a change in the operation status (presence/absence of selecting/operating right or presence/absence of recording) of the external programs 13 - 15, then transmits a necessary control status update operation to the communication unit 3, also transmits a necessary change of the display status to the display information manager 5 and updates the content of the control information memory 9. In the present embodiment, the external program 13 is a client program so prepared as to respond to the message from the interactive operation apparatus of the present embodiment, and is adapted to transmit the status change of said program 13 itself to the communication unit 3 and to change the operation status (presence/absence of the operating right or of recording) and the display status of said program 13 in response to the message from the communication unit 3. The external program 14 is an ordinary client program which is not so prepared as to respond to the message from the interactive operation apparatus of the present embodiment, and is utilized through another common window program for utilizing the display information etc. The external program 15 is a pseudo window server program (common window program) for receiving display message from the client program 14 to the window system program 10, and is capable of interactive operation with a user through a display (or with plural users through plural displays) by transmitting the received message to the window server (window system program of a client (or plural clients) and also of changing the operation status (presence/absence of operating right or of recording) of a program (client program 14 in the present embodiment) connected to the common window program, in response to the message from the communication unit 3. Fig. 2 illustrates an example of the user interface, realized by the interactive operation apparatus of the present embodiment and displayed on the display 11. In Fig. 2, an operation window 21 is displayed by the interactive operation unit 1 and is utilized for interactive operations, while a reduction display window 22 is displayed by the status display unit 2 and is used to show the operation status of the programs corresponding to different windows, in a reduction display. Associated windows 23 - 26 are associated with the windows constituting the objects of operations, and are used for displaying the operation status of the programs corresponding to such windows. Such associated window is displayed by the external program if it is so prepared as to respond to the message of the interactive operation apparatus of the present embodiment, as in the case of the client program 13, or by the status display unit 2 in case of an ordinary external program, such as the client program 14, which is not so prepared as to respond to the message of the interactive operation apparatus. Windows 27 - 30 are displayed by the respective corresponding programs. The user can interact with the respective programs through said windows 27 - 30 and can also effect interactive operations, through the operation window 21, such as the starting or end of each program, the acquisition or release of the selecting/operating right for each program, the starting or ending of recording, the termination of the entire process etc. Though not particularly illustrated in Fig. 2, the designation of the windows or commands is naturally executed by a mouse cursor etc. Figs. 3A to 3C illustrate menus of various commands selectable from the operation window 21 shown in Fig. 2. Fig. 3A shows a sub menu displayed when "start" is selected in the operation window 21, while Fig. 3B shows a sub menu displayed when "exit" in selected, and Fig. 3C shows a menu is of pull-down form and is displayed, for example by selecting "start" with the mouse cursor, in the vicinity. The sub menu in Fig. 3A contains VIDEO TELEPHONE, COMMON EDITOR, COMMON DRAW, WHITE BOARD, VIDEO MONITOR, COMMON WINDOW TOOL and FILE TRANSFER, any of which can be selected as a start command. The sub menu in Fig. 3B contains FINISH ALL and FINISH DESIGNATED TOOL, either of which can be selected as an end command. The sub menu in Fig. 3C contains REQUEST OPERATING RIGHT, RELEASE OPERATING RIGHT, START RECORDING, INTERRUPT RECORDING and FINISH RECORDING, any of which can be selected as an operation command. Fig. 4 shows an example of the content stored in the compound program memory 7, the program display information memory 8 and the control information memory 9. In Fig. 4, 31 indicates the content of "Session 1" constituting an example of the united application composed of plural programs, and there are illustrated MEMBERS, SUB TOOL, CHAIRMAN, CONTROL INFORMATION etc. relating to said Session 1. 32 indicates the content of the video telephone 1, showing an example of the external program (element application) so prepared as to respond to the message of the interactive operation apparatus of the present embodiment, as in the case of the aforementioned client program 13, and there are illustrated "pid (process ID)", "port (communication port)", "display information" and "control information" relating to said application. 33 indicates the content of a common editor 1 constituting an example of the external program (common application) which is not so prepared, as in the case of the aforementioned client program 14, as to respond the messages of the interactive operation apparatus of the present embodiment. There are displayed "display info", "control info" etc. relating to said application, and also the related "display server program". 34 indicates the content of a common window server, constituting an example of the display server program, such as the aforementioned common window program 15, to be used in relation with another client program, and contains a pointer to the common editor 1 which is a related object program. 35 is an example of the "control information" in the united application 31 and contains the location of "control right", operation status of "recording", "selection" status by the user etc. 36 is an example of "display information" of the common application 33, and contains "window ID", "display position (X, Y)" and "display size (W, H)" displayed by the program. The program information 31 - 34 are stored in the compound program memory 7, while the control information 35 is stored in the control information memory 9, and the display information 36 is stored in the program display information memory 8. Figs. 5A and 5B are views showing the display formats of the windows in various operation statuses. Fig. 5A shows the display format of the associated window 25 of the window 29 in Fig. 2, and Fig. 5B shows the display format of the reduction display of the windows in the reduction display window 22. As shown in Fig. 5A, the associated window 25 is composed of a frame area 25 1 and an internal area 25 2 . Also as shown in Fig. 5B, the reduction display for example of the window 29 is composed of a frame area 29 1 and an internal area 29 2 . The operation status of the program corresponding to the window 29 is indicated as follows. The selection state is indicated by the luminosity of the color of the internal area 25 2 or 29 2 , with a higher luminosity in case of the selected state. The recording state is indicated by the color of the internal area 25 2 or 29 2 , for example "red" for the recording state and "gray" for the non-recording state. Also the status of the operating right is indicated by the color of the frame area 25 1 or 29 1 , for example "green" in the presence of the operating right, "gray" when the operating right is owned by someone else, and "blue" when the operating right is free. Naturally the associated windows 23, 24, 26 corresponding to other windows 27, 28, 30 and the corresponding reduced displays are also displayed in a similar manner. The control sequence of the interactive operation apparatus explained in the foregoing will be explained with reference to flow charts in Figs. 6 to 13. Figs. 6 and 7 are flow charts showing a main routine. Referring to Fig. 6, there is at first conducted initialization for displaying the operation window 21 and the reduction display window 22 to the user and setting a time for starting a timer event (step S1), and the sequence proceeds to a step S2. In the initialization in said step S1, no display is given in the tool item of the operation window 21 and in the reduction display window 22, as no program is in operation at this stage. The step S2 discriminates presence of any input, and, in case of no input, the sequence waits until any input occurs. In the presence of any input, the sequence proceeds to a step S3 to discriminate the presence of any timer event. As the present embodiment employs so-called event-driven program format, there are conducted, in parallel manner, an input-awaiting process (step S2), a timer event detecting process (step S3), a window event detecting process (step S5), a message detecting process (step S6), a start command detecting process (step S11), a program selection detecting process (step S13) and an operation command detecting process (step S16) in an event-awaiting loop. If a timer event is detected in said step S3, the status display unit 2 effects a display update process for the windows, thereby updating the displays corresponding for example to the movements of the windows displayed by the external programs (step S4), and the sequence then returns to the step S2. On the other hand, if the step S3 does not detect any timer event, a step S5 effects a window event detecting process, for discriminating whether a window event from the input device 12, such as the mouse or the keyboard, has been detected. If the step S5 detects an event, the interactive operation unit 1 functions according to a command process to be explained later (starting from a step S11 in Fig. 7). If the step S5 does not detect an event, a step S6 effects a message detecting process for discriminating whether a message from an external program has been detected, and, if a message event is detected, the communication unit 3 functions according to a message process to be explained later (starting from a step S7). If the step S6 does not detect a message event, the sequence returns to the step S2. The command process starting from the step S11 proceeds as follows, depending for example on the position of the entered event and the status of the mouse. When the start command detecting process (step S11) detects a start command, the interactive operation unit 1 displays the menu shown in Fig. 3A. When a desired command is selected by the user, the interactive operation unit 1 causes the compound program manager 4 to start an external program starting process (step S12), and effects a suitable start process for the selected command. The details of said external program starting process will be explained later. On the other hand, if the step S11 does not detect a start command, there is discriminated whether a selection instruction has been given to an object program (step S13). If given, the selected program is designated and the start of a program selecting process (steps S14, S15) is requested to the control information manager 6, and the sequence returns to the step S2. The program selecting process consists of updating the information on the selection status among the data stored in the control information memory 9, then requesting the start of a selection instruction communicating process to the communication unit 3 and informing the external program to be operated of the change in the display status resulting from the selecting operation (step S14), and then requesting the start of a selection state display process to the information display unit 2 and changing the display status based on the selecting operation of the program to be operated (step S15). The details of said selection instruction communicating process and said selection status display process will be explained later. On the other hand, if the step S13 identifies that the selection instruction for the object program has not been given, the sequence proceeds to a step S16 to effect an operation command detecting process for discriminating whether an operation item has been selected, and, if an operation command or an end command is detected, the interactive operation unit 2 respectively displays the menu shown in Figs. 3C or 3B and starts a control operation process (starting from a step S17) by the control information manager 6 for the selected command. On the other hand, if the step S16 identifies the absence of selection of the operation item, the sequence returns to the step S2. In the control operation process, there is at first conducted an operation permission discriminating process (step S17) for discriminating whether the selected operation is permitted in the following manner. In response to the operation command, the interactive operation unit 1 requests the information of the object program and of the united application including said program, to the compound program manager 4 and the control information manager 6. The compound program manager 6 returns the requested information to the interactive operation unit 1 by referring to the compound program memory 7, and the control information manager 6 returns the requested information to the interactive operation unit 1 by referring to the control information memory 9. Based on thus returns information, the interactive operation unit 1 discriminates whether the operation is permitted. Said discrimination can be executed on various methods, but employs the following method in the present embodiment. The "TOTAL FINISH" is permitted only to the chairman. The "FINISH DESIGNATED TOOL" is permitted when the operating right is acquired, and the "REQUEST OPERATING RIGHT" is permitted when the operating right is owned by nobody. Also the "START RECORDING", "INTERRUPT RECORDING" and "FINISH RECORDING" are permitted only to the chairman. Other operations are permitted any time. Then, if the step S17 identifies that the operation is permitted, there is requested the start of the operation instruction communicating process to the communication unit 3 with the designation of the selected command, and a process content corresponding to the operation item is transmitted to the external program (step S18). Then the start of an operation status display process is requested to the status display unit 3, in order to update the display status corresponding to the operation item (step S19). Then, if the selected command is the TOTAL FINISH command, the present program is terminated by a total finish discrimination process (step S20), but, if not, the sequence returns to the step S2 in Fig. 6. The message process executed by the communication unit 3 starting from the step S7 proceeds in the following manner, according to the content of the message from the external program, containing the object and item of the operation. The communication unit 3 sends a selection instructing message to the control information manager 5, which stores and selection information in the control information memory 9 and request the start of a selection information display process to the status display unit 2, thereby changing the display status, based on the selection operation of the program to be operated, in a similar manner as in the selection state display process in the foregoing step S19 (step S7). Subsequently the control information manager 5 starts the operation permission discriminating process, thereby checking whether the selected operation item is permitted (step S8) in the same manner as in the operation permission discriminating process in the aforementioned step S17, and, if the operation is permitted, requests the start of an operation instruction communication process to the communication unit 3, thereby transmitting the process content, corresponding to the operation item, to the external program to be operated (step S9). Then there is requested the start of an operation status display process to the status display unit 2, thereby updating the display status corresponding to the operation item (step S10). Fig. 8 is a flow chart showing the details of the external program starting process, to be executed by the compound program manager 4 in the aforementioned step S12. In this flow chart, there is at first requested, to the external program to be operated, the start of the application program thereof (step S31). Then a step S32 requests the setting of a communication pass with the started external program to the communication unit 3, and a step S33 receives the information of the external program from the communication unit 3. Then, based on thus obtained information, a step S34 generates an object to the newly started program, in the compound program memory 7, and adds current program tools to said united application 31. If the external program is a common application 33, a common window server 34 is started prior to the start of said program, and the window information of the common application 33 is acquired through the communication with said common window server, which has the information transmitted thereto from the common application 33. When the start of the external program is transmitted to the status display unit 2, it acquires, in a step S35, the position information of the window of the newly started program and updates the program display information memory 8, and, if the object program does not have the associated window, newly displays an associated window based on the information of the position and size of the window. A subsequently step S36 calculates relative position size by proportional reduction of the position and size of the window, and adds, to the reduction display window 22, a new area based on said relative position and size. Fig. 9 is a flow chart showing the details of the window display updating process in the step S4 in Fig. 6. In this flow chart, at first in a step S41, the status display unit 2 acquires, from the window system program 10, the window information including the window ID and the position and size of the window indicated by said window ID, for all the display information stored in the program display information memory 8. Then a step S42 discriminates whether the position and size obtained in the foregoing step S41 are different from the previous position and size, and, if same, the present process is terminated, but, if different, there is executed an updating process (steps S43 - S45). In said updating process, a step S43 stores the window information acquired from the window system program 10 in the program display information memory 8, then a step S44 redraws reduced version of the windows for all the display information, and a step S45 resets the position and size of the display of the associated windows in case the object program is a common application. Fig. 10 is a flow chart showing the details of the selection instruction communicating process in the step S14 in Fig. 7. At first the interactive operation unit 1 requests return of all the sub tools corresponding to the designated tool, to the compound program manager 4, which returns data corresponding to all the sub tools in case the selected tool is a united application, or its own data in other cases (step S51). Then the interactive operation unit 1 instructs the selection of the first sub tool and transmits thus obtained data of the sub tool to the control information manager 6, which in response discriminates whether the transmitted data are of the common application (step S52), and, if so, transmits a selection message to the associated common window server (step S53), but, if not, requests transmission of a selection message to said sub tool itself, to the communication unit 3 (step S54). Then there is discriminated whether the foregoing steps S42 - S54 have been executed for all the sub tools, and, if executed, the present process is terminated, but, if not, a next tool selection is conducted (step S56) and the sequence returns to the step S52 to repeat the above-explained sequence. Fig. 11 is a flow chart showing the details of the selection status display process, for effecting a partial change of the display status, in the step S15 in Fig. 7. At first, as in the step S51 in Fig. 10, the interactive operation unit 1 acquires all the sub tools from the compound program manager 4 for the designated selection tool (step S61), then instructs the selective display of the first sub tool and transmits thus obtained sub tool data to the control information manager 6. Then the control information manager 6 requests display update to the display information manager 5 based on the control information of the obtained data and according to whether the selection state is adopted, whether the recording state is adopted and whether the control right is owned by this station or by someone else or is free, and the display information manager 5 clears the display in the reduced window and sets the background color and the drawing color to obtain the reduced display of the state explained in Fig. 5 (step S62). More specifically the background color of the area is set at red of a high luminosity in the recording state and gray of a high luminosity in the non-recording state. Then the display information manager 5 discriminates whether the object program has an associated window (step S63), and, if not, request a display update of the associated window corresponding to the operation status, to the status display unit 2 (step S64). In response to said request, the status display unit 2 updates the display status of the associated window to the selected state by correspondingly setting the background color and the drawing color. On the other hand, if the step S63 identifies that there exists the associated window, there is requested, to the communication unit 3, transmission of a message for display update to the selection state to the object program (step S65). There is discriminated whether the foregoing steps S52 - S65 have been executed for all the sub tools, and, if executed, the present process is terminated, but, if not, there is instructed the selection display of a next tool (step S67), and the sequence returns to the step S62 to repeat the foregoing sequence. Fig. 12 is a flow chart showing the details of the operation instruction communicating process of the step S18 in Fig. 7, and Fig. 13 is a flow chart showing the details of the operation state display process of said step S19. The control sequences are similar to the selection instruction communicating process in Fig. 10 and the selection status display process in Fig. 11, except that, while the processes in Figs. 10 and 11 deal with a single operation of selection, the processes in Figs. 12 and 13 allow, by the menus shown in Figs. 3A to 3C, to select TOTAL FINISH or FINISH DESIGNATED TOOL as the end command and REQUEST OPERATING RIGHT, RELEASE OPERATING RIGHT, START RECORDING, INTERRUPT RECORDING or FINISH RECORDING as the operation command. More specifically, in the operation instruction communicating process, for all the designated tools or the corresponding server programs, a value corresponding to the selected item is set in the control information memory 9 and an operation message is transmitted. For the TOTAL FINISH command, the end messages are transmitted to all the programs in the compound program memory 7 and the program itself of the present embodiment is terminated. For the FINISH DESIGNATED TOOL command, after the transmission of the end message, the contents of the compound program memory 7 and the control information memory 9 are updated. In the operation status display process, the display formats of the reduction window and of the associated windows for all the designated tools are updated so as to match the operation command, which is REQUEST OPERATING RIGHT, RELEASE OPERATING RIGHT, START RECORDING, INTERRUPT RECORDING or FINISH RECORDING. For the FINISH DESIGNATED TOOL command, after the deletion of the content of the corresponding program display information memory, the displays of the reduction window 21 and the associated windows 23 - 26 are updated. As explained in the foregoing, the present embodiment is so constructed as to enable a collective operation on the plural program through the operation window 21, so that such collective operation is facilitated. Also the operability can be improved since the operation status of the external programs can be displayed under a united user interface regardless whether the external program is so prepared as to respond to the message from the interactive operation apparatus of the present embodiment. Also the present embodiment is so constructed as to display the windows 27 - 30, displayed on the display 11, in a reduced size in the reduced window 22 and to display the operation statuses of the programs corresponding to the windows also in said reduced-displayed windows, so that the user can understand the operation status statuses of the programs at a glance and the operability can be improved. Also associated windows 23 - 26 are displayed respectively corresponding to the windows 27 - 30, and the internal areas (for example the internal area 25 2 in Fig. 5A) of such associated windows 23 - 26 or the internal areas of the windows displayed in said reduced window 22 (for example the internal area 29 2 in Fig. 5B) indicate the ownership status of the operating rights of the programs by the luminosity of the color. Thus a united user interface is obtained for the control of the operating right and the display of the status, and the operability of the system can be improved. Furthermore, the frame areas of said associated windows 23 - 26 (for example the frame area 25 1 in 5A) or those of the windows displayed in said reduced window 22 (for example the frame area 29 2 in Fig. 5B) indicate the recording states of the programs by the color hue. Thus a united user interface is obtained for the recording status, and the operability of the system can be improved. In the present embodiment, both the selection instruction communicating process and the selection status display process are conducted for the selection operation of each program, but it is also possible to effect the selection instruction communicating process only in the presence of the associated window and to effect the selection status display process if the associated window is absent. In this manner there can be achieved further efficient process. Also in the present embodiment, the control program itself of the interactive operation apparatus of said embodiment effects the display of the associated window, but it is also possible to effect such display by a display server program such as the command window program 15 or by a completely separate external program exclusively for the associated window and to exclude the display operation of the associated window from the control program. Such configuration simplifies the program and improves the modularity thereof. As explained in the foregoing, the present embodiment provides an interactive operation apparatus adapted to operate plural application programs displayed on display means through a user interface provided outside said programs and comprising acquisition means for acquiring display information of said programs, collection operation instructing means for instructing a collection operation to one or plural programs, transmission means for transmitting said instructed operation to said programs, and display control means for displaying the status of said instructed operation in at least one of the display area for said displayed programs and a nearby area, whereby the collective operation to the plural programs can be easily instructed. Also the present embodiment provides a user interface equivalent to a program so prepared as to respond to a special message released by the interactive operation apparatus of the embodiment and even to an ordinary program not so prepared as to respond to such special message, whereby the user can understand the status of the programs without confusion and the operability can be improved. Preferably there is provided reduction display control means for effecting reduction display of the status of said programs on said display means and also displaying the status of said instructed operation on thus reduction-displayed program, whereby the user can immediately understand the operation status of the plural programs and the operability can be further improved. Furthermore, there are preferably provided operating right instruction means for instructing request and release of the operating right for each displayed program and ownership status display control means for displaying the ownership status of the operating right in response to said instruction, whereby provided are an operation form common to the groupware program and a united user interface concerning the manipulation of the operating right and the display of status and the operability of the system can be further improved. In case the displayed program has recording function, there are further preferably record instruction means for instructing the start and end of the recording and operation status display control means for displaying the status of the status of the recording function in response to said instruction, whereby provided is a united user interface for the recording operation and the status display and the operability can be further improved. [Second embodiment] In the following a second embodiment of the present invention will be explained with reference to the attached drawings. Fig. 14 is a block diagram showing schematic configuration of an operating right information display system constituting an embodiment of the present invention. Referring to Fig. 14, the operating right information display system of the present embodiment is composed of a client application executor 1 for executing a main program of the client application; a communication unit 2 for communicating with plural window system servers; an operating right manager 3 for managing the operating right to the client application; an operating right information memory 4 for storing the information managed by said operating right manager 3; a window information manager 5 for managing the window information in current use; a window information memory 6 for storing the window information obtained by said window information manager 5; an operating right information display unit 7 for displaying the operating right information in the window in current use; a window system server 8 for effecting the server process of the window system; an input device 9 such as a keyboard or a mouse to be used in said window system server; a display unit 10 for displaying windows and various information; and a window system server 11 for effecting a server process of the window system in other host stations (not shown). The system is connected with the window system servers 11 of other host stations through a communication line. Fig. 15 is a flow chart showing the display sequence of the operating right owner information, executed by the above-explained operating right information display system. Said sequence will be explained in the following, with reference to Figs. 14 and 15. Referring to Fig. 15, there is at first set an operating right owner (step S1). More specifically, the user sets the operating right through the window system server 8, utilizing the input device 9, and the communication unit 2 transmits the content of said setting to the operating right manager 3. Then, upon receiving the operating right information, the operating right manager 3 effects an operating right storage process, for storing said information in the operating right information memory 4 (step S2), then discriminates whether the information on the window in current use is stored in the window information memory 6 (step S3), and, if not, effects the window information storage process (step S4), but, if stored, the sequence jumps to a step S5. The window information storage process is a process executed by the window information manager 5 to write the information on the window to be used in the application (such as position, size and ID number of the window) into the window information memory 6. This process is executed at every change of the window. A step S5 displays the operating right information. More specifically, when the operating right is set, the operating right information display unit 7 displays, based on the information obtained from the operating right information memory 4 and the window information memory 6, a frame ℓ as shown in Fig. 16 of a color assigned to each user (red being assigned to the user A in the present embodiment) on the work window w. A color mark may naturally be used instead of the colored frame. As explained in the foregoing, the present embodiment displays the information concerning the owner of the operating right in the common window used in work, so that the user can understand the owner of the operating right without additional operations and the work efficiency can therefore be improved. It is also possible to display the information of the operating right in a different form, while adopting the same system configuration as in the above-explained embodiment. As an example, the name of the user (user name itself or log-in name) who has the operating right may be displayed next to the work window w, as shown in Fig. 17. Such display can be realized by a process substantially same as that of the foregoing embodiment, and the user interface can be easily changed corresponding to various client applications. The present invention is applicable either to a system composed of plural equipment as in the foregoing embodiment or to an apparatus consisting of a single equipment, and also to a case where the present invention is realized by the supply of a program to a system or an apparatus. As explained in the foregoing, the present embodiment provides a common window system of server-client process in which a client application communicates with plural servers by message distribution and operations are achieved by switching the operating right to said client application, said system comprising operating right information acquisition means for acquiring the owner information of the operating right set by the user and storing said information first memory means, window information acquisition means for acquiring the information on the window generated by said client application and storing said information in second memory means, and operating right information display means for displaying information on the owner of the operating right on a predetermined window, based on the owner information of the operating right stored in said first memory means and the information on the window stored in said second memory means, whereby the information on the owner of the operating right can be obtained without additional operations and the work efficiency can therefore be improved. Also said operating right information display means preferably displays the information on the owner of said operating right on the window in current work or in a position close thereto, whereby the user interface can be easily provided in a display format matching various client applications. [Third embodiment] In the following a 3rd embodiment of the present invention will be explained with reference to the attached drawings. Fig. 18 is a block diagram showing schematic configuration of a common window system constituting an embodiment of the present invention. The common window system of the present embodiment is constructed on an ordinary work station equipped with a keyboard, a mouse, a display and a window system of server-client process. In Fig. 18, a broken-lined frame 1 indicates a group of modules and memories realizing the present invention, and said module-memory group 1 is composed of a client application executor 2 for executing a main program of the client application; a communication unit 3 for communicating with plural window system servers; an operating right manager 4 for managing the operating right to the client application; an operating right information memory 5 for storing the data managed by said operating right manager 4; a window information manager 6 for managing the information on the window generated by the client application; a window information memory 7 for storing the window information managed by said window information manager 6; and a window size manager 8 for controlling a window size changing process. Components other than said module-memory group 1 are those ordinarily provided in the work station and include a server 9 for the window system, a window manager 10, an input device 11 such as a keyboard or a mouse, and a display 12 for displaying windows and various information. The system of the present embodiment is connected, as shown in Fig. 19, by the communication unit 3 to another system constructed on another work station through a network. Consequently Fig. 18 also illustrates a window system server 13 and a window manager 14 on another work station. In the common window system of the above-explained configuration, there are independently executed a process for setting the operating right, a process for acquiring the information on the window generated by the client application and a process for adjusting the window size, which will be respectively explained in the following. Fig. 20 is a flow chart showing the sequence of an operating right setting process. At first the system of the present embodiment is activated, and a command having the initial value as a subtracting number is sent to the operating right manager 4 (step S1). Then the operating right manager 4 discriminates whether the operating right has been entered (step S2). In case the sequence has proceeded from the step S1 to S2, there should have been entry of the operating right, so that the sequence proceeds to a step S3. The step S3 stores the data, indicating the operating right, in the operating right information memory, and the sequence returns to the step S2 to await the entry of the operating right. When the user instructs the shift of the operating right through the window system server 9 or 13, an operating right designating command is transmitted through the communication unit 3 to the operating right manager 4, whereupon the step S2 identifies the entry of the operating right and the operating right manager, having received the command, stores the information of the designated operating right in the operating right information memory 5 (step S3). Fig. 21 is a flow chart showing a window generation or deletion process by the client application, to be executed by the window information manager 6. In Fig. 21, when the client application executor 2 newly generates a window, the information on said window is transmitted through the communication unit 3 to the window information manager 6, whereby the addition of a window is identified (step S11), and the window information manager 6 adds said window information to the window information memory 7 (step S12). When the client application executor 2 closes a window, the ID information on said window is transmitted through the communication unit 3 to the window information manager 6, whereby the deletion of a window is identified (step S13) and the window information manager, having received the window ID information, deletes the information on said window from the window information memory 7, based on said window ID information (step S14). If the addition or deletion of a window does not take place in the discrimination of the step S11 or S13, the sequence waits until such addition or deletion is designated. Fig. 22 is a flow chart of a window size adjusting process. When the user changes the window size by the input device 11, the changing operation is requested to the requested to the window managers 10, 14 and is executed respectively by the window system servers 9, 13. When the window size is changed, such change is informed from the window system servers 9, 13 to the communication unit 3, which in turn informs the window size manager 8 of the window size change, whereupon said window size change is identified in a step S21 and the sequence proceeds to a step S22. If the window size change does not take place in the discrimination of the step S21, the sequence waits until a designation for size change is issued. Then the window size manager 8, referring to the operating right information memory 5, discriminates whether the instruction has been given from the user having the operating right (step S22). If affirmative, the window size manager 8 changes a portion relating to the size of the designated window in the window information memory 7 (step S23), then sends a size changing command to the client application executor 2 and effects a window rewriting process to the window system servers (step S24). On the other hand, if the step S22 identifies that the instruction has been given from a user who does not have the operating right, the window size manager 8 refers to a portion relating to the size of the designated window in the window information memory 8, based on the information on the designated window, and requests a window re-writing process to the window system server which has issued the instruction, based on thus referred size information (step S25). As explained in the foregoing, the present embodiment provides common windows of a same size on different work stations, whereby a change on the common window in a cooperative work can be observed in the same manner in any work station. Consequently the intentions in the cooperative work can be exactly transmitted mutually, and the efficiency of work can be improved. It is also possible, in the configuration of the common window system shown in Fig. 18, to match the size of the common windows in the different work stations, by transmitting the window size change to all the servers, regardless of the presence or absence of the operating right. The present invention is applicable either to a system consisting of plural equipment or to an apparatus consisting of a single equipment, and also to a case where the present invention is realized by the supply of a program to a system or an apparatus. In the present embodiment, as explained in the foregoing, when the size of the desired window displayed on the display means is changed by the user, the size of the corresponding window displayed on the display means of any other server is adjusted to the same size, based on the operating right information managed by said operating right manager and the information on the window managed by said window information manager, so that the cooperative work utilizing the common windows can be conducted smoothly. [Fourth embodiment In the following there will be explained a window system constituting a fourth embodiment of the present invention and a method of generating a permeable or permeable window in said embodiment. Fig. 24 is a block diagram showing the configuration of the window system of said embodiment, including a permeable comment window system 100. The permeable comment window system 100 includes a packet transceiver 10 for transmitting and receiving an X protocol message between the client and the servers; a message interpreter 12 for analyzing the content of the message obtained by the packet transceiver 10; a window ID memory 14 for storing the window ID extracted from said message; a window searcher 16 for selecting a necessary window, based on the window ID stored in the window ID memory 14; a permeable window generator 18 for generating a permeable window of a same shape as that of the window generated by the client application; a drawing unit 20 for effecting a drawing process on the permeable window; and a work memory 22. There are also shown a window system server 30; a client application 40; an input device 50 such as a keyboard or a mouse; and a display 52. Fig. 25 is a flow chart of a process, executed by the permeable comment window system 100, for extracting necessary window ID by interpreting the message flowing between the server 30 and the client application 40. At first the packet transceiver 10 receives, in the unit of a packet, the message transmitted from the client application 40 or the window system server 30 step S12). The packet reception is repeated until a message is completed. The message interpreter 12 discriminates whether said message is a map window message, by checking of the header of the completed message (step S14). If so, the window ID in the message is read (step S16), and a corresponding value is stored in the window ID memory 14 (step S18). The window ID memory 14 stores the window ID in the form of an array or a list. Subsequently the packet transceiver 10 transmits a message to the window system server 30 or the client application (step S20). The window ID's mapped on the display are accumulated by the repetition of the process explained above. Fig. 26 is a flow chart of a process for generating a permeable window. This process searches a window on which the permeable window is to be attached, by checking the window ID stored in the window ID memory 14, and generates a permeable window on thus searched window. At first the window searcher 16 checks the window ID memory 14 (step S32) and discriminates whether the window ID is registered in the window ID memory 14 (step S34). If registered, a window ID is read (step S36), and information is acquired on the window corresponding to thus read window ID. For example, in case of the X window system, the window information can be obtained by "XGetWindow-Attributes". Based on the window information, the mother window is searched, and there is discriminated whether said mother window is a root window (step S38). If it is a root window, there is extracted information on the position and size of said window (step S40), and the permeable window generator 18 generates a permeable window based on said information (step S42). Subsequently the sequence returns to the step S32, and the process is repeated until all the window ID's stored in the window ID memory 14 are exhausted. When all the window ID's are exhausted, the step S34 provides a negative discrimination whereupon the process is terminated (step S48). On the other hand, if the step S38 identifies that the mother window is not a root window, the read window ID is deleted from the window ID memory 14. In the present embodiment, the permeable window is attached to a window whose mother window is a root window, and, in this manner, the permeable window can be matched to the outermost one of the windows displayed on the display unit. The drawing function by the drawing unit 20 is used to add comments on thus added permeable window. Fig. 27 shows the positional relationship of the windows on the display, wherein shown are a display D1, a window W1 generated by the client application, and a permeable window W2. As shown in Fig. 27, the permeable window W2 is of the same size as that of the window W1 and is superposed in the same position on the display D1. [Fifth embodiment] It is also possible, in the same system configuration as in the foregoing embodiment, to provide the permeable window with other functions than the drawing function. For example, it is possible to divide the permeable window W2 into plural areas and to effect respectively different processes when the mouse cursor enters these areas, and such functions can be realized by changing the drawing unit 20. The above-explained window system may be applied to a system consisting of plural equipment or to an apparatus consisting of a single equipment. It is furthermore applicable to a case where the present invention is achieved by the supply of a program to a system or an apparatus. In the above-explained embodiment, the message relay means relays the message flowing between the server and the client, then the identification code extraction means extracts the identification code of the window displayed on the display unit, from the message obtained by said message relay means, the window information acquisition means acquires the information on the position and size of said window, based on the thus extracted identification code, the permeable window generation means generates the permeable window, corresponding to the position and size of said window, on said display based on thus acquired information, and the function realizing means provides thus generated permeable window with predetermined functions for the work to be executed on said window, whereby the user is not required to designate the window and the operability can therefore be improved. Also the operations can be simplified as the information for permeable window generation can be obtained from the identification code of the window. Thus, in obtaining the identification code of the window, it is rendered possible to dispense with the operations of changing the window manager or writing a program for managing all the displayed windows. Furthermore, there can be constructed systems adapted for various applications, by merely varying the function provided to the permeable window. Furthermore, the present embodiment provides a window system of server-client process, which functions to relay the message flowing between the server and the client, extract the identification code of the window displayed on the display unit, from said relayed message, acquire the information on the position and size of said window, based on thus extracted identification code, generate the permeable window corresponding to the position and size of said window based on thus acquired information, and provide thus generated permeable window with predetermined functions for the work to be executed on said window, whereby the user is not required to effect window designation in the generation of the permeable window. Also the information for permeable window generation can be obtained from the identification code of the window. It is thus rendered possible to improve the operability of the system.

Claims: An interactive operation apparatus for operating a plurality of application programs, displayed on display means (11), through a user interface provided independent of a window display area (27-30) of said programs, characterised by : acquisition means for acquiring display information of each of said programs, said display information including an identification code, a position and a size of a window; display control means for controlling the plural display information acquired by said acquisition means; designation means for designating through said user interface displayed in a window two or more display information; operation instruction means (1, 21) for instructing through said user interface an operation to a program; and transmission means for transmitting said instructed operation to two or more programs corresponding to said two or more display information designated by said designation means. An interactive operation apparatus according to claim 1, wherein said operation is an instruction for storing. An interactive operation apparatus according to claim 1, further comprising: reduction display control means for effecting reduced display of the display status of said displayed programs on said display means (11) and also displaying the status of said instructed operation on said reduced-displayed programs. An interactive operation apparatus according to claim 1, further comprising: operating right instruction means for instructing the request for and release of the operating right for said displayed programs; and ownership status display control means for displaying the ownership status of the operating right in response to said instruction. An interactive operation apparatus according to claim 1, wherein said display control means is arranged to display each of the plurality of display information on the windows displayed on a display. An interactive operation apparatus according to claim 5, wherein each of said windows is in a different display status according to its operation status. An interactive operation apparatus according to claim 5, wherein said windows are managed by a window ID. A method of operating an interactive operation apparatus for operating a plurality of application programs displayed on display means (11), through a user interface provided independent of a window display area (27-30) of said programs, characterised by the steps of: acquiring display information of each of said programs (S5), said display information including an identification code, a position and a size of a window; controlling the acquired plural display information; designating through said user interface displayed in a window two or more display information; instructing through said user interface an operation to a program; and transmitting said instructed operation to two or more programs corresponding to said two or more designated display information. A method according to claim 8, wherein said operation is an instruction for storing. A method according to claim 8, further comprising: effecting reduced display of the display status of said displayed programs on said display means (11) and also displaying the status of said instructed operation on said reduced-displayed programs. A method according to claim 8, further comprising: instructing the request for and release of the operating right for said displayed programs (S17); and displaying the ownership status of the operating right in response to said instruction. A method according to claim 8, wherein each of the plurality of display information is displayed on the windows (29) displayed on a display (11). A method according to claim 12, wherein each of said windows (29) is in a different display status according to its operation status (S10). A method according to claim 12, wherein said windows are managed by a window ID (S41). A computer program product conveying program instructions for causing a computer apparatus to implement a method according to at least one of claims 8 to 14. A signal conveying program instructions for causing a computer apparatus to implement a method according to at least one of claims 8 to 14.

Inventors: BANNAI YUICHI, SATO HIROAKI, TAKAGI TSUNEYOSHI, TANAKA KENICHIRO, BANNAI, YUICHI, SATO, HIROAKI, TAKAGI, TSUNEYOSHI, TANAKA, KENICHIRO, BANNAI, YUICHI, C/O CANON K.K., SATO, HIROAKI, C/O CANON K.K., TAKAGI, TSUNEYOSHI, C/O CANON K.K., Tanaka, Kenichiro, c/o Canon K.K.
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1995
Main classification: G06F9
IPC codes: G06F3