text: /*
   *     Generated by class-dump 3.4 (64 bit).
   *
   *     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2012 by Steve Nygard.
   */
  
  #import "NSObject.h"
  
  #import "ImageResizerDelegate.h"
  #import "MCActivityTarget.h"
  #import "MVTerminationHandler.h"
  #import "MailFullScreenWindowDelegate.h"
  #import "NSAnimationDelegate.h"
  #import "NSTextFinderClient.h"
  #import "NSToolbarDelegate.h"
  #import "NSUserInterfaceValidations.h"
  #import "NSWindowDelegate.h"
  
  @class CALayer, ColorBackgroundView, ComposeBackEnd, ComposeHeaderView, ComposeStatusView, DeliveryFailure, EditingMessageWebView, EditingWebMessageController, HeadersEditor, LoadingOverlay, MCAttachment, MailInspectorBarItemController, MailWindowShadowLayer, MessageViewer, NSArray, NSButton, NSDictionary, NSInspectorBar, NSMutableArray, NSMutableDictionary, NSOperation, NSOperationQueue, NSRunningApplication, NSScroller, NSString, NSTextField, NSTextFinder, NSToolbar, NSUUID, NSView<NSTextFinderBarContainer>, NSViewAnimation, NSWindow, StationerySelector, WebArchive, WebViewEditor;
  
  @interface DocumentEditor : NSObject <NSToolbarDelegate, MailFullScreenWindowDelegate, MCActivityTarget, MVTerminationHandler, NSAnimationDelegate, NSTextFinderClient, NSUserInterfaceValidations, NSWindowDelegate, ImageResizerDelegate>
  {
      WebViewEditor *_webViewEditor;
      HeadersEditor *_headersEditor;
      NSWindow *_window;
      NSToolbar *_toolbar;
      NSDictionary *_toolbarItems;
      unsigned long long _messageType;
      EditingMessageWebView *_composeWebView;
      ComposeHeaderView *_composeHeaderView;
      ComposeBackEnd *_backEnd;
      NSInspectorBar *_inspectorBar;
      MailInspectorBarItemController *_inspectorBarItemController;
      LoadingOverlay *_loadingOverlay;
      struct {
          unsigned int userSavedMessage:1;
          unsigned int userWantsToCloseWindow:1;
          unsigned int userKnowsSaveFailed:1;
          unsigned int registeredForNotifications:1;
          unsigned int userCanApplyStationery:1;
          unsigned int autoShowEditor:1;
          unsigned int isLoaded:1;
          unsigned int isAutoSaving:1;
          unsigned int shouldSaveAfterLoading:1;
      } _flags;
      struct CGPoint _originalCascadePoint;
      NSMutableDictionary *_bodiesByAttachmentURL;
      NSOperationQueue *_operationQueue;
      NSOperation *_finishLoadingEditorOperation;
      BOOL _inspectorBarDisplayed;
      DeliveryFailure *_deliveryFailure;
      NSTextField *_stationeryNameTextField;
      NSButton *_stationeryNameSaveButton;
      NSScroller *_fakeScroller;
      NSViewAnimation *_stationeryPaneAnimator;
      NSMutableArray *_imageResizers;
      unsigned long long _encryptionOverhead;
      unsigned long long _textLengthForLastEstimatedMessageSize;
      BOOL _sendWhenFinishLoading;
      BOOL _hasIncludedAttachmentsFromOriginal;
      NSMutableArray *_unapprovedRecipients;
      NSMutableArray *_userActionQueue;
      NSTextFinder *_textFinder;
      NSView<NSTextFinderBarContainer> *_findBarContainer;
      NSWindow *_transparentWindow;
      CALayer *_mainWindowLayer;
      CALayer *_composeContentLayer;
      CALayer *_headerAndBodyHostingLayer;
      CALayer *_messageHeaderLayer;
      CALayer *_messageBodyLayer;
      CALayer *_composeHeaderLayer;
      CALayer *_composeBodyLayer;
      CALayer *_composeToolbarLayer;
      MailWindowShadowLayer *_shadowLayer;
      struct CGRect _startRect;
      struct CGRect _endRect;
      struct CGRect _composeWindowFrame;
      struct CGImage *_mainWindowNonKeySnapshot;
      MessageViewer *_messageViewerToAttach;
      BOOL _sendAnimationIsInProgress;
      BOOL _sendAnimationCancelled;
      BOOL _shouldCloseWindowWhenAnimationCompletes;
      BOOL _shouldSaveWhenClosing;
      BOOL _shouldDoPopOutAnimation;
      id _loadDelegate;
      NSDictionary *_settings;
      EditingWebMessageController *_webMessageController;
      MessageViewer *_possibleFullScreenViewerParent;
      NSRunningApplication *_activeApplicationBeforeEditorOpened;
      NSWindow *_stationeryNameSheet;
      ColorBackgroundView *_stationeryPane;
      StationerySelector *_stationerySelector;
      ColorBackgroundView *_borderView;
      ComposeStatusView *_composeStatusView;
      NSString *_userHTMLForSharingTop;
      NSString *_userHTMLForSharingBottom;
      NSString *_URLShareUUID;
      WebArchive *_pageWebArchive;
      WebArchive *_readerWebArchive;
      MCAttachment *_PDFAttachment;
  }
  
  + (id)keyPathsForValuesAffectingDeliveryAccount;
  + (void)_emailAddresses:(id)arg1 approvedOrRejected:(BOOL)arg2;
  + (void)emailsRejected:(id)arg1;
  + (void)emailAddressesApproved:(id)arg1;
  + (void)_autoSaveTimerFired;
  + (void)setNeedsAutosave;
  + (void)restoreWindowWithIdentifier:(id)arg1 state:(id)arg2 completionHandler:(id)arg3;
  + (void)_mailApplicationDidFinishLaunching:(id)arg1;
  + (id)restoreDraftMessage:(id)arg1 withSavedState:(id)arg2;
  + (void)showEditorWithSavedState:(id)arg1 completionHandler:(id)arg2;
  + (void)restoreFromDefaults;
  + (void)handleFailedDeliveryOfMessage:(id)arg1 error:(id)arg2;
  + (void)_presentFullScreenDeliveryFailureWithError:(id)arg1;
  + (void)_setMessageStatus:(id)arg1 onMessageID:(id)arg2;
  + (id)createEditorWithType:(unsigned long long)arg1 settings:(id)arg2;
  + (id)keyPathsForValuesAffectingDocumentID;
  + (id)existingEditorForMessage:(id)arg1;
  + (id)editorsForDocumentID:(id)arg1 editorClass:(Class)arg2;
  + (id)existingEditorForMessage:(id)arg1 editorClass:(Class)arg2;
  + (id)documentWebPreferencesIdentifierForRichText:(BOOL)arg1;
  + (BOOL)documentType;
  + (void)unregisterDocumentEditor:(id)arg1;
  + (void)registerDocumentEditor:(id)arg1;
  + (id)documentEditors;
  + (id)_documentEditors;
  + (void)setAutosaveTimer:(id)arg1;
  + (id)autoSaveTimer;
  + (void)initialize;
  @property BOOL shouldDoPopOutAnimation; // @synthesize shouldDoPopOutAnimation=_shouldDoPopOutAnimation;
  @property(retain, nonatomic) MCAttachment *PDFAttachment; // @synthesize PDFAttachment=_PDFAttachment;
  @property(retain, nonatomic) WebArchive *readerWebArchive; // @synthesize readerWebArchive=_readerWebArchive;
  @property(retain, nonatomic) WebArchive *pageWebArchive; // @synthesize pageWebArchive=_pageWebArchive;
  @property(retain, nonatomic) NSString *URLShareUUID; // @synthesize URLShareUUID=_URLShareUUID;
  @property(retain, nonatomic) NSString *userHTMLForSharingBottom; // @synthesize userHTMLForSharingBottom=_userHTMLForSharingBottom;
  @property(retain, nonatomic) NSString *userHTMLForSharingTop; // @synthesize userHTMLForSharingTop=_userHTMLForSharingTop;
  @property(retain, nonatomic) ComposeStatusView *composeStatusView; // @synthesize composeStatusView=_composeStatusView;
  @property(retain, nonatomic) ColorBackgroundView *borderView; // @synthesize borderView=_borderView;
  @property(retain, nonatomic) StationerySelector *stationerySelector; // @synthesize stationerySelector=_stationerySelector;
  @property(retain, nonatomic) ColorBackgroundView *stationeryPane; // @synthesize stationeryPane=_stationeryPane;
  @property(retain, nonatomic) NSWindow *stationeryNameSheet; // @synthesize stationeryNameSheet=_stationeryNameSheet;
  @property(retain, nonatomic) NSRunningApplication *activeApplicationBeforeEditorOpened; // @synthesize activeApplicationBeforeEditorOpened=_activeApplicationBeforeEditorOpened;
  @property BOOL shouldSaveWhenClosing; // @synthesize shouldSaveWhenClosing=_shouldSaveWhenClosing;
  @property MessageViewer *possibleFullScreenViewerParent; // @synthesize possibleFullScreenViewerParent=_possibleFullScreenViewerParent;
  @property(readonly) EditingWebMessageController *webMessageController; // @synthesize webMessageController=_webMessageController;
  @property(retain) NSDictionary *settings; // @synthesize settings=_settings;
  @property id loadDelegate; // @synthesize loadDelegate=_loadDelegate;
  @property(retain, nonatomic) NSWindow *window; // @synthesize window=_window;
  @property(retain, nonatomic) HeadersEditor *headersEditor; // @synthesize headersEditor=_headersEditor;
  @property(retain, nonatomic) WebViewEditor *webViewEditor; // @synthesize webViewEditor=_webViewEditor;
  - (void)_cancelSendAnimation;
  - (void)_sendAnimationCompleted;
  - (void)_performSendAnimation;
  - (void)_animationCompleted;
  - (void)_cleanupAnimation;
  - (void)_performPopOutAnimation;
  - (void)_doPopOutAnimationIfPossible;
  - (id)_toolbarAnimation;
  - (id)_mainWindowAnimation;
  - (id)_composeBodyAnimation;
  - (id)_messageBodyAnimation;
  - (id)_composeHeaderAnimation;
  - (id)_messageHeaderAnimation;
  - (id)_sizeAnimation;
  - (id)_positionAnimationWithStartPosition:(struct CGPoint)arg1 endPosition:(struct CGPoint)arg2 percentFromStart:(double)arg3;
  - (void)_setupPopOutAnimation:(id)arg1;
  - (BOOL)_canDoPopOutAnimation;
  - (void)_getSnapshotsForAnimation:(id)arg1;
  - (void)_getMainWindowSnapshot;
  - (void)nowWouldBeAGoodTimeToTerminate:(id)arg1;
  - (void)restoreFrame;
  - (BOOL)mailFullScreenWindowShouldClose:(id)arg1;
  - (id)windowForMailFullScreen;
  - (void)forceClose;
  - (void)windowWillClose:(id)arg1;
  - (void)prepareToGoAway;
  - (BOOL)windowShouldClose:(id)arg1;
  - (void)endDocumentMove;
  - (void)beginDocumentMove;
  - (id)shouldSaveHelptag;
  - (id)shouldSaveDescription;
  - (id)shouldSaveTitle;
  - (void)windowDidMove:(id)arg1;
  - (void)windowDidResize:(id)arg1;
  - (void)_hideStatusBar;
  - (void)_showStatusBar;
  - (void)showAddressPanel:(id)arg1;
  - (void)toggleCheckGrammarWithSpelling:(id)arg1;
  - (void)changeSpellCheckingBehavior:(id)arg1;
  - (void)_printAsExportJob:(BOOL)arg1;
  - (void)exportAsPDF:(id)arg1;
  - (void)showPrintPanel:(id)arg1;
  - (void)performClose:(id)arg1;
  - (void)saveChangedDocument:(id)arg1;
  - (void)saveDocument:(id)arg1;
  - (void)setMessagePriority:(id)arg1;
  - (void)addReplyToHeader:(id)arg1;
  - (void)addBccHeader:(id)arg1;
  - (void)addCcHeader:(id)arg1;
  - (void)makeFontSmaller:(id)arg1;
  - (void)makeFontBigger:(id)arg1;
  - (void)decreaseListNestingLevel:(id)arg1;
  - (void)increaseListNestingLevel:(id)arg1;
  - (void)convertToBulletedList:(id)arg1;
  - (void)convertToNumberedList:(id)arg1;
  - (void)insertBulletedList:(id)arg1;
  - (void)insertNumberedList:(id)arg1;
  - (void)toggleRich:(id)arg1;
  - (void)makePlainText:(id)arg1;
  - (void)makeRichText:(id)arg1;
  - (BOOL)_sendButtonShouldBeEnabled;
  - (BOOL)validateMenuItem:(id)arg1;
  - (BOOL)validateUserInterfaceItem:(id)arg1;
  @property(readonly, getter=isEditable) BOOL editable;
  - (void)didFindNonIncrementalSearchInWebView:(id)arg1 DOMRange:(id)arg2;
  - (id)currentlySelectedWebView;
  - (id)webViews;
  - (void)performTextFinderAction:(id)arg1;
  - (void)_generateParsedMessagesToAppendForMessages:(id)arg1;
  - (void)_appendMessages:(id)arg1 withParsedMessages:(id)arg2;
  - (void)appendMessageArray:(id)arg1;
  - (void)appendMessages:(id)arg1;
  - (id)mailAttachmentsAdded:(id)arg1;
  - (void)_attachmentDidFinishReading:(id)arg1;
  - (void)mailAttachmentsDeleted:(id)arg1;
  - (void)_mailAttachmentsDeleted;
  - (id)findBarContainerView;
  - (void)_setImageSizePopupToSize:(id)arg1;
  - (void)_saveImageSizeToDefaults;
  - (unsigned long long)_estimateMessageSize;
  - (unsigned long long)_encryptionOverhead;
  - (unsigned long long)_signatureOverhead;
  - (unsigned long long)_textLengthEstimate;
  - (BOOL)_attachmentCanBeResized:(id)arg1;
  - (BOOL)_resizeImageAttachments:(id)arg1;
  - (BOOL)_resizeAttachment:(id)arg1;
  - (id)_resizerForAttachment:(id)arg1;
  - (BOOL)_isResizingImages;
  - (void)imageResizer:(id)arg1 didFinishResizingWithResultCode:(long long)arg2;
  - (id)_maxImageSizeAsString;
  - (struct CGSize)_selectedImageSize;
  - (struct CGSize)_imageSizeForTag:(long long)arg1;
  - (void)_hideImageStatus;
  - (void)_showImageStatus;
  - (BOOL)_imageStatusHidden;
  - (void)_updateImageSizePopup;
  - (unsigned char)_attachmentsContainScalableImage:(id)arg1 scalables:(id)arg2;
  - (unsigned char)_isAttachmentScalable:(id)arg1;
  - (void)updateAttachmentStatus;
  - (void)encryptionStatusDidChange;
  - (void)messageSizeDidChange:(id)arg1;
  - (void)imageSizePopupChanged:(id)arg1;
  - (void)_addAttachmentsFromShareKit;
  - (BOOL)_isReplyingFromShareKitWithFileAttachments;
  - (id)_parsedMessageFromShareDictionary:(id)arg1;
  - (void)_showURLPicker;
  - (void)_setupDefaultURLState;
  - (BOOL)_needsURLPicker;
  - (void)_showURLPickerIfNeeded;
  - (void)_validateURLPicker;
  - (void)_insertUserHTMLSpans;
  - (void)_wrapCurrentContentInSpan;
  - (void)_getUserHTMLForEditing;
  - (void)_addBaseURLToDocumentIfNeeded;
  - (void)webViewDidFinishLoadForFrameWhenSharing:(id)arg1;
  - (void)_changeSharedURLToDisplayType:(long long)arg1;
  - (void)refreshShareContentsForDisplayType:(long long)arg1;
  - (void)URLPickerPopupChanged:(id)arg1;
  - (void)setDeliveryAccount:(id)arg1;
  - (id)deliveryAccount;
  - (void)editSignatures:(id)arg1;
  - (void)changeSignature:(id)arg1;
  - (void)showImmediately;
  - (void)_setUnapprovedRecipients:(id)arg1;
  - (void)replyAllMessage:(id)arg1;
  - (void)replyMessage:(id)arg1;
  - (void)changeReplyMode:(id)arg1;
  - (unsigned long long)messageType;
  - (void)_displayPendingAttachmentAlert;
  - (void)insertFile:(id)arg1;
  - (void)attachFilesAtEnd:(id)arg1;
  - (void)alwaysAttachFilesAtEnd:(id)arg1;
  - (void)_setSendWindowsFriendlyAttachments:(BOOL)arg1;
  - (void)sendWindowsFriendlyAttachments:(id)arg1;
  - (void)alwaysSendWindowsFriendlyAttachments:(id)arg1;
  - (BOOL)_restoreOriginalAttachments;
  - (void)insertOriginalAttachments:(id)arg1;
  - (void)removeAttachments:(id)arg1;
  - (BOOL)_hasPendingAttachmentReads;
  - (id)mimeBodyForAttachmentWithURL:(id)arg1;
  - (void)composePrefsChanged;
  - (void)updateUIAfterAppleScriptModification:(id)arg1;
  - (void)updateWindowContent;
  - (void)webViewDidChange:(id)arg1;
  - (void)backEndSenderDidChange:(id)arg1;
  - (void)backEndDidChange:(id)arg1;
  - (BOOL)backEnd:(id)arg1 shouldSaveMessage:(id)arg2;
  - (void)backEnd:(id)arg1 willCreateMessageWithHeaders:(id)arg2;
  - (void)_saveMessageDueToUserAction:(BOOL)arg1;
  - (void)saveMessageToDrafts:(id)arg1;
  @property(readonly) BOOL canSave;
  - (void)backEndDidSaveMessage:(id)arg1 result:(int)arg2;
  - (void)reportSaveFailure:(id)arg1;
  @property(readonly) BOOL hasChanges;
  - (void)setUserSavedMessage:(BOOL)arg1;
  @property(readonly) BOOL shouldSave;
  - (BOOL)autoSave;
  - (void)loadingOverlayDidEnd:(id)arg1 returnCode:(long long)arg2;
  - (void)backEnd:(id)arg1 didBeginBackgroundLoadActivity:(id)arg2;
  - (void)saveSaveAsStationery:(id)arg1;
  - (void)cancelSaveAsStationery:(id)arg1;
  - (void)controlTextDidChange:(id)arg1;
  - (void)saveAsStationery:(id)arg1;
  - (void)loadStationery:(id)arg1;
  - (id)currentStationery;
  @property(readonly) BOOL stationeryPaneIsVisible;
  - (void)animationDidEnd:(id)arg1;
  - (void)showOrHideStationery:(id)arg1;
  - (double)_animationDuration;
  - (void)toolbarWillAddItem:(id)arg1;
  - (void)_synchronizeIncludeAttachmentsToolbarItem:(id)arg1;
  - (void)continueLoadingInitialContent;
  - (id)parsedMessageFromSettings:(id)arg1;
  - (void)_attachmentFinishedDownloading:(id)arg1;
  - (void)backEndDidLoadInitialContent:(id)arg1;
  - (void)loadInitialDocumentIntoWebView:(id)arg1;
  - (void)_sanitizeHTML;
  - (void)_setupSpellingAndGrammarChecking;
  - (void)_registerForNotificationsIfNeeded;
  - (void)postDocumentEditorDidFinishSetup;
  - (void)prepareContent;
  - (void)window:(id)arg1 willEncodeRestorableState:(id)arg2;
  - (id)_frameSaveName;
  - (id)_savedState;
  - (id)webView;
  - (id)document;
  - (BOOL)isModal;
  @property BOOL wantsToClose;
  @property BOOL userCanApplyStationery;
  @property BOOL autoShowEditor;
  - (id)toolbar;
  - (id)webMessageDocument;
  @property(retain) ComposeBackEnd *backEnd;
  - (void)backEnd:(id)arg1 didCancelMessageDeliveryForEncryptionError:(id)arg2;
  - (id)missingCertificatesMessageForRecipients:(id)arg1 uponDelivery:(BOOL)arg2;
  - (void)backEnd:(id)arg1 didCancelMessageDeliveryForMissingCertificatesForRecipients:(id)arg2;
  - (void)cancelModal:(id)arg1;
  - (void)reportDeliveryFailure:(id)arg1;
  - (void)backEnd:(id)arg1 didCancelMessageDeliveryForError:(id)arg2;
  - (void)_setMessageStatusOnOriginalMessage;
  - (BOOL)backEnd:(id)arg1 shouldDeliverMessage:(id)arg2;
  - (void)backEndDidAppendMessageToOutbox:(id)arg1 result:(int)arg2;
  - (void)backEndDidCancelMessageDeliveryForAttachmentError:(id)arg1;
  - (void)sendMessageAfterChecking:(id)arg1;
  - (void)send:(id)arg1;
  - (void)_didToggleComposeFormatInspectorBar;
  - (void)_willToggleComposeFormatInspectorBar;
  - (void)toggleComposeFormatInspectorBar:(id)arg1;
  - (void)updateInspectorBar;
  - (void)setShouldDisplayInspectorBar:(BOOL)arg1;
  - (BOOL)shouldDisplayInspectorBar;
  - (id)_inspectorBarVisibilityKey;
  - (void)setHeaders:(id)arg1;
  - (void)show;
  - (long long)editorSharedNib;
  - (void)setOperationQueue:(id)arg1;
  - (id)operationQueue;
  - (BOOL)_loadEditorNib;
  - (void)dealloc;
  - (Class)backEndClass;
  - (void)finishLoadingEditor;
  - (void)performOperationAfterLoad:(id)arg1;
  @property(readonly) BOOL isFinishedLoading;
  - (id)finishLoadingEditorOperation;
  - (id)loadInitialDocumentOperation;
  - (id)prepareContentOperation;
  - (id)showInterfaceOperation;
  - (BOOL)shouldRecordTypeAheadEvents;
  - (BOOL)load;
  @property(readonly) BOOL isAutoSaving;
  - (void)setLoaded:(BOOL)arg1;
  @property(readonly) BOOL isLoaded;
  - (id)init;
  - (id)initWithBackEnd:(id)arg1;
  - (id)initWithType:(unsigned long long)arg1 settings:(id)arg2;
  - (id)initWithType:(unsigned long long)arg1 settings:(id)arg2 backEnd:(id)arg3;
  - (id)description;
  - (BOOL)isEditingDocumentID:(id)arg1;
  @property(readonly) NSUUID *documentID;
  - (id)menuForListsItem;
  - (id)toolbarAllowedItemIdentifiers:(id)arg1;
  - (id)toolbarDefaultItemIdentifiers:(id)arg1;
  - (id)toolbar:(id)arg1 itemForItemIdentifier:(id)arg2 willBeInsertedIntoToolbar:(BOOL)arg3;
  - (void)configureSegmentedItem:(id)arg1 withDictionary:(id)arg2 forSegment:(long long)arg3;
  - (void)updateSendButtonStateInToolbar;
  - (void)toggleReplyType:(unsigned long long)arg1;
  - (void)synchronizeChangeReplyItem:(id)arg1 messageType:(unsigned long long)arg2;
  - (id)toolbarIdentifier;
  - (void)setupFullScreenButtonWidths;
  - (void)setupToolbar;
  - (BOOL)validateToolbarItem:(id)arg1;
  - (oneway void)release;
  
  // Remaining properties
  @property(readonly) BOOL allowsMultipleSelection;
  @property(readonly) struct _NSRange firstSelectedRange;
  @property(readonly, getter=isSelectable) BOOL selectable;
  @property(copy) NSArray *selectedRanges;
  @property(readonly) NSString *string;
  @property(readonly) NSArray *visibleCharacterRanges;
  
  @end
  
  