(19) 11 Patent Number: 5818447
Total Page:16
File Type:pdf, Size:1020Kb
USOO5818447A United States Patent (19) 11 Patent Number: 5,818,447 Wolf et al. (45) Date of Patent: Oct. 6, 1998 54 SYSTEM AND METHOD FOR IN-PLACE Varhol, “Microsoft ActiveX will complement, not conquer, EDITING OF AN ELECTRONIC MAIL Java”, Government Computer News, v15 n10, pp. 27 (2), MESSAGE USING ASEPARATE PROGRAM May 1996. 75 Inventors: Richard J. Wolf, Seattle; Srinivasa R. Drews, “MIME interoperability: sharing files via E-mail', Koppolu, Suryanarayanan Raman, Network Computing, v7 né, pp. 96 (2), Apr. 1996. both of Redmond; Steven J. Rayson, “OLE 2 Programmer's Reference”, Microsoft Press, 1994, Seattle, all of Wash. vol. 1, pp. 3-29. 73 Assignee: Microsoft Corporation, Redmond, “User's Guide: Lotus cc:MAIL, Release 2', Lotus Devel Wash. opment Corporation, 1993, pp. 217-236. “User's Guide: Lotus Ami Pro, Release 3.0', Lotus Devel 21 Appl. No.: 660,019 opment Corporation, 1993, pp. 429–441. 22 Filed: Jun. 6, 1996 (51) Int. Cl. ................................................. G06T 1100 Primary Examiner Joseph H. Feild 52 U.S. Cl. .................... sis. 0.568.305/2006. Attorney, Agent, or Firm Jones & Askew 707/516; 707/524 57 ABSTRACT 58 Field of Search ..................................... 395/682, 683, - - - - - - 395/200.33, 285, 2006, 200.61; 345/335, An email client invokes a DocObject-enabled mail note to 352; 707/516, 524,530 display an email message and related features of the user interface. The mail note, which is a DocObject container, 56) References Cited creates a DocObject server by invoking a DocObject enabled word processor. The mail note provides a view port U.S. PATENT DOCUMENTS in which the word processor displays and edits the body of 5,682,532 10/1997 Remington et al. .................... 395.683 the email message. The word processor provides its format 5.682,536 10/1997 Atkinson et al... 395/683 X ting and editing features in the context of the mail note. OLE 5,706,458 1/1998 Koppolu. menu merging provides both email and word processing interoperability while editing the message. Programming OTHER PUBLICATIONS interfaces between the mail note and the word processor Oski, “Mac clients, take note: Lotus Notes 4.1 finally allow the mail note to translate message data back and forth arrives”, MacWEEK, v10, n21, pp. 23(2), May 1996. between the word processor's format and the format Goulde, “Microsoft adapts to the WWW, Distributed Com imposed by the email client. This ensures that messages puting Monitor, V11 n2, pp. 21(5), Feb. 1996. created with the word processor can be read by other email Jones, “Microsoft readies DocObject; technology will allow clients. document editing in Web browsers”, InfoWorld, v18 n18, p. 49, Apr. 1996. 40 Claims, 9 Drawing Sheets ------ 1205 (START MAIL clien 1210 DETRMNES WHCH 1200 MAILNOTEO LAUNCH Y - a LAUNCHMAILNOE -- 1215 (CREATE MAILNOTE OBJECT) PROVIDE POINTERTO - - 122O MATEMDAA STORE MAILNOTE PROGRAM CREATES DocObject --- 1225 SERVER OBECT MAILNOTE POPULATED -- 230 WITH INFO FROMMAP - S TOREA - -—Y -- PASS RFAN ---- 1235 CHECKLSO DocObject SERVER WOR PROCESSOR --- 1240 NALZES WINDOW -- Y - -- 1245 DSAY MAIL TEM y x -- 1250 U.S. Patent Oct. 6, 1998 Sheet 2 of 9 5,818.447 37A APPLICATION PROGRAM FUNCTIONS MASSAGES 36 OPERATING SYSTEM - 200 COMPUTER HARDWARE MENU BAR -. 3OO TOOL BAR <- THIS ISTEXT. THIS ISTEXT. THIS STEXT. THIS ISTEXT. 305 THIS ISTEXT. THIS ISTEXT. THIS STEXT. THIS ISTEXT. THIS ISTEXT. THIS ISTEXT. 310 THIS ISTEXT. O O2 THIS ISTEXT THIS ISTEXT. THIS STEXT. THIS ISTEXT. THIS ISTEXT. THIS ISTEXT. C D D THIS ISTEXT. THIS ISTEXT. is F THIS ISTEXT THIS ISTEXT. THIS ISTEXT. THIS ISTEXT. THIS ISTEXT. THIS ISTEXT. THIS STEXT. THIS ISTEXT. THIS ISTEXT. FIG. 3 U.S. Patent Oct. 6, 1998 Sheet 3 of 9 5,818.447 41 O 400 MENU BAR TO: FROM: CC: DOCUMENT 415 320 O IMSoDocument / 4-1 O PersistStorage O DataObject DOCUMENT O IOleObject 505 MSoView - O IOleInPlaceObject VIEW O IOleInPlaceActiveObject FIG. 5a U.S. Patent Oct. 6, 1998 Sheet 4 of 9 5,818.447 550 - OleInPlaceFrame DocuMENT IOleContainer CONTAINER --- MsodocumentSite 560 DOCUMENT SITE IOleClientSite 565 VIEWSITE IOleInPlaceSite FIG. 5b. U.S. Patent Oct. 6, 1998 Sheet 5 of 9 5,818.447 CONTAINER CALLS CREATE 61O VIEW () IN 600 MSODOCument NTERFACE OF DOCUMENT OBJECT DOCUMENT OBJECT 615 CREATES A VIEWAND RETURNS LOCATION OF VIEW CONTAINER CALLS SHOW OR UACtivate IN IMSO VIEW INTERFACE OF VIEW OBJECT VIEW OBJECT DISPLAYS VIEW N SPECIFIED VIEWPORT F.G. 6 U.S. Patent Oct. 6, 1998 Sheet 6 of 9 5,818.447 700 CLIENT 735 FORM 745 705 FORMPROGRAMMING INTERFACES MESSAGE ADDRESS FORM FORM STORE TENSE BOOK REGISTRY SERVER PROVIDER PROVIDER PROVIDER 71O 715 72O FIG 7 FORM REGISTRY MENU BAR 815 - as 805--- 81O FIG. 8a y 850 MENU BAR - 855 TOOL BAR FIG. 8b. U.S. Patent Oct. 6, 1998 Sheet 7 of 9 5,818.447 900 905 910 WORD PROCESSOR FIG. 9 900 1005 1010 WORD PROCESSOR DocOject IMSOMailSite MSOForm Site MSoMailEditor 11 OO \ --------- - - - - Y HEADER 1 105-- BODY -RTF 1110-L -PLAINTEXT - - - ATTACHMENTS 1 115- - FIG. 11 U.S. Patent Oct. 6, 1998 Sheet 8 of 9 5,818.447 MAIL CLIENT 121 O DETERMINES WHICH 1200 MAILNOTE TO LAUNCH LAUNCH MAILNOTE 1215 (CREATE MAILNOTE OBJECT) PROVIDE POINTERTO 122O MAIL ITEM DATA STORE MAILNOTE PROGRAM CREATES DocObject 1225 SERVER OBJECT MAILNOTE POPULATED 1230 WITH INFO FROM MAP STORE PASS RTF AND 1235 CHECKLIST TO DocObject SERVER WORD PROCESSOR 1240 INITIALIZES WINDOW 1245 U.S. Patent Oct. 6, 1998 Sheet 9 of 9 5,818.447 1300 - 1305 \ Y MAIL CLIENT DETERMINES 135O WHICH MAILNOTE TO 131 O \ WORD PROCESSORS LAUNCH EDITS BODY IN RESPONSE TO USER INPUT LAUNCH MALNOTE 1315 (CREATE MAILNOTE OBJECT) EXTRACT CONTENTS OF WP WINDOW PROVIDE POINTERTO 132O MAILITEM DATA STORE CREATE MAIL TEM MAILNOTE PROGRAM CREATES DocObject SERVER OBJECT TRANSFER MAIL TEM TO E-MAIL CLENT SEND E-MAIL TEM ! POPULATED APPLY WITH INFO 1330 1342 FROMMAP TEMPLATE STORE PASSRTF AND CHECKLIST TODOCObject SERVER WORD PROCESSOR INITIALIZES FIG. 13 WINDOW DISPLAY MAIL TEM 5,818.447 1 2 SYSTEMAND METHOD FOR IN-PLACE documents for transmission via electronic mail. Such a EDITING OF AN ELECTRONIC MAIL System should provide Sophisticated formatting and editing MESSAGE USING ASEPARATE PROGRAM options in the context of the email environment and should TECHNICAL FIELD provide message data in a format that is compatible with downlevel email clients. The present invention relates to a System and method for handling electronic mail (email), and more particularly SUMMARY OF THE INVENTION relates to a System and method for utilizing a separate The present invention satisfies the above-described needs program to edit and display an email message in the context by employing a container object and a server object to of an email client. display an email message. The container object provides a BACKGROUND OF THE INVENTION view port in which the server object renders the body of the In the past there has been a tremendous difference email message. This allows all of the formatting and editing between the formatting options available for electronic mail features of the server object to be applied to the body of the (email) and those available for printed documents. Email email message. The container object provides controls asso messages were generally restricted to the transmission of 15 ciated with both an email program (the email client) and the Simple text and relied on formatting conventions that traced Server object, and Serves as the interface between the Server their history back to teletypes. For example, emoticons Such object and the email client. The container object translates as :-), abbreviations Such as <G>, and Suggested formatting the message data between the format used to Store the data such as underline and bold were the only way to in the message Store and the format used by the Server express emotion or to draw emphasis within Simple text object. The container object ensures that formatting and meSSageS. attachments rendered by the Server object are properly While email's formatting options have remained fairly translated So that the resulting email message is compatible basic, the formatting options and editing features provided with other email clients. by full power word processors have dramatically increased. For example, the present invention allows a user to edit or With a full powered word processor, thouser is able to apply 25 View an email message item from an email client program. a wide variety of Styles and formatting options. In addition The email client invokes a mail note (the container object), to the richer formatting, full powered word processors which provides an email-related user interface. The con provide powerful editing features, Such as background Spell tainer object also provides a view port or frame for viewing checking and automatic correction of common typographi and editing the contents of an email message. Instead of cal errors. Full powered word processors also allow users to implementing text editing or word processing functionality create increasingly Sophisticated and complex documents in the mail note or email client, the mail note allows a that include drawing objects, text colored with a highlighter, Separate, full-featured word processor program (the server borders, Shading, tables, and Special bullets. object) to display and edit the message in the view port AS the popularity of email has increased, three changes 35 provided by the mail note. This allows the user to edit and have taken place. First, Some Software publishers have View email messages using the editing environment and added Some rich text capabilities to the email program. formatting capabilities of the full-featured word processing Although this approach allowed a user to change the for program. The mail note provides the interface between the matting used in an email message, it required users to edit word processor and the data structure (or message Store) in email messages in an environment that was different than the 40 which the message data is Stored.