Source: http://www.google.com/patents/US20030225758?dq=6861155
Timestamp: 2016-09-25 11:43:24
Document Index: 457365529

Matched Legal Cases: ['Application No. 2001', 'Application No. 2000', 'Application No. 7', 'Application No. 2000', 'Application No. 2000', 'Application No. 2002']

Patent US20030225758 - Method of managing casual storage field - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsA method of managing a casual storage field comprises the steps of: receiving a plurality of information elements from one or more application programs, each information element including one or more data items; retaining the received information elements in the casual storage field; displaying a state...http://www.google.com/patents/US20030225758?utm_source=gb-gplus-sharePatent US20030225758 - Method of managing casual storage fieldAdvanced Patent SearchTry the new Google Patents, with machine-classified Google Scholar results, and Japanese and South Korean patents.Publication numberUS20030225758 A1Publication typeApplicationApplication numberUS 10/438,005Publication dateDec 4, 2003Filing dateMay 15, 2003Priority dateMay 16, 2002Also published asUS7346852Publication number10438005, 438005, US 2003/0225758 A1, US 2003/225758 A1, US 20030225758 A1, US 20030225758A1, US 2003225758 A1, US 2003225758A1, US-A1-20030225758, US-A1-2003225758, US2003/0225758A1, US2003/225758A1, US20030225758 A1, US20030225758A1, US2003225758 A1, US2003225758A1InventorsMakoto YamasakiOriginal AssigneeMakoto YamasakiExport CitationBiBTeX, EndNote, RefManPatent Citations (11), Referenced by (23), Classifications (9), Legal Events (3) External Links: USPTO, USPTO Assignment, EspacenetMethod of managing casual storage field
[0010] In a general application program such as a word processor, a user can duplicate or move a data item. For example, the user selects an object, and gives the application program an instruction to duplicate or cut the object. In the case of cutting, the selected object is temporarily deleted from the screen. The user points at the position to which the user desires to duplicate or move the object, and gives the application program an instruction to paste the object at the position. In response to this instruction, the application program pastes the object that is duplicated or cut in advance. [0011] The user can also “drag and drop” the object using the pointing device such as the mouse. In this case, the user presses a click button provided on the mouse, for example, with the pointer on the object, and moves the pointer with the click button pressed. When the pointer arrives at the position at which the user desires to duplicate or move the object, the user releases the click button. [0012] [An Example of User Interface: Clip Board]
[0018] The related art described in some patent laid-open applications will be described below. [0019] Japanese Patent Laid-open Application No. 2001-22734 discloses an information processing apparatus that can easily and efficiently display at sight a plurality of document files to the extent a user can identify the contents of the document files. [0020] [0020]FIG. 34 is a block diagram showing this information processing apparatus. The information processing apparatus of FIG. 34 is configured by the following: a display unit 301, a folder generating unit 302, a folder designating unit 303, a display controlling unit 304, an at-sight display file generating unit 305, and a document file selecting unit 306. [0021] The display unit 301 displays a screen. The folder generating unit 302 generates, in a storage unit or a predetermined region of a network, folders of a multi-level hierarchical structure that can store therein plural document files generated by an application program having a document generating function or sub-folders. The folder designating unit 303 designates one of the folders generated by the folder generating unit 302. [0022] The display controlling unit 304 displays at sight a part or all of the plurality of document files designated by the folder designating unit 303. The at-sight display file generating unit 305 generates an at-sight display file containing the contents of the plurality of document files designated by the folder designating unit 303. The document file selecting unit 306 selects one of the document files displayed at sight. [0023] This related art patent laid-open application describes an application program of a word processor provided with a “work space function”. According to the paragraph No. 89 of this patent laid-open application, “the work space is provided besides the edited document so that the user can temporarily display a drawing and can layout the document efficiently.” “Since, even when the document is printed, the drawing is not printed, the user can edit the document efficiently.” In the above description, the edited document means a sheet of paper, and what is temporarily stored is the drawing. Additionally, this patent laid-open application fails to describe how to realize the temporary storage. [0024] [Work Space]
[0025] The work space will be described below in connection with the user interface. The work space is also mentioned in the above patent laid-open application. [0026] An environment in which a user can arrange a plurality of information items and tools that are provided by a computer system is proposed. Such an environment is known as an “information work space” system. [0027] A plurality of representative information items (display objects representing the information items) are positioned in a certain space. The space is a predetermined region in a two-dimensional plane. Though the concepts corresponding to the space and the representative information items are referred to by various names in other documents describing the related art, the concept corresponding to the space will be referred to as the “work space” and the concept corresponding to the representative information item is referred to as the “information element” in this specification. [0028] “Task Gallery” described in “The Task Gallery: A 3D Windows (trademark) Manager”, Robertson, G. G. et al. (2000), In Proceedings of CHI' 2000, Human Factors in Computing Systems, ACM press, pp. 494-501, is an example of the work space. This is a three-dimensional environment with which the user can improve the efficiency of tasks by managing documents and application programs to be used for each task. The work space is represented as if it were the room of a gallery. The information element (information item) is disposed on the wall or the ceiling of the room as a shrunk image of the document. [0029] Likewise, many work space systems represent the disposed document as the shrunk image of the document (thumbnail). The use of thumbnails is reported to help users to efficiently identify the documents according to Czerwinski, M., van Dantzich, M., Robertson, G. G. & Hoffman, H. (1999), “The contribution of thumbnail images, mouse-over text and spatial location memory to web page retrieval in 3D”, In Sasse, A. & Johnson, C. (Eds), Human-Computer Interaction-Proceedings of Interact'99, Edinburgh, Scotland, IOS press, pp. 163-170. [0030] Japanese Patent Laid-open Application No. 2000-76367 discloses an invention of a work process management apparatus in which a user is provided with a plurality of work spaces and can manage information resources by the work space. Each work space is provided with a two-dimensional space dividable into a plurality of regions (background regions). An information element (information item) to refer to a document or another work space is correlated to each background region. Accordingly, the user can separately arrange the information resources in each background region. The above function can be regarded as a method to classify the information resources. [0031] [Inspiration support system]
[0032] By the way, an inspiration support system also requires a user interface. According to a well-known method of supporting inspiration, one can improve, by writing an information item on a card and appropriately disposing the cards on a two-dimensional plane, the efficiency of brain work such as an inspiration that requires the handling of abstract concepts. [0033] For example, “A method of inspiring”, J. Kawakita (1967), Chuo-Koron, describes a method of supporting inspiration including the following steps: spatially disposing information elements (information items), grouping the disposed information elements, assigning a title to the grouped information elements, and correlating the information elements. One can compare ideas and analyze the groups of information elements, for example, using this method. [0034] For example, Japanese Patent Laid-open Application No. 7-98687 discloses “KJ method”, a method of supporting inspiration for a group. According to this patent laid-open application the opinions of members are summarized by the following procedure: [0035] Step 1: A theme is determined. [0036] Step 2: Each member writes an information item directly or indirectly relevant to the theme in a short sentence on a card. [0037] Step 3: All members dispose their cards on a large desk so that they can read all the cards. [0038] Step 4: The cards containing information relevant to each other are gathered so that the cards form an “island”. [0039] Step 5: A super-ordinate concept common to all cards forming the “island” is extracted and written on a card (compatible card). The compatible card is put on the top of the stack of the cards belonging to the “island”. [0040] Step 6: The above steps 4 and 5 are repeated. The stacks of the cards are disposed on a large sheet of paper based on the relevance between the “islands”. [0041] Step 7: Each stack is spread out, and the cards belonging to the stack are attached to the large sheet of paper in accordance with the disposition. [0042] Step 8: The cards forming the island are surrounded by a closed line of various colors and thicknesses. A relevance chart (or compatibility chart) is completed. [0043] Step 9: All members make sure of the reasoning path to the conclusion based on the relevance chart. [0044] Step 10: The conclusion and the reasoning path are reported or are explained to an audience. [0045] Computer programs that realize such methods of supporting inspiration on computers are already available in the market as inspiration supporting systems (Inspiration 6: Inspiration Software, Inc., for example). Using such an inspiration supporting system, a user can display a plurality of display objects representing information elements on the screen of the computer and can edit the positions of the display objects. Some computer programs support not only editing the position of an information element, but also setting and displaying the following: the name and graphical expression of an information element, the correlation between information elements, and the grouping of information elements. [0046] VIKI described in “VIKI: Spatial hypertext supporting emergent structure” (1994), In: N. Guimaraes, ed. Proceedings of ECHT94, New York: ACM Press, pp. 13-23, is a spatial hypertext system that disposes information elements and sets of information elements in a two-dimensional space. [0047] This spatial hypertext system helps a user to express and understand the relationship between the information elements by spatially disposing a plurality of information elements. This spatial hypertext system has a similar function to the above inspiration supporting system in the sense that the user understands the structure of the information elements by spatially disposing and grouping the information elements. VIKI is provided with a function to extract and use an implied structure of the disposition of the information elements, which makes users to easily manipulate the grouping and understand displayed group structure. For example, when a plurality of information elements are disposed with the positions of their left ends aligned, the system recognizes that they are related to each other. [0048] When creating a document, one may draw some drawings and write some paragraphs first. One may also pick up some drawings and some paragraphs from documents already created. Considering the order of description and the layout of the document, one completes the document. [0049] If the collection of materials and the creation of a document are separated, the job becomes simple and efficient. In this job method, it is necessary to temporarily store a plurality of materials in a region (temporary storage field of information) and paste the materials, if necessary, in the document using an application program for editing the document. [0050] In the case of a conventional duplicate & paste function, one can store the data of only one object on the clipboard. [0051] Using an ordinary application program for editing a document, one can temporarily dispose required objects in the edited document or a newly created document for temporary storage. Accordingly, it is possible to manage the as-temporarily stored objects in a temporary storage state. [0052] This method, however, inherits some problems. First, in the case where the material is disposed in the edited document, a temporary storage field is required in the document. One may have to lay out the document in a manner that is different from the writer's intention. It is confusingly difficult to discriminate between the temporarily stored object and an already laid out object. [0053] Secondly, in the case where the material is disposed in the new document, the new document occupies a certain region on the screen. It is difficult to discriminate between the new document for temporary storage and the edited document because both documents are formatted by the same application program. [0054] As described above, the improved clipboard temporarily stores therein data related to a plurality of objects by respective formats, and lets the user review the objects. The improved clipboard is displayed in a format different from that of the edited document. The user can easily discriminate between the improved clipboard and the edited document. [0055] However, only the application programs provided by the software vendor that provides the improved clipboard can access the improved clipboard. The application programs provided by the other software vendors cannot access the data stored in the improved clipboard. [0056] The improved clipboard still needs to be further improved with respect to its operation. Even when the user desires to store data in the improved clipboard, the user does not necessarily desire to duplicate or cut the data. In the case of the improved clipboard, the user is required to follow the procedure to duplicate or cut the data on the improved clipboard. [0057] Additionally, the improved clipboard is available only while the application program provided by the software vendor that provides the improved clipboard is activated. Accordingly, the improved clipboard cannot hold the data stored therein until the improved clipboard is activated next time. [0058] Furthermore, when the user works on different jobs and different documents in parallel, the user needs to use a plurality of temporary storage fields in accordance with the jobs and documents on which the user works. No clipboard supports such a requirement. [0059] As described above, when a user creates a document, the conventional technique causes various problems. [0060] In addition, an inspiration support system needs to process and arrange information to support a user's processing and arranging of information, and to inspire the user. [0061] For example, using the above inspiration support system called “KJ method”, the users gather the cards to form the “island”, and write a super-ordinate concept common to all cards forming the “island”, and put the concept card on the top of the island. [0062] The users dispose the stacks of the cards on a large sheet of paper based on the relevance between the “islands”, and spreading each stack, attach the cards belonging to the stack to the large sheet of paper in accordance with the determined disposition. The users surround the cards forming the islands by a closed line of various colors and thicknesses and complete the relevance chart (the compatibility chart). [0063] Conventionally, such an inspiration support system functions as a closed system. The inspiration support system, however, needs to receive information elements from other application programs or to hand over processed information elements or the result of inspiration supporting. [0064] The conventional user interface cannot improve the collaboration between the inspiration support system and the other application programs. The conventional clipboard and the improved clipboard cannot support such an inspiration support system that helps the user process and arrange information. [0065] The temporary storage field for an inspiration support system, when many information elements are stored therein, needs to help users to appropriately manage and efficiently use the information elements. Such a temporary storage field is not proposed yet. [0066] It is convenient to express the relationships between information elements stored in the temporary storage field. According to a known method, the user can move around the information elements in a certain region. The user can imply the closeness and similarity among information elements by changing the position at which each information element is displayed. [0067] Information work space systems, for example, are equipped with such a function. The information work space systems, however, are not equipped with a function to receive data from other application programs or to hand over properly formatted data to other application programs. The function provided by the temporary storage field does not satisfy the requirement of the temporary storage field for an inspiration support system. The conventional temporary storage field does not disclose the technique to realize spatial disposition of information elements. [0068] The user may want to define groups of information elements and arrange the information elements in accordance with the defined groups so that the user can manipulate the information elements easily. Accordingly, the temporary storage field for inspiration support systems needs to support such a function. [0069] Some techniques to realize the grouping of information elements have been already disclosed. For example, Japanese Patent Laid-open Application No. 2000-76367 discloses a concept “background region” with which the user can group the information elements. According to this conventional technique, an information element needs to be attached to one of the background regions from the beginning; it takes time to create a new group during a job, and to regroup the information elements. To the contrary, the temporary storage field for an inspiration support system needs to allow the user to define groups anytime, if necessary. The “KJ method” proposes a method of supporting inspiration based on the grouping of information elements. [0070] If an apparatus that provides a temporary storage field is provided with a function to express groups of information elements, the apparatus can inspire the user using the grouped information elements. Japanese Patent Laid-open Application No. 2000-76367 does not disclose a method of expressing the relationships between the background regions. The user cannot appropriately express the order and comparable relationships between the background regions, and the method fails to support inspiration using the grouped information elements. Thus, the grouping function that can be coupled with a method of expressing structure (to be described later) needs to be realized. [0071] In addition, the grouping of information is usually hierarchical, that is, a group of information may include therein another group of information as a subgroup. The method of grouping information elements needs to support the hierarchical grouping. [0072] The relationships between information elements generally include contrast relationship and causal relationship. These relationships may be expressed by an arrow, for example, correlating or connecting information elements. Inspiration support tools such as Inspiration 6 (Inspiration Software, Inc.) provides a function that connects information items by arrows. [0073] Especially, “ISOP Cho-Hassohou Version 3.0” (ITEC Inc.) is aimed at supporting the “KJ method”. It provides functions such as the grouping of information elements and the correlating of information elements, or groups of the information elements. [0074] Graphic editing application programs, word processors, and page layout application programs, for example, have functions such as disposing images, text, and drawings, and drawing rectangles and free curves. They further have functions such as grouping those elements, moving the elements in a block, and deleting. [0075] These application programs, however, are not intended to provide a temporary storage field. For example, they do not support a function to exchange data of a plurality of formats with another application program. Such functions are inevitable for the temporary storage field. [0076] The user may want to attach meta-information to each information element. XLibris is the conventional technique that allows the user to add free style meta-information to the information elements. [0077] XLibris, however, is designed to support the reader of a document by enabling the reader to write comments on the document; the information elements are essentially shrunk and displayed in the form of thumbnails. As a result, even when a part of the document (only few words, for example) is displayed, only the thumbnail of the page is displayed. The user cannot recognize the contents of the information element at a glance. XLibris does not support a function to spatially dispose drawings and pictures. Due to the lack of these functions, XLibris does not satisfy the requirement of the temporary storage field for an inspiration support system. SUMMARY OF THE INVENTION [0078] Accordingly, it is an object of the present invention to provide a method of managing a casual storage field, a casual storage field management apparatus, an image forming apparatus, a computer program, and a computer readable recording medium including a computer program for managing the casual storage field flexibly and efficiently. [0079] To achieve the above object, a method of managing a casual storage field according to the present invention comprises the steps of: receiving a plurality of information elements from one or more application programs, each information element including one or more data items; retaining the received information elements in said casual storage field; displaying a state of said casual storage field and the retained information elements; and handing over, in response to a user request, one or more of the retained information elements to an application program. [0080] According to the method of managing a casual storage field of the present invention, the casual storage field can receive an information element from another application program, display the received information element in the display region of the casual storage field, and hand over, in response to a user instruction, the information element to yet another application program. The user can temporarily or even permanently store the information element in the casual storage field, and can use the information element when desired. [0081] Other objects, features, and advantages of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS [0082] [0082]FIG. 1 is a block diagram showing the hardware configuration of an apparatus for managing a casual storage field according to an embodiment of the present invention; [0083] [0083]FIG. 2 is a block diagram showing the functional structure of an apparatus for managing a casual storage field according to an embodiment; [0084] [0084]FIG. 3 is a schematic diagram for explaining the mutual relationship among a casual storage field, an information element, an information element group, and a drawing element according to an embodiment; [0085] [0085]FIG. 4 illustrates the data structure of a casual storage field according to an embodiment; [0086] [0086]FIG. 5 illustrates the data structure of an information element according to an embodiment; [0087] [0087]FIG. 6 illustrates the data structure of an information element group according to an embodiment; [0088] [0088]FIG. 7 illustrates the data structure of a drawing element according to an embodiment; [0089] [0089]FIG. 8 illustrates a casual storage field displayed on a screen according to an embodiment; [0090] [0090]FIG. 9 is a schematic diagram for explaining the change in display size of a casual storage field according to an embodiment; [0091] [0091]FIG. 10 is a schematic diagram for explaining the coordinate provided in a casual storage field displayed on a screen according to an embodiment; [0092] [0092]FIG. 11 is a flow chart for explaining a process of receiving a data item according to an embodiment; [0093] [0093]FIG. 12 is another flow chart for explaining a process of receiving a data item according to an embodiment; [0094] [0094]FIG. 13 is a flow chart for explaining a process of obtaining data items from a mediate region according to an embodiment; [0095] [0095]FIG. 14 is a flow chart for explaining a process of displaying an information element according to an embodiment; [0096] [0096]FIG. 15 is a flow chart for explaining a process of handing over a data item according to an embodiment; [0097] [0097]FIG. 16 is a flow chart for explaining a process of handing over data items of a plurality of different data types according to an embodiment; [0098] [0098]FIG. 17 is a flow chart for explaining a process of handing over a data item in which the data type of the data item is transformed into another, according to an embodiment; [0099] [0099]FIG. 18 is a flow chart for explaining a process of handing over a data item in which the data type of the data item is transformed into another before the data item is handed over to another application program, according to an embodiment; [0100] [0100]FIG. 19 is a state transition diagram according to an embodiment; [0101] [0101]FIG. 20 is a flow chart for explaining a process of moving an information element according to an embodiment; [0102] [0102]FIG. 21 is a flow chart for explaining a process of deleting an information element according to an embodiment; [0103] [0103]FIG. 22 is a flow chart for explaining a process of moving a plurality of information elements according to an embodiment; [0104] [0104]FIG. 23 is a flow chart for explaining a process of grouping information elements according to an embodiment; [0105] [0105]FIG. 24 illustrates a casual storage field displayed on a screen in which drawing elements are displayed according to an embodiment; [0106] [0106]FIG. 25 is a flow -chart for explaining a process of drawing according to an embodiment; [0107] [0107]FIG. 26 is a schematic diagram for explaining an embodiment; [0108] [0108]FIG. 27 illustrates a table indicating the correlation between a window title and a casual storage field ID according to an embodiment; [0109] [0109]FIG. 28 is a schematic diagram for explaining a system menu; [0110] [0110]FIG. 29 is a schematic diagram for explaining a system menu according to an embodiment; [0111] [0111]FIG. 30 is a flow chart for explaining a process of correlating a window to a casual storage field according to an embodiment; [0112] [0112]FIG. 31 is a schematic diagram for explaining a screen in which casual storage fields are disposed on the side of respective windows, according to an embodiment; [0113] [0113]FIG. 32 is a flow chart for explaining a process of adjusting the display state of a casual storage field to the display state of a window, according to an embodiment; [0114] [0114]FIG. 33 illustrates a table retaining data items of a plurality of different data types; and [0115] [0115]FIG. 34 is a block diagram showing the functional structure of a conventional apparatus.
[0118] [0118]FIG. 1 is a block diagram showing a casual storage field management apparatus according to an embodiment. A display unit 101 is a two-dimensional display device such as a CRT display. An input unit 103 includes a keyboard and a mouse, for example. The input unit 103 needs to include at least a device to input the coordinate such as a mouse. A display control unit 102 and an input receiving unit 104 are the interfaces of the display unit 101 and the input unit 103, respectively. A magnetic disk drive 106 is controlled by a magnetic disk drive control unit 105. The casual storage field management apparatus is provided with a main memory unit 107 and CPU 108. All elements are connected to each other through a bus. [0119] [Functional Configuration]
[0120] A computer program for managing the casual storage field according to the present invention is stored in the magnetic disk drive 106 or the main memory unit 107. CPU 108 retrieves and runs the computer program. [0121] [0121]FIG. 2 is a schematic diagram showing the functional configuration of the casual storage field management apparatus according to an embodiment. A casual storage field management unit 202 manages the casual storage field and objects stored therein. The casual storage field management unit 202 is an ordinary database management system, for example. A casual storage field display unit 201 is a window object to display the state of the casual storage field. The casual storage field display unit 201 informs the casual storage field management unit 202 of a user input in connection with the casual storage field. [0122] A document editing application program 206 and a drawing editing application program 207 are ordinary application programs available in the market. A data reception processing unit 203 is a computer program that obtains data stored in a mediate region 205 by the document editing application program 206 and the drawing editing application program 207, and registers the data in the casual storage field management unit 202. A data transmission processing unit 204 is a computer program to store data related to the casual storage field in the mediate region 205 so as to transmit the data to the document editing application program 206 and the drawing editing application program 207. The mediate region 205 is provided by an operating system. When the casual storage field management apparatus is used as an inspiration support system, an inspiration support application program is used as well as the document editing application program 206 and the drawing editing application program 207. If the inspiration support application program includes a document editing software program and a drawing editing application program as a package, only the inspiration support application program is used instead of the document editing application program 206 and the drawing editing application program 207. [0123] A document display window 210 is a window object displayed by the document editing application program 206, the drawing editing application program 207, and so forth. A plurality of document display windows 210 may be displayed simultaneously. When a document display window 210 is displayed, is enlarged (shrunk), or is moved, for example, a window display state observation unit 208 receives an event. A correlation processing unit 209 processes the correlation between the document display window 210 and the casual storage field. [0124] [Data Structure]
[0125] [0125]FIG. 3 is a schematic diagram for explaining the mutual relationship among the casual storage field, an information element (information item), a drawing element (drawing item), and an information element group. The casual storage field management apparatus according to an embodiment includes a plurality of casual storage fields. [0126] The casual storage field is an object including a plurality of information elements, a plurality of information element groups, and a plurality of drawing elements. The data structure of the casual storage field is showed in FIG. 4, and includes a casual storage field ID, name, display size, information elements, drawing elements, information element groups, and selected elements. FIG. 4 shows an example in which the temperature storage field ID is [Space1]. The display size is 1280 pixels wide and 1024 pixels high; information elements are [InfoItem1], [InfoItem2], and [InfoItem3]; drawing elements are [DrawItem1], [DrawItem2], and [DrawItem3]; the information element group is [Group1]. The information element [InfoItem1] is currently selected. If a plurality of elements are selected, the selected elements are stored as a string. Though the coordinates are measured by pixels in this example, any unit that can indicate the area of the screen is acceptable. [0127] The information element is an object representing each information item registered in the casual storage field. As showed in FIG. 5, the data structure of the information element includes the following: an information element ID; data of various types (the location (path, for example) of the stored data, if any, or indication that no data are stored); a related file (the location (path, for example) of the stored file, if any, or indication that no file is stored); the coordinates at which the information element is displayed; and the window size in which the information element is displayed. The data of various types include the following: text data, Rich Text Format (RTF) data, Joint Photographic Experts Group (JPEG) data, Bit Map (BMP) data, Device Independent Bitmap (DIB) data, and Windows (trade mark) Meta-File (WMF) data. [0128] [0128]FIG. 5 illustrates an example where the information element ID is “InfoItem1”. The information element of FIG. 5 indicates that JPEG data and WMF data are stored at “e:�data�infoitem1.jpg” and “e:�data�infoitem1.wmf”, respectively. No other data such as text data and RTF data are stored. The information element is displayed in a 120 pixels-wide, 90 pixels-high window at the coordinate (450, 250). [0129] The information element group refers to a plurality of information elements, a plurality of information element groups, and a plurality of drawing elements as members. FIG. 6 illustrates the data structure of the information element group including an information element group ID, a display coordinate, display size, and members. [0130] The example of FIG. 6 is an information element group of which the information element group ID is “Group1”. The information element group is displayed in a 420 pixels wide, 500 pixels high window at the coordinates (20, 20). It includes group members of information elements “InfoItem2” and “InfoItem3”, and a drawing element “DrawItem1”. [0131] A drawing element is an object representing a line drawn on the casual storage field. FIG. 7 illustrates the data structure of the drawing element, which includes a drawing element ID, the type of line, the color of line, the width of line, the number of stored coordinates, the sequence of X-coordinates, and the sequence of Y-coordinates. The example of FIG. 7 is a drawing element of a drawing element ID “DrawItem1”. The type of line is “free curve”; the color of line is “black”; the width of line is. “2 pixels.”; the number of coordinates is “6”. The X-coordinates and Y-coordinates are indicated as well. [0132] [Overview of the Entire Process]
[0143] Data are received from another application program such as the document editing application program, and an information element representing the data is displayed in the casual storage field. [0144] The mediate region provided by an operating system is used to execute this step. Any mediate region provided by the operating systems generally available is usable, and its specifications do not matter. The above clipboard is an example of the mediate region. An application program can determine whether data of a designated data type is stored in the mediate region and obtain the data of designated data type by causing the operating system to execute commands in compliance with publicly known procedure. [0145] When the user hands over data to the casual storage field, the step of receiving data is activated. In this step, the user drags and drops, for example, a display object from an application program to the casual storage field. [0146] The data are handed over from the application program to the mediate region in compliance with the procedure defined by the operating system. For example, the data to be handed over to the mediate region are assumed to be already stored by the application program before the step of receiving data is activated. [0147] [0147]FIG. 11 shows the step of receiving data. In S1001, it is determined whether effective data is already stored in the mediate region. If no effective data are stored, the step of receiving data is terminated. If it is determined that effective data are already stored, the effective data are stored in the casual storage field in S1002. In S1003, the data stored in the mediate region are retrieved, and correlated with the added information element. The correlated information element is displayed in S1004. In S1005, the application program handing over the data is informed of the result of processing. In response to this information, the application program executes processing, if necessary. For example, in the case where the user gives an instruction to move the data, the application program handing over the data deletes, in response to this information, the display object corresponding to the data. [0148] The case where the step of receiving data is activated only once is described above. In the case where the step of receiving data is activated repeatedly, information elements corresponding to the data received in activation are added to the casual storage field and correlated with the data. [0149] In the case where data related to plural objects are handed over to the casual storage field via the mediate region using the step of receiving data described above, it is possible to receive data items one by one, and add and display plural corresponding information elements. [0150] [Obtaining and Holding Peripheral Data]
[0157] The step of obtaining data from the mediate region is included in the above step of receiving data. The application program that hands over the data sometimes stores data items of plural data types in the mediate region. In this case, the data types of the stored data items are examined, and each data item is retrieved one by one. In the following description, the data types of the stored data items are expressed as data types A, B, C . . . [0158] [0158]FIG. 13 shows the procedure of obtaining data from the mediate region. In S1101, it is determined whether there are data of data type “A” stored in the mediate region. If no data of data type “A” are stored in the mediate region, the next data type is examined (S1105). If there are data of data type “A” stored in the mediate region, the data item is retrieved (S1102). In S1103, the obtained data item is stored using an ordinary file system or data base management system. In S1104, the information element “N” that is generated in S1002 and this data item are correlated to each other by, for example, registering the path of the file in which the obtained data item is stored as the attribute of the information element “N”. [0159] In steps S1105 through S1108, the steps S1101 through S1104 are repeated for data type “B”. The data items of plural data types are obtained by repeating the steps described above as many times as the number of data types to be obtained. [0160] In the case where data items of plural data types are stored in the mediate region, the data items can be obtained by the data type. These data items are stored in data types that are identifiable from each other. This procedure is clearly different from the disposition of information using conventional document editing application programs. This procedure is especially important to realize the reuse of temporarily or permanently stored information effectively. [0161] [Data Type to be Received]
[0164] [0164]FIG. 14 shows the process of displaying an information element. In S1201, display format is determined based on the stored data type. Since there are various data types, the contents of data need to be displayed in a manner in which the user can understand the contents of data at a glance. For example, it is desired to visually display the contents of data as is, instead of its name or icon. For example, it is better to display text data as text and image data as an image. [0165] If an information element includes a file address such as a path as a data item, it is desired that the thumbnail of a document be stored in the file. The thumbnail is generated, for example, by displaying the document using the application program with which the document is generated, capturing a window image, and shrinking the window image. [0166] If an application program such as Adobe Acrobat (trade mark) 5.0 having a function of generating a thumbnail is used, one can obtain the thumbnail of a document. If the thumbnail of a document is not available, the icon correlated to the document file can be obtained by querying the operating system. [0167] In the above process of receiving an information element, when plural data items of different data types are received, it is necessary to select the display format of the information element from plural candidates of formats. That is, the data items of plural data types are not displayed in a casual storage field using display formats suitable to respective data items, but are displayed using a representative format. Even if there are plural data items of different data types, the user can easily understand the plural data items by indicating them using the representative format. The representative format is preferably a display format such as rich text, image, and meta-file, instead of text, with which the user can understand the data items more easily. When an information element including an image and text relating to each other is displayed, the rich text format and the meta-file format can express such relationship between the image and the text effectively and help the user understand the data items easily. [0168] In S1202, display objects depending on the display format are added to the window of the casual storage field. When the display objects are implemented, controls such as a textbox and an image are used to provide user interface functions. In S1203, tags are set in the display objects to control the correlation with the information element. The tags make it easy to obtain an information element correlated to the display object and to hand over data, for example. In S1204, the attribute of the display object is set, and the contents to be displayed are designated. [0169] In S1205, the size of the display object and the position of the display object are set. The size of the display object is determined in consideration of the entire region of the casual storage field so that the display does not become cluttered. For example, when an image requiring a large area needs to be displayed, the image is shrunk so as not to hide others. A new information element is displayed at the position where the information element is dropped to express the relationship between the user's operation and the new information element. [0170] [Handing Over Data]
[0171] When the user designates an information element to be handed over and an application program to receive the information element, a process of handing over data is activated. The user is required, for example, to drag and drop the display object representing the information element from the casual storage field to the window of another application program. This operation is different from the above operation of moving an information element where an information element is dropped on the casual storage field, in that an information element is dropped on the window of another application program. [0172] When data are handed over to another application program, the mediate region is used. In the process of handing over data, the data related to a designated information element are stored in the mediate region so that the application program to which the data are to be handed over can obtain the data. The application program can obtain a plurality of data items and information about their data types simultaneously by providing commands to the operating system in compliance with publicly available procedure. [0173] [0173]FIG. 15 shows the process of handing over data. In S1601, in response to an event of requesting data provided by the application program, information of requested data types is obtained. In the following description, a data type “T” is assumed to be requested. As described previously, the requested data type is selected from the data types of which data are ready to hand over. After S1601, the data of the data type “T” are obtained from the stored information elements (S1602), and the data of the data type “T” are stored in the mediate region (S1603). [0174] After a series of steps described above, the application program receives data accordingly and informs the casual storage field of the result. The casual storage field management unit waits for the information that the application program has successfully received the data (S1604). If the user's instruction is to move the information element, the selected display object is deleted in response to this information. [0175] After the data are completely handed over to the other application program, the selected information element is cleared and the information element is discharged. [0176] [Handing Over Plural Data Items of Different Data Types]
[0177] Corresponding to the selected information element, a plurality of data items having different data types may be stored in the casual storage field according to the present invention. All data items held by the information element need to be identified and stored in the mediate region. In the following description, it is assumed that the different data types are indicated “A”, “B”, . . . [0178] In S701 of FIG. 16, it is determined whether the information element holds data items of data type “A” correlated to the information element. If a data item of data type “A” is held by the information element, the data item of data type “A” is obtained and stored in the mediate region (S702, S703). The same process is repeated for the data type “B” in steps S704 through S706. The same process is repeated for the other data types, if any. [0179] An application program can exchange data with another application program using the mediate region in the following steps. In the first step, the application program registers only information related to the data types of data items to be exchanged with the other application program. In the second step, in response to a request provided by the other application program to which the data items are to be handed over (receiving application program), the application program stores the data items in the mediate region. In this case, the application program does not need to store data items that are not to be exchanged. Accordingly, the process becomes efficient. [0180] After the above steps, the receiving application program receives the data items accordingly and informs the mediate region of the result of the receiving operation. The casual storage field management unit waits for the information that the receiving application program has successfully received the data item (S707). [0181] The application program that hands over the data item (transferring application program), in response to this information, performs processing accordingly. For example, in the case where the user's instruction is to move the information element, the selected display object is deleted in response to this information (S708, S709). [0182] The process of handing over an information element makes it possible to hand over data items correlated to respective information elements to another application programs through the mediate region. [0183] [Obtaining Date and Time]
[0186] A data type is transformed depending on the receiving application program. [0187] For example, it is possible to generate image data based on text data or rich text data, and to generate text data based on an image including text. The text data can be extracted from the image by well-known character-recognition processing. In addition, an image data item of a data type can be sometimes transformed into an image data item of another data type, and vice versa. For example, a bit map image can be converted into a JPEG image using a well-known technique; a full color bit map can be converted into a two-level bit map using another well-known technique. [0188] As described above, a data item of a data type can be transformed into a data item of another data type and be handed over to another application program by combining a plurality of application programs according to conventional techniques. [0189] In this case, however, the user needs to: store data in a file, activate an application program that transforms the data, cause the transferring application program to read and transform the file, store the transformed data, cause the receiving application program to read the transformed data, and so forth. The operation is not user friendly. In addition, the user needs to understand the data type of the data item to be transformed and the currently needed data type, and select an appropriate tool for the transformation, which is not easy at all. [0190] On the other hand, according to the method of managing a casual storage field of the present invention, the system automatically determines the data item of which data type the receiving application program needs and transforms the data item accordingly. The user can operate the system easily without knowing the internal operations of the system. [0191] When a data item is handed over to another application program, the data item may be transformed. Otherwise, the data item may be transformed before the data item is handed over. [0192] In the former case, if a data item of a requested data type is not stored, a data item of another data type that can be converted to the requested data type is handed over to another application program via the mediate region (clipboard) as showed in FIG. 17. [0193] The data type (referred to as “F” in the following description) requested by the receiving application program is obtained (SA01). It is determined whether a data item of the data type “F” is stored in the information element that is to be processed (SA02). If the data item of the data type “F” is stored in the information element, the data item is stored in the mediate region (SA06). The process is terminated. [0194] If no data item of the data type “F” is stored in the information element, it is determined whether a data item of a different data type “G” can be converted into the data item of the data type “F” (SA03). If the conversion is not feasible, the process is terminated. If the conversion is possible, it is determined whether there is a data item of the data type “G” stored in the information element (SA04). If there is no data item of the data type “G” stored in the information element, the process is terminated. [0195] If there is a data item of the data type “G” stored in the information element, the data item of the data type “G” is converted into the data item of the data type “F” (SA05). The conversion depends on the combination of the data type before the conversion and the data type after the conversion. For example, in the case where text is obtained from an image, the image is converted by character recognition processing. Finally, the data item of the data type “F” obtained by the conversion is stored in the mediate region (SA06). [0196] In the latter case, that is, the case in which the data item is transformed before the data item is handed over, the data item is converted when the data item is received from another application program or afterwards at an appropriate timing (when the data item is stored, for example). FIG. 18 shows a process in which the data item is converted immediately after the data item is received. [0197] The data items stored in the mediate region are obtained (SB01). A new information element is generated, and the obtained data items are stored therein (SB02). If no data item of a data type is stored in the mediate region and no data item of the data type is consequently obtained (SB04), a list of such data types is obtained (SB05). It is determined, for each one of the listed data types, whether there is any other data type that can be converted (SB07). If there is a data type that can be converted into one of the listed data types, it is determined whether there is a data item of the data type that can be converted into the one of the listed data types (SB08). If there is a data item of the data type that can be converted into the one of the listed data types, the data item is converted (SB09). The obtained data item is stored in the newly generated information element (SB10). [0198] The step of transforming the data type (SB09) includes the following: extracting text from the image, transforming text into an image, and changing the data type of an image (from bit map to JPEG, for example). The transformation is executed using a publicly known method. The data obtained as a result of the transformation are correlated with the information element as the other data are, and are stored in the information element. [0199] In this case, data items of all data types available through the transformation are obtained and stored in the information element. The efficiency of this process, however, may be degraded since the transformation is executed for the data types of which data items are not handed over. [0200] [Opening a Document]
[0201] Documents linked to an information element are opened by executing file activation processing provided by the operating system, for example. Microsoft Windows 2000 (™) can correlate files with specific application programs and can manage the files correlated with the specific application programs. Once the path of the file of a document is designated, the application program correlated with the file can be activated to display the document. [0202] [Switching a Plurality of Casual Storage Fields]
[0206] An apparatus for managing a casual storage field according to the present invention has a state parameter to indicate the state of the apparatus that changes in accordance with the user's operation. When the state is changed, the state parameter is changed. In response to detection of the user's operation, the system determines its operation in accordance with the state parameter. [0207] [0207]FIG. 19 is a schematic diagram showing state transition of the apparatus for managing a casual storage field according to the present invention. Each oval indicates a state, and each arrow indicates a transition. [0208] [Selecting Process]
[0211] When the apparatus detects that the user moves the information element by moving the pointer with the button of the mouse being pressed in the display region of the selected information element (dragging), for example, the apparatus transits to the moving state. The moving of the information element can be performed in a series of steps smoothly. [0212] In the moving state, the coordinates of the pointer are detected and stored one after the other. The display position of the information element is changed (moving process). FIG. 20 shows the process of moving an information element. In S1401, the initial value of the pointer position is obtained from the coordinate input unit. In S1402, the next pointer position is obtained. In S1403, the moving distance of the pointer is calculated based on the two pointer positions obtained above. If it is determined that the pointer position has changed in S1404, the position of the information element is updated (display coordinates of FIG. 5). In S1406, the information element is displayed at the newly set coordinate position. If it is determined that the pointer position has not changed, the position at which the information element is displayed is not changed. In S1407, it is determined whether the moving operation continues by checking the state of the mouse button or the pen position. If the moving operation is completed, the moving process is terminated. If the moving operation still continues, the next pointer position is determined, and the information element is moved repeatedly in the same manner. [0213] In the case where the updating of the display position of the information element requires so long a time that the information element cannot be showed naturally, a rectangle representing the envelop of the information element may be moved instead of moving the information element itself. As a result, the work load on the system is reduced, but the user can see that the information element actually “moves” in response to the user's operation. When the moving operation is completed, the display position of the information element is updated. [0214] When the apparatus detects that the user suspends the moving operation, the display position of the selected information element is determined, and the apparatus transits to the “selected” state. The moving operation is suspended, for example, by releasing the click button (or raising the pen), for example, in the display region of the casual storage field. In this case, the user cannot perform a different operation without suspending the moving operation. [0215] If an information element is moved to a casual storage field, and a portion of the information element sprawls out of the casual storage field, the user may lose the information element. To avoid this problem, the upper left corner point of the information element is required to stay within a box of which corner points are at (0,0), (0,H-h), (W-w,0), and (W-w,H-h), where “w” and “h” are the width and the height, respectively, of the moved information element and “W” and “H” are the width and the height, respectively, of the range in which the moved information element can be displayed. Accordingly, the information element can be definitely displayed within the display region of the casual storage field. [0216] In addition, when the information element is moved to a designated position, the moved information element may hide another information element. To avoid this problem, if the user designates such a position at which the moved information element, if moved, hides the other information element, the apparatus automatically adjusts the position at which the moved information element is placed so that the moved information element does not hide the other information element. As a result, the user does not lose any information element. [0217] A virtual lattice of constant pitch, lengthwise and widthwise, may be provided in the display region of a casual storage field, and the information elements may be placed only on crossing points of the virtual lattice so that the user can arrange the information elements easily and can make the casual storage field look nice. [0218] [Discharging from Selection]
[0219] When the apparatus detects the user discharging a selected information element in the “selected” state, the data item that is held by the selected information element is cleared, and the apparatus transits to the “discharged” state. The discharging operation is, for example, to click the mouse button at a position other than the region of display object of the information element but in the display region of the casual storage field. Since the “discharged” state is provided, a user's operation to an object other than the information element can be easily defined, which makes the design more flexible. When the information element transits to the “discharged” state, the display of the information element, if it still indicates the information element is selected, is restored to an ordinary one. [0220] [Deleting an Information Element]
[0221] When the apparatus detects the user's detecting operation, it deletes the information element, and then, transits to the “discharged” state. The deleting operation is, for example, to press the “Delete” key of the keyboard in the “selected” state. [0222] [0222]FIG. 21 is a flow chart showing a process of deleting an information element. When the information element is deleted, data items that are correlated with the information element and are stored with the information element are also deleted (S1504). If the address of a file is included in the data items to be deleted with the information element, only the data item indicating the address of a file is deleted, and the file itself is not deleted since the user may need the file for other purposes, for example. [0223] [“Ready for Handing Over” State]
[0224] The information elements that are designated by the user are handed over to a designated application program in response to the user's operation. [0225] When the information element is dragged up to the window region of another application program, the information element transits to a “ready for handing over” state. The types of data items that can be handed over to the other application program are registered in the mediate region. The moving operation described above is not performed. If a plurality of data items of different data types are correlated to the information element, all the different data types are registered in the mediate region. The application program retaining the window up to which the information element is dragged (receiving application program) determines data items of which data types can be handed over by reading the data types registered in the mediate region, and selects the data types to be handed over. The application program determines whether there is a data item of the selected data type. The application program can indicate whether the data items can be handed over by changing the display of a mouse cursor. [0226] As described above, only information about the data types of which data items can be handed over is registered in the mediate region until the receiving application program requests that the data items of the data types be stored in the mediate region. Data items that do not need to be stored in the mediate region are not stored in the mediate region, which increases the efficiency of processing. [0227] If the information element once dragged up to the display region of the other application program is further dragged up to the display region of the casual storage field, the information element transits to the “moving” state in which only the display position of the information element is moved. [0228] [Selecting Plural Information Elements]
[0229] According to a method of managing a casual storage field of the present invention, a plurality of information elements can be selected simultaneously. That is, when an information element is selected (in the “selected” state), the user can additionally select another information element by selecting the other information element with a specific key (Shift key, for example) pressed. A data item that is retained in the selected information elements may be any data item that can uniquely identify a plurality of information elements from one another. [0230] In the “moving” state, the display position of the plurality of information elements are moved in response to the move of the pointer. FIG. 22 shows a flow chart of this procedure. Since steps S1701 through S1704 are identical to the steps S1401 through S1404 of FIG. 20, a description of the steps S1701 through S1704 is omitted. When it is determined that the pointer position has been changed in S1704, the steps within a loop indicated by S1705 through S1709 are executed. Steps S1706 and S1707 are identical to the steps S1405 and S1406 of FIG. 20 in which the display positions of the selected information elements are updated. In S1708, it is determined whether there remains such any information element that is selected but has not been moved. If it is determined that there still remains an information element, the steps S1706 and S1707 are repeatedly executed for each of the remaining information elements. If all the selected information elements are completely moved, it is determined that there remains no information element to be moved in S1708, and the system exits from the loop. In S1710, it is determined whether the moving operation still continues. If the moving operation is still continuing, the next pointer position is obtained, and the moving process is repeated. If it is determined in S1710 that the moving operation has been completed, the moving process is completed and the system transits to the “selected” state. [0231] When the system transits from the “selected” state in which a plurality of information elements are selected to the “discharged” state, all data items retained in the selected information elements are cleared. [0232] [Grouping]
[0250] The method of managing a casual storage field according to the present invention includes a step of drawing, and enables the user to add drawing information to the casual storage field. Since the user can draw lines and arrows, for example, the user can classify the information items, compare the information items, and indicate the order or the causal relationship between the information items disposed in the casual storage field. The user can further add hand written drawings and characters in the casual storage field. As showed in FIG. 24, there are various types of lines such as a straight line, an arc, a rectangle, and a free curve. Especially, the user can use the free curve flexibly and usefully to achieve the above purposes. [0251] The procedure of drawing a free curve, for example, will be described below by reference to FIG. 25. In the “discharged” state, when the system determines the user's drawing operation, the system transits to a “drawing” state. This operation is, for example, a click & drag operation at a position that is not in the display region of an information element in the casual storage field in the “discharged” state. In the “drawing” state, the coordinate data input through the pointing device are retained one after the other, and a curve binding the coordinates is displayed. [0252] First, the initial value of the pointer position input from the coordinate input device is obtained (S2001), and is stored as the first element of an array (S2002). In S2003, the next pointer position is obtained. In S2004, the moving distance of the pointer is calculated based on these two pointer positions. In S2005, if it is determined that the pointer position has changed, the pointer position obtained in S2006 is stored as an element of the array. In S2007, a curve is showed based on a series of coordinates stored in the array. [0253] Bezier curve is one of well known methods to draw a free curve. The Bezier curve determines pixels of a curve by regarding the series of coordinates as control points. In addition, it is possible to draw a smooth curve on a multi-level display device using a well-known anti-alias method. If a series of coordinates are connected with straight lines, display processing becomes easy and fast. If the drawing information input by the user is captured at a high sampling rate, a relatively smooth curve can be drawn with this method. [0254] If it is determined that the pointer position has not changed in S2004, the steps S2005 and S2006 are skipped. In S2007, it is determined whether the drawing operation is continuing by examining the state of the mouse button and the position of the pen. If the drawing operation has been completed, the series of coordinates stored in the array are arranged in the data format of a drawing element showed in FIG. 7 and registered. Then the drawing process ends. [0255] If the drawing operation still continues, the next pointer position is determined (S2002), and the above steps are repeated in the same manner. If the system determines that the user has suspended the drawing operation, the system transits to the “discharged” state. This operation is, for example, to release the button of the mouse (or raise the pen up) in the “drawing” state. [0256] The series of coordinates then stored are retained as a drawing element (FIG. 7). An ordinary relational database, an ordinary file system, and so forth are used in order to store the drawing element. The coordinate data can be stored in parallel with the drawing process. In this case, the drawing process is required to follow and react to the user's drawing operation promptly. [0257] [Moving of a Drawing Element]
[0264] [0264]FIG. 26 is a schematic diagram for explaining the receiving and the handing over of an information element. [0265] One can select a drawing included in an existing document (document A) and dispose the drawing in the casual storage field using the method of managing a casual storage field according to the present invention. The user selects the drawing, and moves the drawing to the window of the casual storage field by a drag & drop operation. The application program displaying the document A (application program A) stores the data related to the selected drawing in the mediate region using an arbitrary format. The data may include data items of a plurality of data types such as bit map, WMF, and text (including the drawing). An application program that realizes the casual storage field executes the process of receiving data showed in FIG. 11 in response to an event in which an object is dropped on the display region of the casual storage field. The display of the drawing is added to the casual storage field, and data items of plural data types stored in the mediate region are correlated with the drawing and are retained. [0266] In the case where the user inserts the drawing into a document generated using another application program (application program B), the user is required to select the drawing and move the selected drawing to the window of the application program B. In this case, the application program that realizes the casual storage field detects an event wherein the user starts dragging, and performs the process of handing over data showed in FIG. 16. As showed in FIG. 16, in the case where data items of a plurality of data types related to the selected drawing are stored, the data items are stored in the mediate region. The application program B, in response to the event where the user performs a drop operation, receives data items from the mediate region and lays them out in the active document. In the case where data items of a plurality of data types are stored in the mediate region, the receiving application program (the application program B, in this case) determines data items of which data type to receive and inserts them in the document based on the specification of the receiving application program. The data items of the data types that the application program B processes at a priority are processed. [0267] In the case where data items are moved from the casual storage field and stored in the mediate region, only data items of a specific data type may be stored. To realize this function, when the user hands over data from the casual storage field to another application program, the user selects, from a pop-up menu, for example, the specific data type that the user desires to hand over to the mediate region. The application program that realizes the casual storage field stores, in the mediate region, only data items of the designated data type that are related to the element (figures, for example) stored in the casual storage field. Accordingly, it is possible to hand over only data items of desired data types from the casual storage field to the application program B. [0268] The method of managing a casual storage field in which the casual storage field is correlated with a designated region will be described below. [0269] It is difficult to implement a function to obtain the file name of documents generated and displayed using various application programs. On the other hand, the title of a window can be easily obtained by using the application program interface (API) provided by the operating system. The title of a window often includes information related to the title of a document. Accordingly, when the corresponding relationship between a document and the casual storage field is to be registered, the system obtains the title of the window in which the document is displayed, and the title of the window (string) and the casual storage field ID are correlated with each other and retained. An ordinary method of managing data such as a relational database is used for the storage. FIG. 27 illustrates a table retaining the window title and the casual storage field ID correlated with each other. If a new corresponding relationship needs to be added, a new record will be added to this table. [0270] [Correlating Operation]
[0271] The operation in which the user correlates a casual storage field with a window will be referred to as “correlating operation”. The user interface of the correlating operation may be easily realized in the following manner. The titles of currently displayed windows are listed and showed to the user. Then, the windows selected by the user are correlated with a casual storage field. In this case, a user interface object such as a menu item, with which the user enters the correlating operation, may be provided in the display window of the casual storage field. [0272] In this case, however, the user interface object such as a menu item is provided in the casual storage field, not in the window that the user desires to be correlated with the casual storage field. The location of the user interface object may confuse the user. Additionally, when the user correlates a casual storage field to the window, the window needs to be displayed on the screen. The user may not be familiar with such a restriction. [0273] This problem can be solved by the method of managing a casual storage field according to the present invention. To make the user interface of the correlating operation intuitively easy to understand, it is beneficial to provide a user interface object such as a menu in the window to be correlated as an entrance to the correlating operation. [0274] The window that displays a document and so forth is generally provided with a region called “title bar”. This title bar is provided with pull-down menus that are displayed by clicking. This pull-down menu includes menu items with which the user gives the system an instruction of operation such as the closing of the window and moving. This pull-down menu will be referred to as a “system menu”. FIG. 28 illustrates a title bar with the system menu displayed. [0275] New items are added to the system menu of a window displaying a document and so forth using the API provided by the operating system. Microsoft Foundation Class (MFC) library is provided as a basic framework of software that runs on Microsoft Windows (trade mark). MFC provides a system menu as a standard user interface related to the control of the state of windows. The system menu is a pull-down menu displayed at the upper left corner of the window. The system menu accompanies the windows of various application programs as far as the windows comply with the specific format. In other words, if the user interface is provided through the system menu, it is possible to provide a standard operation for windows of different application programs. The items to be displayed in the system menu can be edited, if necessary. A number of books deal with how to edit the system menu. The system is set so that, when one of additional menu item is selected, the correlating operation is activated. FIG. 29 illustrates the system menu in which a menu item of the correlating operation (“displaying casual storage field”) is added. [0276] [Displaying Correlated Casual Storage Field]
[0277] When the user performs the correlating operation, the apparatus for managing a casual storage field according to the present invention correlates the window with the casual storage field (correlating process) and display the casual storage field. [0278] [0278]FIG. 30 is a flow chart showing processing when the correlating operation is performed. If there is a casual storage field correlated with the window, the already correlated casual storage field is displayed (S2406). If there is no casual storage field correlated with the window, a new casual storage field is generated, and the corresponding relationship between the new casual storage field and the window is registered (S2403, S2404). The new casual storage field is displayed (S2405). In addition, in S2403, it is assumed that a unique ID is assigned to the new casual storage field. [0279] Thanks to this procedure, the user can give the apparatus an instruction to display a casual storage field by a common operation without minding whether the casual storage field and the window are already correlated and whether the user needs to define a new relationship. [0280] When displaying the casual storage field correlated with the window, the position and the size of the window are obtained, and the display region of the casual storage field is fitted to the position and the size. Accordingly, the relationship between the casual storage field and the window is showed in a manner in which the user can easily understand the relationship. For example, if the casual storage field is displayed as described above, a plurality of casual storage fields and respectively correlated windows can be displayed on the same screen in a well-organized manner, and the user can understand their corresponding relationships easily. FIG. 31 illustrates a screen on which the casual storage fields and the respective corresponding windows are disposed side by side by arranging the upper right corner of the window and the upper left corner of the casual storage field. [0281] [Changing Display State of Casual Storage Field Depending on the Display State of Window]
[0282] The method of managing a casual storage field according to the present invention includes the step of observing the display state of a window. If there is a casual storage field correlated to an opened window, the casual storage field is displayed. FIG. 32 is a flow chart showing the procedure of this processing. When a new window is opened on the computer system, the window display state observing unit 208 detects the event and activates the processing of FIG. 32. The handle of the opened window is obtained by querying the operating system (S2501). [0283] Subsequently, the title of the window is obtained (S2502). It is determined whether there is a casual storage field correlated to the obtained title, and if there is such a casual storage field, the casual storage field is obtained and displayed (S2503-S2505). If there is not such a casual storage field registered, nothing will be displayed. [0284] If the display position or size of the window displaying a document is changed, the window display state observing unit 208 detects such an event. The window display state observing unit 208 updates the display state of the casual storage field so that the upper right corner of the window and the upper left corner of the casual storage field are arranged to keep the window and the casual storage field disposed side by side touching each other as showed in FIG. 31. [0285] Furthermore, the window object of Microsoft Windows 2000 (™) is provided with a function to minimize a displayed window. The object of the window is not discarded, but the “minimized” window is hidden. The existence of the hidden window is indicated by an icon displayed in a region called the task bar on the screen. When a window that displays a document is minimized, the window display state observing unit 208 detects such an event. Further, if there exists a casual storage field correlated to the window, and it is displayed on the screen, the window display state observing unit 208 hides the casual storage field. When the window is displayed again (activated by operating “restoring to the original size”), the window display state observing unit 208 displays the correlated casual storage field. [0286] As described above, since the display state of the casual storage field is adjusted to the display state of the window in which the document is displayed, the user can easily understand the relationship between the window and the casual storage field. [0287] In addition, one can generate a computer program that causes a computer to perform the method of managing a casual storage field according to the present invention, and to store the computer program in a computer readable recording medium such as a magnetic disk. The computer to which the above computer program is installed operates as the apparatus for managing the casual storage field according to the present invention. [0288] The data handled by the method of managing a casual storage field according to the present invention is different from the data handled by a conventional clipboard. The difference will be described below. [0289] For example, the Windows 2000 (trade mark) operating system can handle a DataObject that functions as a “clipboard”. Software developers can use such a DataObject for a copy & paste operation and a drag & drop operation. The internal structure of the DataObject is not available to the public, but the interface of the DataObject is publicly known. [0290] A DataObject can store therein data items of a plurality of different data types and information indicating the data types. Data items can be restored from the DataObject by the designated data types. Accordingly, in the DataObject, the data items and the information of the data types of the data items are stored separately in a manner in which they are correlated to each other as showed in FIG. 33, for example. If so, data items of a plurality of different data types can be stored in the DataObject. [0291] The user may face difficulty when the user desires to store a plurality of text-type data items in the DataObject and to discriminate between them. Since the DataObject does not have a function of storing a data item in a memory device, the user cannot store the data items as a file or a record. [0292] The method of managing a casual storage field according to the present invention can simultaneously retain a plurality of structured data (information element) like the DataObject. Accordingly, the method of managing a casual storage field according to the present invention can retain data items of a plurality of different data types. The data items retained by the casual storage field are stored in a recording medium such as a hard disk. Even if the user turns off the apparatus, the user can restore the data items from the recording medium. [0293] According to the present invention, the casual storage field enables various application programs (not limited to specific application programs) to exchange information elements with each other. [0294] The casual storage field can not only retain but also store the information elements. The user can restore the stored information elements when the user need to use them. [0295] Since the casual storage field can obtain the data items related to the retained information elements and the transformed data items of which data type is transformed, the retained information elements can be used more efficiently. [0296] The data items related to the retained information elements are, for example, the date and time of the casual storage and other data items included in the document from which the information elements are taken. [0297] The transformation of data type according to the present invention includes, for example, the extraction of text from an image data item including the text, and the conversion between image formats (from JPEG to bit map, for example). [0298] The preferred embodiments of the present invention are described above. The present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention. [0299] This patent application is based on Japanese Laid-open Patent Application No. 2002-141632 filed on May 16, 2002, the entire contents of which are hereby incorporated by reference. Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5404442 *Nov 30, 1992Apr 4, 1995Apple Computer, Inc.Visible clipboard for graphical computer environmentsUS5752254 *Apr 8, 1996May 12, 1998International Business Machine Corp.Method and system for controlling clipboards in a shared application progamUS5787448 *Dec 13, 1995Jul 28, 1998Object Technology Licensing Corp.Dynamic linking systemUS5801693 *Jul 3, 1996Sep 1, 1998International Business Machines Corporation"Clear" extension to a paste command for a clipboard function in a computer systemUS5889518 *Oct 10, 1995Mar 30, 1999Anysoft Ltd.Apparatus for and method of acquiring, processing and routing data contained in a GUI windowUS5903269 *Apr 4, 1996May 11, 1999Anysoft Ltd.Apparatus for and method of acquiring processing and routing data contained in a GUI windowUS6040832 *Aug 10, 1998Mar 21, 2000Anysoft Ltd.Apparatus for and method of acquiring, processing and routing data contained in a GUI windowUS6222542 *Mar 11, 1999Apr 24, 2001Anysoft, LtdApparatus for and method of acquiring, processing and routing data contained in a GUI windowUS6532474 *Nov 13, 1998Mar 11, 2003Sharp Kabushiki KaishaApparatus and method for carrying out data linkage among a plurality of applicationsUS20020001000 *Mar 16, 2001Jan 3, 2002Ilya ShpilbergApparatus for and method of acquiring processing and routing data contained in a GUI windowUS20020080179 *Dec 25, 2000Jun 27, 2002Toshihiko OkabeData transfer method and data transfer device* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS7149745 *Apr 29, 2002Dec 12, 2006Sun Microsystems, Inc.Method for accessing database table columnsUS7516398 *Dec 23, 2003Apr 7, 2009Samsung Electronics Co., Ltd.Apparatus and method of executing multi-clipboardUS7546286Dec 15, 2005Jun 9, 2009Microsoft CorporationOffline multi-table data editing and storageUS7546291Dec 22, 2005Jun 9, 2009Microsoft CorporationData source task paneUS7716168 *Jun 29, 2005May 11, 2010Microsoft CorporationModifying table definitions within a database applicationUS7743026Jun 22, 2010Microsoft CorporationRedirection to local copies of server-based filesUS7783685 *Aug 24, 2010Sony CorporationInformation recording/reproducing apparatus, information recording/reproducing method, program storage medium, and programUS8135755Sep 20, 2005Mar 13, 2012Microsoft CorporationTemplates in a schema editorUS8219559Feb 26, 2010Jul 10, 2012Sony CorporationInformation recording/reproducing apparatus, information recording/reproducing method, program storage medium, and programUS8407586 *Mar 26, 2013Canon Kabushiki KaishaEditing apparatus, editing method, and programUS9189250 *Jan 16, 2008Nov 17, 2015Honeywell International Inc.Method and system for re-invoking displaysUS20020161754 *Apr 29, 2002Oct 31, 2002Sun Microsystems, Inc.Method for accessing database table columnsUS20040230907 *Dec 23, 2003Nov 18, 2004Samsung Electronics Co., Ltd.Apparatus and method of executing multi-clipboardUS20050108466 *Nov 12, 2004May 19, 2005Yoshikazu TakashimaInformation recording/reproducing apparatus, information recording/reproducing method, program storage medium, and programUS20060095447 *Dec 15, 2005May 4, 2006Microsoft CorporationOffline multi-table data editing and storageUS20060161533 *Dec 22, 2005Jul 20, 2006Microsoft CorporationData source task paneUS20070005630 *Jun 29, 2005Jan 4, 2007Microsoft CorporationModifying table definitions within a database applicationUS20070005634 *Sep 20, 2005Jan 4, 2007Microsoft CorporationTemplates in a schema editorUS20080141122 *Nov 1, 2007Jun 12, 2008Canon Kabushiki KaishaEditing apparatus, editing method, and programUS20090183111 *Jul 16, 2009Honeywell International, Inc.Method and system for re-invoking displaysUS20100149938 *Feb 26, 2010Jun 17, 2010Sony CorporationInformation recording/reproducing apparatus, information recording/reproducing method, program storage medium, and programUS20120056831 *Aug 26, 2011Mar 8, 2012Takuro NodaInformation processing apparatus, information processing method, and programWO2011079830A1 *Dec 28, 2009Jul 7, 2011Beel JoeranMethod for moving memory contents in a computer system* Cited by examinerClassifications U.S. Classification1/1, 707/E17.005, 707/999.003International ClassificationG06F12/00, G06F3/048, G06F17/30, G06F9/46Cooperative ClassificationG06F17/30286European ClassificationG06F17/30SLegal EventsDateCodeEventDescriptionAug 20, 2003ASAssignmentOwner name: RICOH COMPANY,LTD., JAPANFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YAMASAKI, MAKOTO;REEL/FRAME:014413/0354Effective date: 20030616Sep 8, 2011FPAYFee paymentYear of fee payment: 4Sep 2, 2015FPAYFee paymentYear of fee payment: 8RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services